Staff Software Engineer, Deep Learning Acceleration
About the role
Aurora’s mission is to deliver the benefits of self-driving technology safely, quickly, and broadly. The Aurora Driver will create a new era in mobility and logistics, one that will bring a safer, more efficient, and more accessible future to everyone.
Responsibilities
- Conduct performance analysis and optimization of Deep Learning networks running on the Autonomous Vehicle (AV).
- Optimize software architecture, system performance, and latency for deep learning applications.
- Work on deployment of deep learning models on the AV and training on large-scale data centers.
- Troubleshoot performance issues using profiling and roofline model techniques.
- Collaborate with cross-functional teams to enhance the efficiency of self-driving technology.
Requirements
- Minimum 5+ years of professional experience in software engineering.
- BS, MS, or PhD in Computer Science or a related field.
- Strong programming skills in CUDA, C++ and Python.
- Extensive experience in high-performance computing and parallel programming, specializing in optimizing workloads to reduce GPU memory usage, minimize latency, and/or maximize throughput.
- Proficiency in leveraging performance analysis tools such as NVIDIA Nsight Systems, Nsight Compute and applying techniques like roofline model for performance optimization.
- Hands-on experience in optimizing DL/ML workloads at the framework level using at least one deep learning framework (e.g., PyTorch, TensorFlow), ensuring efficient and scalable model deployment.
- Strong understanding of the fundamentals of computer vision and transformer-based deep learning architectures, with proficiency in foundational neural network building blocks.
- Strong analytical skills for diagnosing and troubleshooting performance bottlenecks in complex systems.
- Demonstrated ability to quickly learn and adapt to emerging technologies and tools in a fast-paced environment.
- Strong communication skills, enabling effective teamwork across multidisciplinary teams.
- Comfortable working in Linux/Unix environments.
Qualifications
- Hands-on experience in motion planning or related fields such as robotics, autonomous systems, systems software, or computer vision.
- Experience with TensorRT, OpenAI Triton, Mojo and other inference acceleration tools.
Benefits
The base salary range for this position is $171,000 - $247,000. Aurora’s pay ranges are determined by role, level, and location. Within the range, the successful candidate’s starting base pay will be determined based on factors including job-related skills, experience, qualifications, relevant education or training, and market conditions.
Schedule
Aurora operates in a hybrid work environment where Aurorans are in office at least 3 days per week.
Pay
The successful candidate will also be eligible for an annual bonus, equity compensation, and benefits.