Senior Software Engineer - CUDA and Unified Memory
NVIDIA
Get more Software Engineering openings
A short daily email when similar roles appear in Santa Clara. No account needed.
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. 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, and the operating system. Unified Memory kernel driver provides kernel memory management that enables these advanced features.
What you'll be doing:
As a member of our team, you will apply your design, coding expertise, and creativity, and to collaborate with peers across NVIDIA to deliver upon the best compute platform in the world. You will craft sophisticated solutions to exciting problems shaping the future direction of CUDA!
Architect, and implement new features for new chips and new kernel features
Coordinate with other teams to accomplish your 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
What we need to see:
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
Ways to stand out from the crowd:
Understanding of system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
Knowledge of memory coherence and consistency models
Experience with kernel mode development
Experience with Windows, Linux, or macOS driver development
Some familiarity w C++
You will also be eligible for equity and benefits.
This posting is for an existing vacancy.
NVIDIA uses AI tools in its recruiting processes.
NVIDIA is committed to fostering an inclusive 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.The average job posting receives 250 applications.
Stand out by tailoring your resume to this specific role. Our AI resume builder highlights the skills and experience that matter most to this employer.
More open roles at NVIDIA
Characterization Product Development Engineer
Santa Clara
Senior Commodity Manager - PCB
Santa Clara
ATE Test Engineer
Santa Clara
Senior Network Deployment Engineer, PoP Management - DGX Cloud
Santa Clara
Senior Product Quality Engineer, Board – Automotive
Santa Clara
Senior Services Supply Chain Inventory Management and Control Engineer
Santa Clara
More software engineering roles in Santa Clara
Senior Technical Program Manager - Tegra
NVIDIA
Senior Data Scientist, Cloud Gaming - Prescriptive Analytics and Optimization
NVIDIA
Senior Compute System Software Engineer
NVIDIA
Principal System Engineer, Operations
NVIDIA
Solutions Architect - NVIDIA Cloud Partners
NVIDIA
Senior Solutions Architect, NVIDIA Cloud Partners
NVIDIA