Advanced Hardware EngineeringApply for this position
Zoox is looking for an embedded software engineer to join its Advanced Hardware Engineering team. In this role, you will be involved in a wide variety of coding at all levels of the embedded software stack, including drivers, middleware, libraries, and applications. You will often be the first person to bring up custom hardware and integrate it with Zoox's software stack.
This role involves both writing code running 'bare-metal' as well as code running on Linux. As an embedded software engineer, you should be passionate about developing production-quality code and designing a product that meets the high safety requirements needed for autonomous driving. You will be interfacing closely with the electrical, mechanical, and optical engineers designing the hardware, as well as the Perception team for the evaluation of sensors and the Core team for writing and bringing up hardware drivers.
- New board bringup
- Development of reliable drivers across several OS's.
- Write high assurance firmware to achieve required integrity levels for safe vehicle operation
- Write code to diagnose and test modules and subsystems
- Troubleshoot complex hardware and software issues with debuggers and logic analyzers
- Interface with hardware and automation teams to enable scalable testing
- BS / MS in Electrical Engineering, Computer Science or similar degree with 2-5 years of relevant experience
- Strong background in C / C++ programming for embedded Linux or micro-controllers
- Experience using measurement equipment such as multimeters, oscilloscopes, and logic analyzers to debug code
- Experience with low-level interfaces such as I2C, SPI, CAN, RS232, Ethernet
- Willingness to trace bugs to their source, wherever in the system that may end up being
- Ability to perform evaluations of alternative components, providing hard data in the form of plots and tables to allow for quantitative decisions leading to product improvements
- Ability to efficiently collaborate with multidisciplinary program members to achieve project goals, and contribute positively to the engineering community environment
- Experience implementing safety-critical, high reliability, or fault-tolerant software
- Experience with real-time operating systems (POSIX, QNX, FreeRTOS)
- Deep understanding of Linux and its internals, the device tree, and U-Boot
- Familiarity with unit testing, integration testing, regression testing, and HIL testing
- Experience with ARM or Infineon TriCore architectures
- Experience working with FPGAs
- Digital Signal Processing experience
- Bash or Python scripting
Zoox is developing the first ground-up, fully autonomous vehicle fleet and the supporting ecosystem required to bring this technology to market. Sitting at the intersection of robotics, machine learning, and design, Zoox aims to provide the next generation of mobility-as-a-service in urban environments. We’re looking for top talent that shares our passion and wants to be part of a fast-moving and highly execution-oriented team.
A Final Note:
You do not need to match every listed expectation to apply for this position. Here at Zoox, we know that diverse perspectives foster the innovation we need to be successful, and we are committed to building a team that encompasses a variety of backgrounds, experiences, and skills.