About the job
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.
Responsibilities
Create architectural, micro-architectural models for exploration, development and verification of machine learning accelerators
Analyze workloads, define and derive representative micro-benchmarks for functional & performance goals
Drive equivalence between actual hardware and simulator implementations, both for correctness and performance correlation
Build scalable tools for modeling, performance analysis and optimization
Interact with cross-functional engineering teams to identify opportunities and requirements
Qualifications
Minimum
Bachelor's degree in Computer Science or Computer Engineering or equivalent, or equivalent practical experience
7+ years on modeling complex, high performance architectures in the industry for functionality and/or performance
Experience with cycle-level simulation frameworks (SystemC, Gem5 or similar)
Strong C++ programming skills and familiarity with software development methodologies
Solid foundation in computer architecture and principles of digital logic design
Preferred
2+ years experience modeling high performance architectures such as CPU, GPU, NPU etc.
Track record of building tools used by software and hardware teams for performance understanding and/or debug
Experience writing and debugging microbenchmarks for performance correlation and correctness
Excellent communication and problem solving skills