Principal Engineer, CUDA UMD - GPU Kernel Scheduling

NVIDIA

United States

On-site

USD 272,000 - 431,000

Full time

3 days ago
Be an early applicant
Application generator

Stand out for this role — generate a tailored resume and cover letter in about a minute.

Get past ATS filters

Benefits offered by this job

Equity
Benefits

Job summary

NVIDIA is seeking a seasoned system software engineer to work on the CUDA Driver, a core component for accelerating GPU computation. You will contribute to features, APIs, and programming models while collaborating across teams to push the CUDA platform forward.

Ideal candidates have extensive C/C++ expertise, a strong OS/driver background, and experience with large codebases in a multi-team environment. Equity and comprehensive benefits accompany this role.

Qualifications

  • BS or MS degree in CS/EE or related field (or equivalent).
  • Strong C/C++ programming skills.
  • 15+ years of related development experience.
  • Experience driving projects across multiple teams.
  • Experience with large codebases.
  • Background with OS interfaces for threads, process control, and memory.
  • Experience writing and debugging multithreaded code.
  • Good written communication and presentations.

Responsibilities

  • Develop CUDA Driver features and improvements.
  • Architect and implement new features across teams.
  • Coordinate development efforts across multiple teams.
  • Define improvements to CUDA APIs and models.
  • Extend CUDA programming models and functionality like CUDA Graphs.
  • Explore graph-based scheduling for AI/ML workloads.
  • Write maintainable, well-tested code for multiple OSs.

Skills

C/C++ programming
Multithreading
OS interfaces
Large codebases
Parallel computing
CUDA

Education

BS or MS in CS/EE

Tools

Linux
Kernel mode
CUDA APIs

Job description

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 smartest people in the world. Join us at the forefront of technological advancement.

Are you a motivated system software engineer with a deep understanding of device drivers who has phenomenal C/C++ skills? If so, this role might be for you. We are looking for a seasoned software professional to work on the CUDA Driver, a core component of our platform for accelerating general purpose computation on the GPU. You will be an integral part of a team that 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, data science and self-driving cars to video games and virtual reality.

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.
  • Evangelize, architect, and implement new features
  • Coordinate and drive development efforts across multiple teams
  • Help define forward-looking improvements to the CUDA APIs and programming model
  • Extend important CUDA programming models and functionality such as CUDA Graphs
  • Explore ways to use Graphs to improve the scheduling of AI/ML workloads on our GPUS to be more efficient and faster.
  • Write effective, maintainable, and well-tested code
  • Develop code for multiple operating systems
What we need to see:
  • BS or MS degree in Computer Science, Electrical Engineering or related field (or equivalent experience)
  • Strong C and C++ programming skills
  • Minimum of 15+ years of related development experience (multiple positions for varying experience levels open)
  • Experience driving projects across multiple teams
  • 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 as well as presentation skills
Ways to stand out from the crowd:
  • Prior experience with parallel computing - preferably writing CUDA Programs or Libraries that use CUDA
  • Understanding of system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
  • Knowledge of memory coherence and consistency models
  • Background with kernel mode development
  • Experience with Linux Systems Software development as well as experience maintaining and extending programming models or higher-level language support for similar environments

Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. The base salary range is 272,000 USD - 431,250 USD.

You will also be eligible for equity and benefits.

Applications for this job will be accepted at least until September 18, 2026.

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.

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Senior Software Engineer CUDA UMD - GPU Kernel Scheduling
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling

NVIDIA • Santa Clara (CA)

On-site
USD 152,000 - 288,000
Equity
Benefits
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling

NVIDIA Gruppe • Santa Clara (CA)

On-site
USD 152,000 - 288,000
Equity
Benefits
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling

Nvidia Corporation in • Santa Clara (CA)

On-site
USD 152,000 - 242,000
Equity
Benefits
Senior Software Engineer, CUDA UMD - Graphs and GPU Sharing
Senior Software Engineer, CUDA UMD - Graphs and GPU Sharing

NVIDIA • United States

On-site
USD 184,000 - 357,000
Equity
Benefits
Senior Systems Software Engineer, CUDA Driver
Senior Systems Software Engineer, CUDA Driver

Socket.dev • Santa Clara (TX)

On-site
USD 184,000 - 288,000
Equity
Benefits
Senior Software Engineer, CUDA UMD - Graphs and GPU Sharing
Senior Software Engineer, CUDA UMD - Graphs and GPU Sharing

NVIDIA Corporation • Santa Clara (CA), Northern (KY)

Hybrid
USD 184,000 - 357,000
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling
Senior Software Engineer CUDA UMD - GPU Kernel Scheduling

NVIDIA • Jasper (AL)

On-site
USD 152,000 - 288,000
Equity
Benefits
Principal Engineer, CUDA UMD - GPU Kernel Scheduling
Principal Engineer, CUDA UMD - GPU Kernel Scheduling

NVIDIA Gruppe • Santa Clara (CA)

On-site
USD 272,000 - 432,000
Equity
Benefits
Senior Systems Software Engineer, CUDA Driver
Senior Systems Software Engineer, CUDA Driver

NVIDIA • California (MO)

On-site
USD 184,000 - 288,000
Equity
Benefits
Senior Systems Software Engineer, CUDA Driver
Senior Systems Software Engineer, CUDA Driver

NVIDIA Corporation • Santa Clara (CA), Northern (KY)

Hybrid
USD 184,000 - 288,000
Equity
Benefits