Software Engineer, Computer Vision (Oculus)

The Oculus team at Facebook is helping more people around the world come together and connect through world-class VR hardware and software. With global departments dedicated to VR research, computer vision, haptics, social interaction, and more, Oculus is committed to driving the state of the art forward through relentless innovation. VR's potential to change the world is immense-and we're just getting started.

Our Core Tech team explores, develops, and delivers new cutting-edge technologies that serve as the foundation of current and future Oculus products. From mixed reality and human interaction to natural inputs and beyond, Core Tech is focused on taking new technologies from early concept to the product level while iterating, prototyping, and realizing the human value and new experiences they open up.

Oculus is seeking a talented Software Engineer to join our Computer Vision team. Our team applies a range of software, computer vision and machine learning techniques to build products that enable new ways for people to connect and share experiences. We're addressing a variety of technical challenges in the areas of real-time image processing, 3D graphics, SLAM, visualization and human interaction. We're looking for candidates with deep C++ knowledge who share an excitement for building performant software for new hardware devices.


  • Design core components up and down the software stack, developing primarily in C++
  • Build tools and infrastructure to enable product advancements and efficiency-gains across both software and hardware
  • Collaborate with cross-functional hardware and software teams to incorporate their innovations and vice versa
  • Conduct design and code reviews
  • Evaluate, analyze and optimize system resources related to image processing, computer vision and machine learning
  • Develop solutions for real world problems and integrate solutions into products
  • Bachelor's degree in Computer Science, Electrical Engineering, Mathematics, Physics, Robotics or related technical field
  • 3+ years experience developing software in C++ for real-time embedded systems
  • Experience developing software for computer vision, machine learning or computer graphics applications
  • Experience with hardware, firmware and drivers
  • Experience working on depth sensor technology, SLAM, imaging/camera systems and/or consumer mobile products
  • Experience working on VR, AR and/or MR
  • Experience with CPU/GPU programming
  • Experience with OS internals and kernel development/debugging for Android and/or Linux

Back to top