2027 Summer Intern, MS/PhD, Software Engineer, Simulation Evaluation ML Model
Required skills
- Python
- C++
- Linux
- Data Structures
- Algorithm Complexity
- Distributed Data Systems
- PyTorch
- JAX
- TensorFlow
Nice to have
- Graph Algorithms
- Graph Neural Networks
- GNNs
- Information Retrieval
- Retrieval-Augmented Generation
- RAG
Role summary
Waymo is seeking graduate students (MS/PhD) for a Summer Intern Software Engineer role focused on Simulation Evaluation ML Models. Interns will design and implement pipelines for extracting structured graph representations from simulation logs and trajectory data. They will develop temporal graph modeling techniques and build a hybrid retrieval engine for scenario discovery and failure analysis. The role involves creating data exploration tools, benchmarking retrieval performance, and collaborating with cross-functional teams. Candidates should have strong Python/C++ experience, a solid CS foundation, and hands-on deep learning framework experience. Preferred qualifications include experience with Knowledge Graphs, GNNs, Information Retrieval, large-scale distributed data processing, and autonomous vehicle simulation.
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.
Software Engineering builds the brains of Waymo's fully autonomous driving technology. Our software allows the Waymo Driver to perceive the world around it, make the right decision for every situation, and deliver people safely to their destinations. We think deeply and solve complex technical challenges in areas like robotics, perception, decision-making and deep learning, while collaborating with hardware and systems engineers. If you’re a software engineer or researcher who’s curious and passionate about Level 4 autonomous driving, we'd like to meet you.
Waymo interns partner with leaders in the industry on projects that create impact to the company. We believe learning is a two-way street: applying your knowledge while providing you with opportunities to expand your skill-set. Interns are an important part of our culture and our recruiting pipeline. Join us at Waymo for a fun and rewarding internship!
You will:
You have:
We prefer:
Note: This will be a hybrid onsite internship position. We will accept resumes on a rolling basis until the role is filled. To be in consideration for multiple roles, you will need to apply to each one individually - please apply to the top 3 roles you are interested in.
The expected hourly rate for this full-time position is listed below. Interns are also eligible to participate in the Company’s generous benefits programs, subject to eligibility requirements.Hourly Masters Pay$70—$70 USDThe expected hourly rate for this full-time position is listed below. Interns are also eligible to participate in the Company’s generous benefits programs, subject to eligibility requirements.Hourly PhD Pay$85—$85 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
- System Disruption ManagerWaymo · Remote · Remote
- Regional Autonomous Fleet Readiness Manager - CentralWaymo · Remote · Remote
2027 Summer Intern – Research and Development – Vehicle Health ManagementGeneral Motors · Warren, MI · Hybrid
2027 Summer Intern, Meeting and Events Associate (Reston, VA)ICF · Reston, VA · Hybrid
2027 Summer Intern Biostatistics & Statistical ProgrammingRegeneron · Tarrytown, GA · Onsite
2027 Summer Analyst, Graphic Designer (Creative Services)Related · New York, NY · Onsite
