Senior ML Performance Engineer
Waymo is an autonomous driving technology company with a mission to make it safe and easy for people and things to get where they’re going. Since our start as the Google Self-Driving Car Project in 2009, Waymo has been focused on building the Waymo Driver—The World’s Most Experienced Driver™—to improve everyone's access to mobility while saving thousands of lives now lost to traffic crashes. Our Waymo Driver powers Waymo One, our fully autonomous ride-hailing service, as well as Waymo Via, our trucking and local delivery service. To date, Waymo has driven over 20 million miles autonomously on public roads across 25 U.S. cities and conducted over 20 billion miles of simulation testing.
At Waymo, we are mission-driven and believe deeply in the opportunity of autonomous driving technology to improve mobility and make people's lives better. We are united by purpose and responsibility (for our employees and riders alike). We are looking for kind, committed, employees who have integrity, dream big, work together as one team and create a sense of belonging for one another that is the foundation of our culture. We want each team member to feel welcomed and included in every step of our exciting journey.
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's Compute Team is tasked with a critical and exciting mission: We deliver the compute platform responsible for running the fully autonomous vehicle’s software stack. To achieve our mission, we architect and create high-performance custom silicon; we develop system-level compute architectures that push the boundaries of performance, power, and latency; and we collaborate closely with many other teammates to ensure we design and optimize hardware and software for maximum performance. We are a multidisciplinary team seeking curious and talented teammates to work on one of the world’s highest performance automotive compute platforms.
In this role, you'll:
- Collect application/ML model performance traces and analyze for performance optimization opportunities
- Land the optimizations to the application/ML model code base by
- Evaluating the correctness of the change (including retrain the ML model to evaluate accuracy)
- Ensure the change is net-positive for the current onboard performance
- Work with the application teams to adopt or apply the optimizations
- Add proper testing to ensure optimized performance is tracked and not regressed in the future
- Land the optimizations to the infrastructure by
- Prototype the performance optimizations and evaluate its effectiveness on applications/ML models
- Generalize the optimization at the infra level (compiler, firmware, runtime, framework, etc.) and project the potential impact to all applications (ML models) across board
- Motivate the infra teams to land the optimization to the specific level of the stack, set the performance expectation through solid methodology (e.g. roofline) and ensure the infrastructure team is aligned about the expectation
- Once the optimization is landed by the infra teams, close the loop by evaluating the overall performance impact and ensure it’s landed in the expected way
At a minimum we’d like you to have:
- BS degree in Computer Science/Electrical Engineering or equivalent, or equivalent practical experience
- 3+ years of experience writing complex C++ code
- 3+ years of experience writing code in Python
- 1+ years experience in optimizing compute performance for ML applications
- Experience in compute architectures and performance analysis optimization methodologies
It's preferred if you have:
- Experience in ML compiler design and implementation
- Experience in performance tools, simulators, HW/SW codesign
- Experience in robotic application development/optimizations
- Proficiency in collaboration with application teams and infrastructure teams
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.
While at Waymo, you will enjoy benefits that cover…
Health and wellness: Our people are at the heart of everything we do. At Waymo, you can enjoy top-notch medical, dental and vision insurance, mental wellness support, a Flexible Spending Account (FSA), a Health Saving Account (HSA), on-site physicians and/or nurses in some locations, and special wellness programs.
Financial wellness: Your financial peace of mind is important to us. At Waymo, we offer competitive compensation, bonus opportunities, equity, a generous 401(k) plan or regional retirement plans, 1-on-1 financial coaching, a 529 College Savings Plan and lots of other perks and employee discounts.
Flexibility and time off: Take the time you need to relax and recharge. Enjoy the flexibility to work from another location for four weeks per year. We support an on-site, hybrid work model and offer remote working opportunities, paid time off, Waymo recharge days, bereavement, sick, and parental leave.
Supporting families: When it comes to growing your family or caring for your loved ones, you have our full support. Enhanced leave options include paid parental leave (birthing parent gets 24 weeks of paid leave, and non-birthing parent gets 18 weeks of paid leave), and 20 subsidized days of backup childcare or adult/elder care. Access to fertility care or adoption support as you grow your family.
Community and personal development: At Waymo, you’ll find a range of opportunities to grow, connect, and give back. We offer education tuition reimbursement, personal and professional development, mentorship, and other ways to connect through Employee Resource Groups (ERGs), other internal groups, and even time off to volunteer.
Cool perks: Access to Google offices, cafes, wellness centers, personal training sessions, massages, haircuts, bike repairs, office transportation, commuter benefits and so much more. To support your wellbeing at home, you can enjoy at-home fitness and cooking classes, and more.
* Please note that while our benefits philosophy is the same in every place Waymonauts work, benefits may vary by office/country and are subject to eligibility requirements.