Software Engineer - Technical Lead VR Shell Input (Interaction Model)

Employer

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.

Facebook is a world leader in the design of virtual and augmented reality systems and is reshaping how people experience entertainment, socialize with others and be productive and collaborative. Our team launched Quest 2 in 2020 - our fastest growing VR headset ever - that has already greatly surpassed the user base of the original Quest. Our platform has a thriving third party development ecosystem with multiple dozens of million revenue VR titles. This position presents a unique opportunity to join a team core to the VR experience as we create the foundation for VR to be the next general computing platform. Come work alongside experts in software, hardware and research to create the technology that makes AR/VR pervasive and universal. The potential of VR to connect the world is immense—and we’re just getting started.VR Shell Input team’s mission is to create intuitive user interaction and effective text input. Imagine a world where users interact with VR environments and apps as well as they interact with the real world. The interactions are predictable, accurate, smooth and efficient. Users can choose and transition freely and smoothly among the input methods they prefer: controllers, hands, headset, smart phone, mouse and keyboard, etc. Additionally, users feel empowered by effective text input and language support in their daily communications and productivity inside VR. We are looking for a team technical lead with strong technical expertise in the domain of 3D interactive features, either in games or other interactive 3D software, and someone who is passionate about advancing the boundaries of input in VR. The ideal candidate is an experienced software engineer with a background in building user interfaces, or working with novel input and controls, who flourishes working in an ambiguous technology space. This position will afford you the opportunity to explore the meaning and implementation of future input devices in spatial computing by leading the software arm of an interdisciplinary front-end team (design, user research, software).You will become part of a full-stack hardware, software, and design team experimenting and productionizing new input devices and technologies in VR, with a heavy focus on end user experience. We want people who can brainstorm big ideas, have great product sense, work in ambiguous technology areas, have an eye for detail, and have an entrepreneurial spirit to make ideas come to life!

Responsibilities
  • Design, implement and launch full stack input systems and features to achieve compelling experiences (e.g. introducing new hand interaction models, integrating new eye tracking technologies, etc.) across core system UI.
  • Play a critical role in helping to set the direction and goals for the team: operate strategically and tactically.
  • Lead feature crews of multiple engineers and cross functional partners.
  • Work closely with the design team and research team to adopt new input technologies and interaction models to our product.
  • Lead the team to write high-quality, performant, maintainable and testable code.
  • Coordinate and collaborate smoothly across multiple internal and external cross-disciplinary teams.
  • Provide mentorship to other engineers.
Minimum Qualification
  • Bachelor’s degree or equivalent experience in Computer Science.
  • 10+ years experience developing and shipping user-facing products over several releases.
  • 5+ years of experience with C/C++ programming, including some experience with low-level systems work.
  • Experience providing technical leadership for complex products.
  • Collaboration skills.
  • Experience on adopting new devices capabilities to product.
  • Knowledge of working with interaction systems (controllers, mouse, keyboard, etc) on PC, console or mobile platform.

Preferred Qualification
  • Experience with virtual reality (Rift, VIVE, Gear VR, etc.)
  • Experience with Android development
  • Experience with game engines such as Unreal, Unity, or others
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.