System Software Engineer - GPU

NVIDIA NVIDIA · Semiconductors · Santa Clara, CA

System Software Engineer at NVIDIA focused on developing low-level GPU testing frameworks for next-generation computing and graphics products. The role involves close collaboration with hardware and driver teams, crafting software tools for validation and productization, and architecting diagnostic tests. While the core role is system software engineering, it emphasizes the application of AI/ML techniques to enhance validation efficiency and test creation, and the use of AI-assisted development tools.

What you'd actually do

  1. Working closely with architecture, hardware and driver teams through the product development life cycle of computing and graphics processors, as well as compute products.
  2. Responsible for crafting software tools and infrastructure required for new chip development, validation, and productization.
  3. Architect and develop foundational capabilities required for Data Center and Consumer GPU diagnostics.
  4. You will assess new hardware features and architect manufacturing diagnostic tests using pre-beta CUDA and Vulkan extensions. This job will require an understanding of our hardware and software architectures.
  5. Explore ways to use high level compute & graphics programming APIs to stress specific units and flows at a GPU and system level.

Skills

Required

  • BS or MS degree in Electrical Engineering, Computer Engineering, Computer Science (or equivalent experience)
  • 5+ years proven experience in a related hardware/software position
  • Strong C/C++ programming skills
  • Understanding of PC architecture
  • ability to work close to the hardware
  • Very strong problem solving and debugging skills
  • Ability to self-manage
  • show leadership
  • good interpersonal skills

Nice to have

  • Parallel Computing
  • PCIE
  • Nvlink
  • server product technologies like Infiniband, Ethernet
  • Experience utilizing AI tools to improve velocity while delivering the highest quality results.
  • Familiarity with modern AI-assisted software development workflows (e.g., AI-based code generation, test generation, debugging, or analysis).
  • Previous experience of working on a large system software code base is preferable

What the JD emphasized

  • strong C++ programming skills
  • thorough knowledge of GPU concepts and algorithms
  • solid foundation of systems software with emphasis on OS fundamentals
  • deep understanding of current generation hardware architecture
  • meticulous engineering practices are a requirement