Facebook is the world leader in the design of virtual and augmented reality systems. Come work alongside expert engineers and research scientists to create the technology that makes AR and VR pervasive and universal.
Join the adventure of a lifetime as we make science fiction real and change the world. You're a Firmware Engineer with deep embedded system knowledge, a passion for working on new hardware and strong technical leadership skills. You're comfortable working with a wide variety of hardware devices, working with a team to rapidly deliver reliable high performance firmware.
At the Facebook AR/VR team, you will design, build and test firmware systems for future Augmented Reality (AR), Virtual Reality (VR), and Mixed Reality (MR) experiences. You will join a world-class team of experts exploring new AR/VR concepts through rapid prototyping. Firmware for AR/VR systems spans multiple target classes, requiring deep collaboration across engineering disciplines (electrical, mechanical, optical, firmware and software) and directly impacting user immersion.
We're looking for people who quickly solve problems, generate big ideas, work in new technology areas, drive concepts into prototypes, and envision how those prototypes transition to high-volume consumer products. In this role, you are expected to participate in the definition of architecture and implementation of FW/middleware architecture in the research arena, as well as support rapid prototyping efforts led by a team of mixed-discipline researchers and engineers.
Understand and implement power-management, boot loaders, scheduling, and RTOS
Collaborate in a team environment across multiple , product focused, research, and engineering disciplines, making the architectural tradeoffs required to rapidly deliver firmware solutions
Support custom silicon development on an as-needed basis, including early architecture requirements definition, FPGA/ASIC development, firmware architecture, implementation, simulation, debug, and chip bring up, and provide support to systems and software teams
Understand and drive implementation of FW development "good practices" across teams and projects
Experience producing production quality, fail-safe firmware for low-power real-time system control
Experience with hardware, clock-level issues, bridges, delays, interrupts, clock gating, polling etc.
Experience implementing firmware for low-power SoC and MCU
Experience with wireless and wired communication protocols, including USB, TCP/IP, Ethernet, Bluetooth and 802.11
Experience with embedded micro-controllers like ARM Cortex M0/M3/M4 architecture and boot mechanism, interrupt priorities and experience with configuring peripherals
Experience analyzing hardware and power consumption
Experience with software design and programming in C/C++ for development, debugging, testing and performance analysis
Experience with device drivers/middleware, and an understanding of the entire HW/firmware/driver/OS/application stack
Experience with Linux/Unix
Experience with instrumentation like oscilloscopes, logic/protocol analyzers for debugging embedded systems at HW level
Experience with support software such as MATLAB, Python, Perl, and Lua
Experience with device documentation and translate that information into software solutions
Experience with methods of designing experiments to diagnose embedded hardware and firmware problems
Experience with cross multi-disciplinary boundaries to drive system solutions
Experience with working independently and managing priorities
Experience with protocol implementations such as USB device classes (UVC, UAC, HID)
Experience with a variety of vendor specific hardware evaluation boards
Experience in real-time processing for user interaction tasks
Experience with embedded Linux distributions
Facebook is committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, you may contact us at email@example.com.