Software Infrastructure/SDK Engineer

Software Engineering | Redmond, WA

Oculus is a world leader in the design of virtual and augmented reality systems. Come work alongside expert software engineers and research scientists to create the technology that makes VR and AR pervasive and universal. Join the adventure of a lifetime as we make science fiction real and change the world. We are currently seeking a software engineer with a deep C++ skill, passion for API design, and experience with shipping software products. You are the kind of engineer who is passionate about the health and quality of a large code base (e.g. good abstractions, good module factoring, good APIs, good diagnostics infrastructure, etc.). You are an expert in effective API design across a range of problem types, and a principled advocate for long term health of the product's API surface. You care deeply about the developer experience both within the team and for external customers. You are fluent in multiple software infrastructure libraries (e.g. STL, Apache Portable Runtime, Boost, GLib, etc.) and can advocate for and against software infrastructure that helps the team move faster, be more productive, and improve software quality. You drive practical choices across the team about refactoring efforts with a focus on high leverage areas with measurable gains, and are comfortable managing large scale refactoring efforts that span teams and reach across a large code base. You are able to constructively influence code and module quality across the team and across partner teams through code and design reviews.

Responsibilities

  • Design and implement internal and external APIs that expose the core functionality of the system in a way that's understandable and easy to use for both internal and external customers.
  • Understand software components from multiple partner teams, lead the integration of those components into the unified product code base, and drive their continued development.
  • Write example applications that demonstrate effective use of platform APIs.
  • Identify, propose, and implement improvements in core software infrastructure and architecture across the entire code base.
  • Educate new team members on best practices for software development, testing, and documentation.

Minimum Qualifications

  • 4+ years experience working in large scale C++ code base.
  • Demonstrated knowledge with API design in the context of large scale software systems
  • Experience with more than one software infrastructure libraries (e.g. STL, APR, GLib, Boost, etc.).
  • Experience developing, debugging, and shipping software products on large code bases that span platforms and tools.
  • Experience with Software Development processes including: source control, bug tracking, and design documentation.
  • Demonstrated ability working collaboratively in cross-functional teams.

Preferred Qualifications

  • 7 or more years of C++ experience.
  • Experience with C++11 / C++14 features and principles.
  • Experience with technology transfer work involving research science, especially in fields such as computer vision, graphics, robotics, and machine learning.


Ready to Join?

Apply Now

Oculus 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, genetic information, or other applicable legally protected characteristics. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law.

If you need assistance or an accommodation due to a disability, you may contact us at accommodations-ext@fb.com or you may call us at +1 650-308-7837.