Waymo Machine Learning Engineer Interview Experience
Waymo · Staff
I was definitely caught off guard because I was expecting more of a LeetCode type of question, and instead they showed a diagram about obstacles colliding and wanted me to figure out which one was bigger and where the force would move.
Interview process
I applied directly on the website with no referral and went through a pretty Google-like process. The loop was a basic recruiter chat, then a surprisingly hard LeetCode-style coding screen, then a final loop with another coding round, an ML coding round, an ML system design round, and two behavioral rounds. What really stood out was that the coding bar felt basically software-engineer level, not a watered-down MLE bar, and then on top of that they still expected solid ML depth. The strangest round for me was the final coding interview because it was more practical and diagram-based than I expected, while the behavioral rounds went deeper into the technical details of my projects than most companies do. Do not under-prepare on DSA just because the title says machine learning.
Interview rounds · 7
- 1
Recruiter screen
BehavioralI had a very standard recruiter chat, and later a prep call where they walked me through the full loop and explained that senior and staff use the same process with leveling decided at the end.
Q1. Can you walk me through what you're doing now, what you've done before, and why you're interested in Waymo?
How they answeredI treated it as a basic get-to-know-you call. I focused on clearly communicating what I'm doing now, what I did before, and why I was interested in Waymo. It didn't feel like a real evaluation round to me.
- 2
Technical round
CodingData Structures & AlgorithmsThe first real screen was a LeetCode-style coding round, and it was harder than I expected for an MLE role.
Q1. Given an organizational hierarchy, how would you model it so I can quickly find a person's direct reports and everyone under their department?
How they answeredI modeled the org chart as a tree and used a BFS-style approach to return direct reports and everyone below a manager. What stood out more than the exact problem was the interviewer style. I started by overexplaining line by line, got basically no feedback, and realized they cared much more about whether I could get to a working solution. Once I switched to just solving it and making it run, the round went better.
Follow-up questions- How would you answer those queries efficiently once the hierarchy is built?
- 3
Final / onsite round
CodingData Structures & AlgorithmsTechnicalOne of the final-loop coding rounds felt much more practical and diagram-driven than normal LeetCode, and it caught me off guard.
Q1. Given this collision diagram, figure out which of the two objects is bigger and which direction the resulting mass will move, then code it.
How they answeredThey showed a diagram with two objects colliding and I had to reason through who was bigger and which direction the resulting mass would move, then code it. I spent more time than I wanted just understanding the prompt, because I was expecting a cleaner LeetCode problem and this felt much closer to the kind of problems they'd actually face. My read was that it mixed stack and tree/graph-style thinking. I got through it, but this was probably my weakest round because I lost too much time clarifying.
Follow-up questions- Can you first explain how the collision is happening from the diagram before you start coding?
- 4
Final / onsite round
CodingMachine LearningTechnicalThe ML coding round was much more familiar if you already do applied ML work and are comfortable with NumPy.
Q1. Here is some 3D trajectory data. Can you manipulate it and tokenize it so that, based on the current trajectory, we can predict the next step?
How they answeredI was given sample 3D trajectory data, less than 100 rows, and had to do NumPy manipulation to tokenize it and turn it into a format where, from the current trajectory, you could predict the next step. For me this felt like standard ML engineering work. I just needed to be clean with the array operations and data transformation, and it was much easier for me than the pure coding rounds.
- 5
Final / onsite round
System DesignMachine LearningArtificial IntelligenceThe ML system design round was a discussion-heavy recommendation/retrieval problem, not something where I needed to type a lot.
Q1. How would you build a system to fetch videos similar to a given scene, like a rainy driving accident, from a very large dataset?
How they answeredI treated it like a recommendation or retrieval system for training data. The example was basically: given a video scene like a rainy driving accident, how do I fetch similar videos from a huge dataset so I can build the right training set. I used a structured ML system design approach and talked through how I'd narrow the data, represent the scene, and retrieve relevant matches. The interviewer kept it discussion-based and used follow-ups to steer me, so I didn't spend much time typing notes.
Follow-up questions- How would this help with building a training dataset for a model that needs more examples under specific conditions like rain?
- 6
Final / onsite round
BehavioralProject DiscussionCross-FunctionalThe leadership behavioral was really a deep dive on one project, and they went deeper into technical details than I see at most companies.
Q1. Pick an important project and walk me through why it mattered, how you approached it, how you built the team around it, what challenges you faced, and what impact it had.
How they answeredI picked the project with the biggest impact and the longest duration, because it involved multiple teams and a lot of coordination. I started with a concise high-level overview, then followed the interviewer into the technical challenges once they started probing there. They wanted both sides: how I led the work and how well I understood the hard technical parts myself. My main tactic was to start broad, then let their follow-ups show me where to go deep.
Follow-up questions- What were the hardest technical challenges in the project?
- How did you structure the team and coordinate the work?
- What was the impact at the end?
- 7
Final / onsite round
BehavioralCross-FunctionalProject ManagementThe other behavioral round was more classic tell-me-about-a-time questions, but there was still a clear emphasis on conflict and influence across teams.
Q1. Tell me about a time you had a conflict or disagreement with another team and how you handled it.
How they answeredA big theme here was conflict and influence. I used examples where my work depended on another team and I had to get their support by showing not just why I needed them, but how the solution would help them too. That seemed to be what they cared about: can I unblock a dependency and align another team instead of just escalating.
Follow-up questions- How did you influence the other team when you depended on their support?
- Q2. Tell me about a time you mentored other engineers.
- Q3. Give me a quick introduction of yourself.
Tips from the candidate
I'd tell a friend to brush up hard on data structures and algorithms before anything else, because if you underprepare there you might not even get past the first screen. Also, always clarify what they mean by a coding round, because sometimes they say coding and mean pure LeetCode, and other times they mean ML coding with NumPy, data manipulation, or even model-related implementation. For behavioral, write down your stories and pick one project that has both real technical depth and cross-team complexity. For ML system design, go in with a framework, but keep your ears open because their follow-ups will tell you where they want depth.
Company culture
My impression is that Waymo is running a pretty standardized process right now. I was told London and Silicon Valley use the same loop, and senior and staff go through the same interviews with leveling decided afterward. The interviewers felt very Google-like to me: not much handholding in coding, one harder question instead of multiple easier ones, and a strong emphasis on whether I could actually land a solid solution. Even the behavioral rounds felt more technical than average, which told me they want MLEs who can code like SWEs, talk deeply about ML systems, and also show leadership on large projects.