Used Tools & Technologies
Not specified
Required Skills & Competences
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.
Linux @ 4
Hiring @ 4
Communication @ 4
Debugging @ 4
API @ 4
macOS @ 4
CUDA @ 4
GPU @ 4
Deep Learning @ 4
AI @ 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
We are hiring software engineers to work on the CUDA driver, a core component of our platform for accelerating general purpose computation on the GPU. The team delivers features and improvements to realize the potential of NVIDIA hardware for workloads such as deep learning, scientific computation, self-driving cars, video games, and virtual reality.
CUDA defines a unified programming model across a range of system configurations and hardware capabilities. The CUDA driver interacts with GPU hardware, kernel mode drivers, and the operating system. The Unified Memory kernel driver provides kernel memory management that enables advanced features of the programming model.
Responsibilities
- Architect and implement new features for new chips and new kernel features
- Coordinate with other teams to accomplish work daily
- Help define forward-looking improvements to the CUDA APIs and programming model
- Write effective, maintainable, and well-tested kernel and userspace code
- Develop code for multiple Linux operating systems
Requirements
- BS or MS degree in Computer Science, Electrical Engineering, or related field (or equivalent experience)
- Strong C programming skills
- Minimum of 10+ years of related development experience
- Experience working with large codebases
- Background with operating system interfaces for threads, process control, and virtual memory
- Experience writing and debugging multithreaded programs
- Good written communication
Preferred / Ways to stand out
- Understanding of system-level architecture (interconnects, memory hierarchy, interrupts, memory-mapped I/O)
- Knowledge of memory coherence and consistency models
- Experience with kernel mode development
- Experience with Windows, Linux, or macOS driver development
- Some familiarity with C++
Compensation & Additional Information
- Base salary range: Level 4 — 184,000 USD to 287,500 USD; Level 5 — 224,000 USD to 356,500 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.
- You will also be eligible for equity and benefits.
- Applications for this job will be accepted at least until March 19, 2026.
- NVIDIA uses AI tools in its recruiting processes.
Equal Opportunity
NVIDIA is committed to fostering a diverse work environment and is an equal opportunity employer. The company does not discriminate on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status, or any other characteristic protected by law.