NVIDIA’s invention of the GPU in 1999 sparked the growth of the PC gaming market, redefined modern computer graphics, and revolutionized parallel computing. More recently, GPU deep learning ignited modern AI — the next era of computing — with the GPU acting as the brain of computers, robots, and self-driving cars that can perceive and understand the world. We're looking to grow our company and form teams with the most inquisitive people in the world. Join us at the forefront of technological advancement. We are hiring software engineers to work on the CUDA driver for Windows. CUDA is NVIDIA’s platform for accelerating general purpose computation on the GPU. Our team delivers features and improvements to better realize the potential of NVIDIA hardware for a growing range of computational workloads, ranging from deep learning, scientific computation, and self-driving cars to video games and virtual reality. CUDA defines a unified programming model across a range of system configurations and hardware capabilities. To accomplish this, the CUDA driver interacts with GPU hardware, kernel mode drivers, user mode drivers, and the operating system.
What you’ll be doing:
As a member of our team, you will use your design abilities, coding expertise, and creativity to deliver the best compute platform in the world. You will craft elegant solutions to exciting problems and shape the future direction of CUDA as you collaborate with your peers across NVIDIA.
You will architect and implement new features
Coordinate development efforts across multiple teams
Help define forward-looking improvement to the CUDA APIs and programming model
Write effective, maintainable, and well-tested code
Focus on developing code that targets the Microsoft Windows operating system
What we need to see:
BS or MS degree in Computer Science, Electrical Engineering or related field (or equivalent experience)
8+ years of relevant industry experience or equivalent academic experience after BS
Strong C and C++ programming skills
Experience working with large codebases
Experience with operating system interfaces for threads, process control, and virtual memory
Experience writing and debugging multithreaded programs
Understanding of system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
Strong interest in system software
Knowledge of memory coherence and consistency models
Good written communication
Ways to stand out from the crowd:
Windows Display Driver Model (WDDM) experience
Experience with game development
Background in computer graphics (OpenGL, Vulkan, DirectX)
Experience writing Windows device drivers
Experience with kernel mode development
The base salary range is 180,000 USD - 339,250 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. NVIDIA accepts applications on an ongoing basis.
NVIDIA is committed to fostering a diverse work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) 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.