Sr Staff Tech Lead, Machine Learning Engineer, Perception
Required skills
- Python
- C++
- PyTorch
- JAX
- TensorFlow
- Machine Learning
- AI
- Computer Vision
- large-scale
- multi-task learning
Nice to have
- publication record
- multi-modal foundation models
- 3D perception
- modular
- sensor-agnostic
- perception frameworks
Role summary
The Perception team is seeking a Sr Staff Tech Lead, Machine Learning Engineer to build systems that learn spatial-temporal representations and semantic meanings of a self-driving car's environment. This role involves developing methods for continuous learning from large-scale data, building and training models at scale, analyzing real-world behavior, and optimizing models for hardware. The position requires setting long-term technical roadmaps, architecting unified representations across diverse sensors, leading cross-functional initiatives, and mentoring ML engineers. The ideal candidate has 8+ years of industry experience in ML, AI, or Computer Vision, with expert proficiency in Python, C++, and modern ML frameworks, and a proven track record of shipping production-grade ML models.
Waymo is an autonomous driving technology company with the mission to be the world's most trusted driver. Since its start as the Google Self-Driving Car Project in 2009, Waymo has focused on building the Waymo Driver—The World's Most Experienced Driver™—to improve access to mobility while saving thousands of lives now lost to traffic crashes. The Waymo Driver powers Waymo’s fully autonomous ride-hail service and can also be applied to a range of vehicle platforms and product use cases. The Waymo Driver has provided over ten million rider-only trips, enabled by its experience autonomously driving over 100 million miles on public roads and tens of billions in simulation across 15+ U.S. states.
The Perception team builds the system which learns the spatial-temporal representation and their semantic meanings of the surrounding environment of the self-driving car, i.e., the system that “perceives” the world around the car. We work jointly with downstream teams on the optimization and integration into the Waymo Driver. We conduct our own research to address real-world problems and collaborate with research teams at Alphabet. We have access to millions of miles of driving data from a diverse set of sensors, enabling engineers like you to (1) develop methods for efficiently and continuously learning from large scale real-world data, to (2) develop models and model training at scale, to (3) analyze real-world behavior and develop systems for handling the complexities of interacting with the real-world, and (4) optimize models for our onboard and offboard hardware. In this hybrid role, you'll report to a Senior Staff Technical Lead Manager.
You will:
You have:
We prefer:
The expected base salary range for this full-time position across US locations is listed below. Actual starting pay will be based on job-related factors, including exact work location, experience, relevant training and education, and skill level. Your recruiter can share more about the specific salary range for the role location or, if the role can be performed remote, the specific salary range for your preferred location, during the hiring process.
Waymo employees are also eligible to participate in Waymo’s discretionary annual bonus program, equity incentive plan, and generous Company benefits program, subject to eligibility requirements.
Salary Range$298,000—$368,000 USDSample Waymo interview questions
- 1
Design a data ingestion system
system designmedium - 2
Design a simulation-based regression detection system for code changes
system designhard - 3
Longest Substring with Two Distinct Characters Find the longest substring with at most two distinct characters. Input: s = "ccaabbb" Output: 5 Explanation: The substring "aabbb" contains exactly two distinct characters and has a maximum length of 5.
codingmedium - 4
Alien Dictionary Order Derive the alien dictionary order from a sorted list of alien words. Input: words = ["z","x","z"] Output: "" (Empty String) Explanation: The letter 'z' cannot come before 'x' and then suddenly after 'x', creating a cycle and making the dictionary invalid.
codingmedium - 5
Palindrome After Deleting One Character Determine if a string can be a palindrome after deleting at most one character. Input: s = "abc" Output: FALSE Explanation: Deleting any single character leaves either "ab", "bc", or "ac", none of which result in a valid palindrome.
codingmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
- Counsel, IPWaymo · San Francisco, CA · Hybrid
- 2027 Summer Intern, MS/PhD, Sensor Performance Engineer InternWaymo · Mountain View, CA · Onsite
- Artificial Intelligence Machine Learning Engineer 3Captivation Software · Annapolis Junction, MD · Onsite
- Principal Machine Learning Engineer - MatchmakingRoblox · San Mateo, CA · Onsite
Machine Learning Engineer Intern, AI & RoboticsRoboForce · Milpitas, CA · Onsite- Senior Machine Learning EngineerCheckr · Remote · Remote
