Senior GPU Performance Engineer
Foster City, CA, USA
Posted on Tuesday, January 10, 2023
Zoox is building the world's most advanced self-driving hardware and software solution. The efficiency demands of such a system require an expert fine tuning of both the compute hardware architecture as well as the algorithms and middleware that runs on it to achieve maximum throughput at the most optimal power levels.
The Core Performance team’s mission is to analyze, optimize and provide guidance to the software and hardware teams in order to meet the required specifications.
As a GPU performance software engineer within the Core Performance team, you will instrument, monitor, analyze and optimize GPU based algorithms that are performance-critical for our solution. The scope for GPU usage ranges from traditional computer vision and deep learning architectures to complex geometric reasoning and multi-agent decision making.
- Build real-time instrumentation for performance monitoring (CPU, GPU, latency, memory) of the system at hand and offline benchmarking frameworks to support performance evaluation
- Build tools and scripts to evaluate & analyze performance at scale in CI as well as in vehicle. Establish budgets for existing architectures, and provide data to define next-gen architectures.
- Analyze performance metrics to identify GPU hotspots and root causes, and propose and co-implement actionable solutions with component teams.
- Support teams on bringing serial algorithms to the GPU to maximize compute utilization and improve overall latency.
- Work as part of the Core team to build a middleware framework that promotes by default efficient and performant code development by maximizing CPU and GPU.
- BS in computer science or related field
- Strong knowledge of C++ and experience in large code bases
- Strong knowledge of CUDA as applied to recent GPU microarchitectures (e.g., Turing, Ampere)
- Strong knowledge in linear algebra; 3D geometry and/or dynamical systems and control
- Experiencing debugging and optimizing GPU kernels using tools like Nsight Systems and Compute
- Comfortable in Linux development environments
- GPU kernel development experience in a firm/hard real-time environment
- Experience in development, debugging and profiling of complex multiprocess systems (e.g. game engines, robotic systems)
- Experience with PTX-level programming
- Experience with CPU SIMD instructions (e.g., AVX intrinsics)
- Experience with TensortRT and custom CUDA layers
There are three major components to compensation for this position: salary, Amazon Restricted Stock Units (RSUs), and Zoox Stock Appreciation Rights. The salary range for this position is $186,000 to $300,000. A sign-on bonus may be offered as part of the compensation package. Compensation will vary based on geographic location and level. Leveling, as well as positioning within a level, is determined by a range of factors, including, but not limited to, a candidate's relevant years of experience, domain knowledge, and interview performance. The salary range listed in this posting is representative of the range of levels Zoox is considering for this position.
Zoox also offers a comprehensive package of benefits including paid time off (e.g. sick leave, vacation, bereavement), unpaid time off, Zoox Stock Appreciation Rights, Amazon RSUs, health insurance, long-term care insurance, long-term and short-term disability insurance, and life insurance.
Zoox is developing the first ground-up, fully autonomous vehicle fleet and the supporting ecosystem required to bring this technology to market. Sitting at the intersection of robotics, machine learning, and design, Zoox aims to provide the next generation of mobility-as-a-service in urban environments. We’re looking for top talent that shares our passion and wants to be part of a fast-moving and highly execution-oriented team.
A Final Note:
You do not need to match every listed expectation to apply for this position. Here at Zoox, we know that diverse perspectives foster the innovation we need to be successful, and we are committed to building a team that encompasses a variety of backgrounds, experiences, and skills.