Senior Software Engineer - Performance
About this role
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 Software 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 Software 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. Your work will strongly influence design decisions of future compute platforms & resource allocation.
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 Software 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 Software 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. Your work will strongly influence design decisions of future compute platforms & resource allocation.
In this role, you will:
•
Build real-time instrumentation for performance monitoring of the system as well as benchmarking frameworks to support offline performance evaluation.
•
Create performance-optimization workflows (quick iteration loops) to evaluate and analyze performance at scale.
•
Analyze profiling data to identify resource utilization hotspots and optimization opportunities.
•
Propose and co-implement actionable solutions with software component teams.
•
Support teams in helping to squeeze out the maximum performance of their code, while minimizing resource contention.
Qualifications
• 6+ years of professional experience in software development or related fields
•
Hands-on experience in the development, debugging, and profiling of complex multi-process real-time systems, like game engines or robotics systems
•
Strong knowledge of C++ and experience in large code bases
•
Familiar with CPU system architecture and OS fundamentals
•
Good communication and organization skills, with a logical approach to problem-solving, good time management, and task prioritization skills
Bonus Qualifications
•
Experience using various Linux performance monitor tools, such as perf, eBPF, Perfetto
•
Kernel and/or driver development experience
•
Experience with software & hardware benchmarking and Hardware-in-the-Loop (HIL) systems
About Zoox
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.
Follow us on LinkedIn
Accommodations
If you need an accommodation to participate in the application or interview process please reach out to [email protected] or your assigned recruiter.
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.