Facebook's mission is to give people the power to build community and bring the world closer together. Through our family of apps and services, we're building a different kind of company that connects billions of people around the world, gives them ways to share what matters most to them, and helps bring people closer together. Whether we're creating new products or helping a small business expand its reach, people at Facebook are builders at heart. Our global teams are constantly iterating, solving problems, and working together to empower people around the world to build community and connect in meaningful ways. Together, we can help people build stronger communities - we're just getting started.
Facebook Reality Labs (FRL) focuses on delivering Facebook's vision through Augmented Reality (AR) and Virtual Reality (VR). The compute performance and power efficiency requirements of Virtual and Augmented Reality require custom silicon. Facebook Silicon team is driving the state of the art forward with breakthrough work in computer vision, machine learning, mixed reality, graphics, displays, sensors, and new ways to map the human body. Our chips will enable AR and VR devices where our real and virtual world will mix and match throughout the day. We believe the only way to achieve our goals is to look at the entire stack, from transistor, through architecture, to firmware and algorithms. This is an opportunity to work with a world-class group of researchers and engineers within the AR Silicon. You will use your software and compiler skills to jointly optimize for power and latency while mapping state-of-the-art vision algorithms on our programmable units.
- Study state of the art algorithms in the field of CV, ML and imaging
- Analyze code at instruction level, to study the compiler behavior
- Design and Implement methods to improve power/energy efficiency of compiler toolchain
- Currently has, or is in the process of obtaining, a Bachelors or Masters in Computer Science, Electrical Engineering, or related field
- Must obtain work authorization in country of employment at the time of hire, and maintain ongoing work authorization during employment
- Strong background in C/C++ programming, data structures and compiler theory
- Broad understanding of C++ internals and compilers such as LLVM and GCC
- Strong interpersonal skills and ability to conduct research in a product-oriented team
- Intent to return to degree-program after the completion of the internship/co-op
- Experience with low-level SW optimization at instruction level, loop optimization, vectorization, data organization and caching
- Research or industry experience in compiler optimizations
- Knowledge of microprocessor architecture and building blocks such as instruction fetch and decode, branch prediction, instruction scheduling and register renaming, out-of-order execution, integer and floating-point execution, load/store unit, prefetching, cache, and memory subsystems