Expoint - all jobs in one place

המקום בו המומחים והחברות הטובות ביותר נפגשים

Limitless High-tech career opportunities - Expoint

Nvidia Senior System Software Engineer 
United States, California 
520927780

01.12.2024

CUDA helps define a unified programming model across a range of system configurations and hardware capabilities accomplished through CUDA driver interaction with GPU hardware, kernel mode drivers, and the operating system. This role incorporates strong system software programming skills, a detailed understanding of operating systems and kernel programming, hardware architecture, as well as excellent communication and planning skills. You will work closely with both hardware engineers and other software engineers to craft, develop, debug and deploy many functional aspects of NVIDIA hardware and mobile system-on-chip (SOC) devices!

What you'll be doing:

In this role, you will:

  • Develop Software on Pre-Sienvironments(Simulation/Emulation)

  • Own and drive CUDA enablement for new Silicon and Architecture

  • Work with SW, HW and relevant teams to develop, stabilize and productize CUDA features for new chips and systems

  • Promote, architect, and implement new features, as well as own contribution to bring up of CUDA on new chips

  • Help define forward-looking improvements to the CUDA APIs and programming model, while driving development efforts across multiple teams

  • Write effective, maintainable, and well-tested code

  • Developing code for multiple operating systems

What we need to see:

  • BS or MS degree in Computer Engineering, Computer Science, Electrical Engineering or equivalent experience

  • 5+ years of relevant systems software development experience

  • Strong C programming skills, knowledge of parallel programming

  • Excellent knowledge of computer system architectures

  • Experience with operating system interfaces for threads, process control, and virtual memory

  • Experience writing and debugging multithreaded programs

  • Background with working with large codebases

  • Deep understanding of technology and passionate about what you do

  • Good written communication as well as strong collaborative skills and ability to effectively guide and influence across groups

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

  • Background with kernel mode development

  • Experience with Windows, Linux, or macOS driver development

  • Some familiarity with C++, CUDA experience

You will also be eligible for equity and .