Senior/Staff Software Engineer, Core Connectivity
- Foster City, United States
- Hybrid
- Full-time
- Lead/Staff
- 7+ years
- Bachelor's degree
- Posted
Skills
Required
- transport / networking software
- shared memory
- Linux
- zero-copy
- software development
- modern C++
- messaging systems / network protocols / communication between distributed systems
- lock-free data structures
- cache-aware data layout
- concurrency
- memory management
- process lifecycle
- sockets
Preferred
- IPC / pub/sub / RPC middleware
- Protocol Buffers / nanopb / FlatBuffers
- synchronization
- Robotics
- DDS / ROS 2 / iceoryx / serialization frameworks
- PTP
- IEEE 1588
- UDP
- C++
Zoox is building the world's most advanced self-driving hardware and software solution. Inside the vehicle, dozens of processes across several compute hosts exchange sensor data, perception output, planner decisions, and control commands many times a second. Every millisecond spent moving that data is a millisecond the vehicle doesn't have to react, so the transport has to be fast and predictable, and keep working when a process restarts or a host comes up late.
About Zoox
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.
Responsibilities
- The Core Connectivity team owns how that data moves, and how fast: shared-memory IPC between processes, transport between hosts, serialization, the RPC and messaging patterns application teams build on, and time synchronization across hosts. Nearly every software team at Zoox builds on this layer, so you'll work closely with the teams that use it, and your work shows up directly in how the vehicle drives.
- Design and build low-latency inter-process and inter-host transport in C++: zero-copy data paths, shared-memory buffers, and lock-free queues. Measure and drive down end-to-end latency and jitter as message volume grows.
- Make the transport hold up when processes crash or restart, hosts start out of order, and networks drop or delay packets. Chase fleet and simulation issues to root cause and fix them in the design.
- Build the pub/sub and RPC messaging APIs application teams build on, so they get the delivery, ordering, and latency guarantees they need without having to understand the transport underneath.
- Evolve message schemas and the Protocol Buffers based serialization layer: schema evolution, compact encodings, and moving existing users onto new formats without breaking anyone.
- Set technical direction for a part of the stack and lead designs that span several teams.
Requirements
- Bachelor's or Master's degree in computer science, electrical / computer engineering, or equivalent experience, and 7+ years of experience in software development.
- Strong modern C++ on Linux, in large codebases with performance-critical paths.
- A background in transport or networking software, such as messaging systems, network protocols, or communication between distributed systems.
- Experience building low-latency systems, and a track record of measuring and reducing tail latency, using techniques such as zero-copy, shared memory, lock-free data structures, and cache-aware data layout.
- Solid systems fundamentals: concurrency, memory management, process lifecycle, sockets and the Linux networking stack.
Preferred
- Hands-on experience with shared-memory IPC, pub/sub or RPC middleware such as DDS, ROS 2, or iceoryx, or serialization frameworks such as Protocol Buffers, nanopb, or FlatBuffers.
- Experience with PTP (IEEE 1588) or other time synchronization across machines, or with UDP multicast, MTU and fragmentation behavior, or time-sensitive networking.
- Robotics, automotive, aerospace, or another real-time or safety-relevant domain.
Pay
There are three major components to compensation for this position: salary, Amazon Restricted Stock Units (RSUs), and Zoox Stock Appreciation Rights.
A sign-on bonus may be offered as part of the compensation package.
The listed range applies only to the base salary.
Compensation will vary based on geographic location and level.
Leveling, as well as positioning within a level, is determined by a range of factors, including, but not limited to, a candidate's relevant years of experience, domain knowledge, and interview performance.
The salary range listed in this posting is representative of the range of levels Zoox is considering for this position.
About Zoox
Benefits
- Zoox also offers a comprehensive package of benefits, including paid time off (e.g. sick leave, vacation, bereavement), unpaid time off, Zoox Stock Appreciation Rights, Amazon RSUs, health insurance, long-term care insurance, long-term and short-term disability insurance, and life insurance.
Follow us on LinkedIn
Accommodations
If you need an accommodation to participate in the application or interview process please reach out to [email protected] or your assigned recruiter.
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.
