Senior Software Engineer, Linux Kernel and System Software
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.
Waymo Onboard Infrastructure is responsible for low-level software and infrastructure on various components of the Waymo self-driving system. The team’s scope covers everything from low-level system software to high-bandwidth data logging, IPC (low-latency and high-throughput), performance analysis, full-system debugging, etc. We work closely with the Hardware, Compute, Sensor, Perception, Behavior and Machine Learning teams to build the most performant and low-latency self-driving solution in the industry.
In this role, you will work on the System Software Team. The System Software team owns the primary compute node of Waymo’s on-vehicle compute platform – a highly integrated, high performance embedded system. You will be responsible for writing Linux Kernel drivers (including creating appropriate user-space APIs) to communicate with custom hardware (e.g. custom ASICs and FPGAs). If you enjoy building robust and high-performance embedded systems using state-of-the-art compute hardware and working closely with engineering teams that will be direct consumers of your work, you’ll be a great fit for this role.
In this role, you will:
- Work on a small team of System Software and Linux Kernel Engineers to design, implement and test system software components from early prototyping to production launch of driverless vehicles
- Design, implement and test Linux Kernel device drivers and other components for high-performance embedded systems including custom ASICs and accelerators.
- Work effectively across a variety of engineering teams and SoC partners to resolve issues
- Take on complex and ambiguous problems and come up with clean and robust solutions.
At a minimum we’d like you to have:
- BA/BS degree in Computer Science, Computer Engineering or relevant technical field or equivalent practical experience
- 8+ years of relevant work experience.
- Proficiency in C and C++
- Strong understanding of programming in an asynchronous environment with multiple processes, threads, timers, interrupts, etc.
- Experience with Linux kernel and device driver development
- Excellent debugging skills
It’s preferred if you have one or more of the following
- Experience with early-silicon development tools, e.g. emulators, simulators and FPGAs
- Experience with common hardware protocols/interfaces (PCIe, Ethernet, I2C, etc)
- Experience with working with multiple types of industry partners (CM, ODM, OEM, ISV, etc.)
- Working knowledge of complex hardware-accelerated compute pipelines (GPUs, ML accelerators, image/data processors, etc.).
- Experience in dealing with existing, complex systems and codebases
- Performance optimization of systems and complex pipelines
- Working knowledge of hardware bring-up and debugging, including the ability to read schematics/datasheets and use common tools (oscilloscopes, multimeter, logic analyzers, etc.)
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.
Note: The following is only applicable for roles hired in the US. As we keep the safety of our employees and our communities top of mind, COVID-19 vaccinations continue to be a critical prevention measure to help end the pandemic. Because of this, Waymo requires all US-based employees who perform work onsite for Waymo to be fully vaccinated against COVID-19. If you are unable to be vaccinated, Waymo will provide a reasonable accommodation consistent with applicable law.