Tech Stack
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
AI @ 6
API @ 4
CUDA @ 4
Communication @ 7
Debugging @ 7
Git @ 4
Linux @ 7
Matlab @ 4
OpenCL @ 4
OpenGL @ 4
Software Development @ 4
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
The Autonomous Vehicles System Software Team is seeking a hands-on System Software Engineer to develop performant and scalable solutions for data collection and autonomous vehicle fleets. The role focuses on Autonomous Driving Platform software, including platform and middleware features for self-driving cars that interact with cameras, LIDAR, RADAR, GPS, IMU, vehicle CAN, and other sensors. You will work across platform and embedded software, cloud infrastructure, safety, and performance on multi-computer and heterogeneous architectures.
Responsibilities
- Design and develop core components of the NVIDIA DriveWorks SDK.
- Develop and optimize software architectures and frameworks for real-world performance while meeting or exceeding customer requirements.
- Work on sensor abstraction layers, data processing components, process scheduling, data serialization, network communications, and frameworks.
- Perform in-vehicle tests, collect data, and complete autonomous driving missions.
- Establish unit tests and feature documentation, evaluate quality, and propose corrective actions.
- Develop highly efficient production code in C++, using the algorithmic parallelism offered by GPGPU programming with CUDA.
- Follow quality and safety standards such as MISRA and AUTOSAR.
Requirements
- Bachelor's or master's degree in Computer Engineering, Computer Science, or a related engineering field, or equivalent experience.
- 5+ years of professional experience working on autonomous vehicle software.
- Excellent C and C++ programming skills.
- Strong knowledge of programming and debugging techniques, particularly for parallel and distributed architectures.
- Proficiency with AI-powered coding tools such as Cursor, Copilot, and Gemini.
- Strong background in Linux, QNX, and/or other real-time operating systems.
- Experience writing low-latency, highly performant code.
- Strong communication and analytical skills.
Preferred Qualifications
- Experience with data-parallel and/or GPGPU programming, CUDA, or OpenCL.
- Knowledge of image-processing APIs such as OpenCV and MATLAB tools.
- Knowledge of automotive systems, particularly ADAS applications.
- Software development experience with modern OpenGL Core Profile and Linux.
- Experience with Git and the Bazel build system.
Compensation and Benefits
The base salary depends on location, experience, and compensation for employees in similar positions:
- Level 3: USD 152,000–241,500 per year
- Level 4: USD 184,000–287,500 per year
The role also includes eligibility for equity and benefits. Applications will be accepted at least until July 21, 2026. NVIDIA uses AI tools in its recruiting processes and is an equal opportunity employer.