Job Description
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.
Come invent the future. At Facebook Reality Labs, software development is vital to turbocharging our scientific explorations and generating viable paths to the consumer products people will use for decades to come — products that will literally give people super powers. If you're a C/C++ developer with a love for solving novel problems from first principles, an innate ability to educate others, and an aptitude for integrating new hardware systems together, you'll thrive in our collaborative environment. Join a world-class team of pioneers experimenting with breakthrough technology. Partner with expert research scientists, mechanical engineers, electrical engineers and other brilliant software minds to build cutting-edge prototypes and create the technology that makes AR/VR universal. Step into the adventure of a lifetime, as we make science fiction real and change the world.
Responsibilities
- Work side by side with research scientists to enable a huge array of user studies that evaluate the perceptual effects of various AR/VR systems and features
- Analyze, evaluate, design, develop, integrate, debug and test real-time AR and VR software for advanced prototypes and user experiences
- Build software, tools, infrastructure, documentation and other systems that enable research scientists to be more effective and efficient
- Educate researchers and other team members on software engineering best practices, tips and techniques
- Oversee a small team of software engineers, technical writers and user study programmers
- Interview new team members
- Perform code reviews that improve software engineering quality
- Collaborate in a team environment across multiple scientific and engineering disciplines, making the architectural tradeoffs required to rapidly deliver software solutions
- Write clean readable code, debug complex problems that span systems, prioritize ruthlessly and get things done with a high level of efficiency
- Learn constantly, dive into new areas with unfamiliar technologies, and embrace the ambiguity of AR/VR problem solving
Minimum Qualification
- BS degree in Computer Science, Math, Physics or related field
- 5+ years C/C++ experience, including C++11 (and up) features and principles
- 3+ years experience creating, extending, integrating and maintaining real-time 3D game engine systems such as graphics rendering, audio, physics, networking or animation
- 2+ years experience using game engines such as Unreal or Unity
- 2+ years experience managing people
- Experience with the fundamentals of computer architecture, including aspects such as CPU data caching, SIMD instruction sets, and compiler code generation
- Experience shipping one or more products using standard software development toolsets such as source control and continuous integration systems
Preferred Qualification
- Experience developing AR/VR applications
- Experience with MATLAB
- Experience with 3D math and linear algebra
- Experience integrating third-party hardware and custom SDKs into existing engines
Facebook is proud to be an Equal Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, sex (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender, gender identity, gender expression, transgender status, sexual stereotypes, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. Facebook is committed to providing reasonable accommodations for candidates with disabilities in our recruiting process. If you need any assistance or accommodations due to a disability, please let us know at accommodations-ext@fb.com.