Software Engineer, GPU

WaymoMountain View, NY
6d$204,000 - $259,000Hybrid

About The Position

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. 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 hybrid role, you will report to a Senior Software Engineer.

Requirements

  • Proven expertise in C++ programming
  • Bachelor degrees in EECS, coupled with a minimum of three years of industry experience
  • Experience with full-system simulation frameworks (SystemC, Gem5 or similar)
  • Solid understanding of GPU hardware architecture
  • Proficiency in utilizing performance analysis tools and debuggers
  • Enthusiasm for developing the complete GPU software stack, from the hardware level to real-world applications

Nice To Haves

  • Knowledge of Linux device drivers and embedded firmware
  • Experience with diverse GPU deployment environments
  • Proficiency in GPU optimization techniques, including memory coalescing, register/shared memory tiling, pinned memory, and warp-level programming
  • Familiarity with GPU libraries such as Thrust, CUB, CUTLASS, or Eigen
  • Experience collaborating with external operators to ensure high quality standards
  • Experience contributing to open-source compiler projects such as LLVM or SPIR-V

Responsibilities

  • Develop high-performance GPU primitives and abstractions to enable Waymo to scale its accelerator codebase across diverse GPU backends
  • Collaborate with Waymo's internal hardware team and external partners on SoC projects with a focus on the GPU portion
  • Manage the bring-up, correctness, and performance of the Waymo onboard stack on new GPU platforms
  • Contribute to testing infrastructure that enhances the CI/CD flow for GPUs, detects bugs early, and generates automated alerts to maintain the GPU stack's functionality and performance
  • Create profiler and debugger tools for new GPU platforms
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service