Staff Software Engineer - Deep Learning Acceleration
Aurora Innovation (View all Jobs)
Mountain View, California
Interview Process
1. Simplified real-world coding task on Coderpad.io 2. Time-boxed take-home assignment 3. Face-to-face meeting with teammates.
Salary
$189,000 - $303,000. A
Programming Languages Mentioned
Python, C++
Who we are
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.
At Aurora, you will tackle massively complex problems alongside other passionate, intelligent individuals, growing as an expert while expanding your knowledge. For the latest news from Aurora, visit aurora.tech or follow us on LinkedIn.
Aurora hires talented people with diverse backgrounds who are ready to help build a transportation ecosystem that will make our roads safer, get crucial goods where they need to go, and make mobility more efficient and accessible for all. As a Staff Software Engineer focusing on Deep Learning Acceleration at Aurora, you will play a pivotal role in enhancing the performance of Deep Learning networks utilized in our Autonomous Vehicle (AV) systems.
Your primary responsibility will be to conduct thorough performance analysis and optimization of these networks, ensuring they operate efficiently both onboard the vehicle and during training on large-scale data centers. This position requires a deep understanding of software architecture, system performance, and latency issues, as you will be tackling various challenges that arise in these areas. You will collaborate with a team of talented engineers and researchers to develop solutions that improve the overall efficiency and reliability of our self-driving technology. Your work will directly contribute to making transportation safer and more accessible. The role demands a strong analytical mindset, particularly in performance troubleshooting, where you will utilize techniques such as profiling and the roofline model to identify bottlenecks and optimize performance. In addition to your technical skills, you will need to be adaptable and quick to learn new technologies, as the field of deep learning and autonomous systems is rapidly evolving. Strong communication skills are essential, as you will be working in a fast-paced environment with large code bases and collaborating with cross-functional teams.
In this role you will:
- 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.
Required Qualifications:
- 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
- Experience working on large code bases in a fast-growing environment.
- Strong communication skills, enabling effective teamwork across multidisciplinary teams.
- Comfortable working in Linux/Unix environments.
Desirable 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.
The base salary range for this position is $189,000 - $303,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. These ranges may be modified in the future. The successful candidate will also be eligible for an annual bonus, equity compensation, and benefits.
#LI-Mid-Senior
Working at Aurora
At Aurora, we bring together extraordinarily talented and experienced people united by the strength of our values. We operate with integrity, set outrageous goals, and build a culture where we win together — all without any jerks. Our Careers page provides insight into what it is like to work at Aurora, and you can find all the latest updates in our Newsroom.
Commitment to inclusion
Aurora considers candidates without regard to their race, color, religion, national origin, age, sex, gender, gender identity, gender expression, sexual orientation, marital status, pregnancy status, parent or caregiver status, ancestry, political affiliation, veteran and/or military status, physical or mental disability, or any other status protected by federal or state law. Aurora considers qualified applicants with criminal histories, consistent with applicable federal, state, and local law. We are also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, you may contact us at careersiteaccommodations@aurora.tech.
For California applicants, information collected and processed as part of your application and any job applications you choose to submit is subject to Aurora’s California Employment Privacy Policy.
Please mention No Whiteboard if you apply!
I'm a one-man team looking to improve tech interviews, and could use any support! 😄