# Principal Engineer, CUDA UMD - GPU Kernel Scheduling

**Company**: NVIDIA
**Location**: Santa Clara
**Work arrangement**: onsite
**Experience**: senior
**Job type**: full-time
**Category**: Engineering
**Industry**: Technology

**Apply**: https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Principal-Engineer--CUDA-UMD---Kernel-Scheduling_JR2014055?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply
**Canonical**: https://yubhub.co/jobs/job_48176e7f-78a

## Description

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. 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.

Key responsibilities include:

- Evangelizing, architecting, and implementing new features

- Coordinating and driving development efforts across multiple teams

- Helping define forward-looking improvements to the CUDA APIs and programming model

- Extending important CUDA programming models and functionality such as CUDA Graphs

- Exploring ways to use Graphs to improve the scheduling of AI/ML workloads on our GPUs to be more efficient and faster

Requirements include:

- 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

- 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

Nice to have:

- 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

## Skills

### Required
- C
- C++
- CUDA
- GPU
- kernel mode development
- Linux Systems Software development
- memory coherence and consistency models
- multithreaded programs
- operating system interfaces
- parallel computing
- programming models
- system level architecture

### Nice to have
- CUDA Graphs
- interconnects
- interrupts
- memory hierarchy
- memory-mapped IO
- virtual memory

---

Source: [Apply at nvidia.wd5.myworkdayjobs.com](https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Principal-Engineer--CUDA-UMD---Kernel-Scheduling_JR2014055?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply)
