Waymo is looking to solve the problem of building a performant and low-latency self-driving solution in the industry by developing and maintaining the connectivity infrastructure that enables Waymo's fleet to operate and improve continuously.
Requirements
- Proficiency in C and C++ is required.
- 3+ years of experience developing, debugging, and deploying software in a Linux environment.
- A strong understanding of the IP-based networking stack and experience with its configuration and debugging in a Linux context.
- Experience with Embedded Linux build systems such as Yocto or Buildroot.
- Experience in Linux kernel and device driver development.
- Working knowledge of Wi-Fi (especially in congested environments), cellular and Bluetooth protocols.
Responsibilities
- System Software Development: Work on a small team of System Software and Linux Kernel Engineers to design, develop, and deploy production-grade system software components for driverless vehicles, from initial prototyping through launch.
- Linux OS Ownership: Maintain and upgrade the operating system of the Telematics unit, including Linux kernel, device drivers, and core OS services.
- Networking & Connectivity: Design and implement robust, high-performance networking solutions, focusing on reliable data transfer over wifi and cellular modems.
- Infrastructure & Testing: Design and implement comprehensive testing methodology and infrastructure to ensure the reliability and security of low-level software and seamless deployment of updates across the fleet. Leverage automated testing of hardware to exercise low-level hardware-software systems.
- Cross-Functional Problem Solving: Collaborate effectively with hardware partners (SoC vendors, ODMs) and internal engineering teams to tackle ambiguous, cross-disciplinary system challenges.
- Network Topology: Contribute to the design and implementation of depot network topologies for efficient vehicle servicing.
Other
- BA/BS degree in Computer Science, Electrical Engineering, or a relevant technical field, or equivalent practical experience.
- Ability to collaborate effectively with hardware partners and internal engineering teams.
- Ability to work on a small team and contribute to the design and implementation of comprehensive testing methodology and infrastructure.
- Ability to read schematics/datasheets and use common tools (oscilloscopes, multimeters, logic analyzers).
- Experience successfully collaborating with diverse industry partners (CM, ODM, OEM, or ISV)