Reality-Labs Research hardware team is looking to bring cutting-edge experiences and hardware to life through collaboration and commitment, pushing the boundaries of computer vision and machine perception with sensors, hardware, firmware, drivers, and software.
Requirements
- 2+ years of professional experience in programming embedded systems with C or C++
- Experience with building drivers for custom hardware systems
- Experience with synchronous and asynchronous serial protocols
- Experience with register level and system debugging
- Experience in the use of oscilloscopes, logic analyzers and protocol decoders
- Experience with designing a firmware solution from hardware components or datasheets
- Proven track record of success in solving complex technical problems with breadth and depth, critical thinking and decision-making
Responsibilities
- Collaborate in a team environment across multiple, research focused, and engineering disciplines, making the architectural tradeoffs required to rapidly deliver firmware solutions
- Understand and implement firmware on micro-controllers and SoCs, leverage peripherals, manage power consumption, support boot loaders, and schedule real-time tasks (RTOS)
- Contribute effort to analyze, design, develop, and debug firmware, including sensing, imaging, and display systems
- Support all phases of custom hardware development - including early architecture requirements definition, firmware architecture, proof-of-concept implementation, selection of MCUs/SoCs and tools, and board bring-up
- Understand and drive implementation of FW development practices across teams and projects, including setting expectations, defining backlog, and tracking progress of contingent staff
- Document and communicate learning, understanding, and problem solving to a wide range of audiences and disciplines
- Interact closely with firmware, software and hardware teams both project specific and cross functional to ensure that the platforms we are building will work well with other systems
Other
- B.S. degree or relevant experience in Electrical Engineering, Computer Engineering, or equivalent field
- Teamwork, collaborative, and cross-team communication skills
- M.S. degree or equivalent experience in Computer Science, Electrical Engineering, or a related field
- Experience working effectively with cross-site and cross-functional teams
- Nurturing a sense of ownership, and enjoying an honest and considerate environment