About The Position

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.

Requirements

  • BS or MS degree in Computer Science, Electrical Engineering or related field (or equivalent experience)
  • Strong C and C++ programming skills
  • Minimum of 4 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
  • Understanding of system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
  • Experience writing and debugging multithreaded programs
  • Good written communication as well as presentation skills

Nice To Haves

  • Prior experience with parallel computing - preferably writing CUDA Programs or Libraries that use CUDA
  • Knowledge of memory coherence and consistency models
  • Background with kernel mode development
  • Experience with Linux Systems Software development
  • Experience maintaining and extending programming models or higher-level language support for similar environments

Responsibilities

  • 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
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service