Principal System Software Engineer - CUDA Driver

NVIDIA Ltd.
Santa Clara, United States of America
6 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 272K

Job location

Santa Clara, United States of America

Tech stack

C
API
Nvidia CUDA
System Configuration
Software Debugging
Video Game Development
Scientific Computating
System Programming
System Software
Virtual Memory
Software Verification
Virtual Reality
Deep Learning
Information Technology

Job description

We are hiring senior 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, Switches and the operating system. What You'll Be Doing

  • You will evangelize, architect, and implement new CUDA features
  • You'll oversee and drive development efforts across multiple teams
  • Collaborate with members of hardware architecture teams
  • Help define forward-looking improvements to the CUDA APIs and programming model
  • Design and maintain performance and precision modeling
  • Write effective, maintainable, and well-tested code
  • Develop code for multiple operating systems

Requirements

  • Bachelor of Science or Master of Science degree in Computer Science, Electrical Engineering, or related field (or equivalent experience)
  • 15+ years of relevant systems software development experience
  • Strong C programming skills
  • Experience designing, debugging, and maintaining complex software stacks
  • Background with operating system interfaces for threads, process control, and virtual memory
  • Experience with HW/SW co-design, perf. modeling using emulation/simulation, creating SW programming model exposures for HW features
  • Expert interpersonal, verbal, and written communications skills with a capability to achieve objectives under tight deadlines
  • Strong collaborative and interpersonal skills, specifically a proven ability to effectively guide and influence within a dynamic Matrix environment

Ways To Stand Out From The Crowd

  • You have an understanding of system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
  • Designing and implementing drivers programming rich HW acceleration engines and software verification testplans.
  • Knowledge of CPU, GPU architectures, memory coherence and consistency models
  • Some background with Kernel mode development
  • Some familiarity with C+

Benefits & conditions

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.

Apply for this position