Firmware Engineer (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.
Concept Engineering is the team within the Core Tech that actively participates in concept development and design ideation of cutting edge technologies. The team is responsible for rapidly building and iterating polished high-fidelity prototypes and development platforms that bring new ideas to life by expressing design intent and user experience - using the best and most appropriate tools and techniques for the task. While we want these prototypes to be optimized for speed, the hardware and software should be designed with the ultimate goal of mass production. These prototypes and development platforms will be used to prove and sell concepts through establishing end user value to development teams and leadership; additionally, they would be used in testing and data collection in support of hardware technology and computer vision algorithm development.
We are seeking a Firmware Engineer who has a passion for working across disciplines to turn early cutting edge concepts and technologies into reality. As a Firmware Engineer, you will be responsible for Firmware architecture and design of new concepts and technologies.
- Ownership of system design and firmware on hardware prototype projects and development platforms.
- Collaborating in a team environment across engineering disciplines.
- Experimenting with and implementing interfaces to various sensors.
- Developing USB HID based interfaces and bootloaders.
- Coding firmware to drive novel display systems and cameras.
- Devising and implementing low-latency network interface protocols.
- Coding programs and scripts as necessary to test embedded systems.
- Work closely with various core tech teams and other organizations to define prototyping scope and applications towards various technology roadmaps and products.
- BS in Electrical Engineering or Computer Science
- 5+ years experience with driver and board-level system software development
- Experience with board bring up and systems debugging
- Experience with ARM based processors and micro-controllers and various communications protocols such as I2C, UART, SPI, USB, MIPI, I2S, etc.
- Experience with debugging tools such as bus analyzers and oscilloscopes
- Experience with protocol design, specification, and implementation
- Experience debugging and problem solving in code bases and environments
- Experience with system software on embedded devices
- Experience with cameras and optical systems
- Experience with Android/Linux system software
Back to top