Senior Embedded Software Engineer - Core Middleware
Zoox
Software Engineering
Foster City, CA, USA
Posted on Sep 4, 2025
The Core Firmware team is responsible for building the foundation upon which Zoox-owned firmware applications are built. Core Firmware engineers work with a diverse set of microcontrollers and application processors. We make sure the embedded platforms available to Firmware and Software teams are safe, stable, performant, secure, and flexible. Many of these things are often at odds with each other, and navigating these tradeoffs while shipping code that our autonomous vehicle platform depends on is core to the job.
As a member of the Core Firmware System Services team, you will build both on-vehicle embedded software and the means to connect it to Zoox’s diverse ecosystem of software infrastructure. The software we write touches all aspects of a vehicle’s operational day, from provisioning and firmware deployment to vehicle startup and runtime configuration enforcement, to orchestrating our top-level vehicle modes, to event logging and log offload, to live system performance monitoring and offline analysis. We work with many partner teams both within and outside of the Firmware organization, connecting the world of embedded systems with the world of high-performance compute and cloud infrastructure. In this role, you will be able to flex your skills developed in the embedded world in an environment that extends well beyond it.
Responsibilities
- Develop on-vehicle embedded software in C++ in a real-time Unix-like environment, and as appropriate, the supporting tools to tie it to Zoox’s ecosystem of off-vehicle infrastructure (Python in most cases)
- Author requirements and design documentation to craft what is to be built, why it needs to be that way, and what your specific solution looks like
- Manage the planning and execution of your owned projects, delegating appropriately to realize your vision through others
- Work with our Component V&V Engineers to keep the quality bar high through the coordination of test strategies
- Troubleshoot and root-cause problems from the field, starting at the system level, often ending deep in the inner workings of our platform
Qualifications
- 8+ YOE Experience in C++ development
- Systems programming in a Unix-like/POSIX environment
- Embedded Linux or QNX platform bringup, configuration, and tuning
- Python development
Bonus Qualifications
- Network programming experience
- Having shipped software that conforms to a functional safety standard
- Experience with cybersecurity