Senior Systems Software Engineer - GPU Diagnostics

NVIDIA NVIDIA · Semiconductors · Santa Clara, CA

Senior Systems Software Engineer role focused on developing and debugging NVIDIA's GPU Diagnostics SW stack, working with kernel driver, GPU architecture, and system design teams. Requires strong C++ skills, deep knowledge of device programming, OS fundamentals, and hardware architecture.

What you'd actually do

  1. Design, implement, unit test and debug changes in the NVIDIA SW stack to take next-gen HW from design / development stage to production.
  2. Be heavily involved in emulation, bring-up, and product hardening required to build our groundbreaking products
  3. You will follow the devices all the way from manufacturing through the development process to datacenter systems, customer desktops, notebooks and workstations.
  4. Tackle a variety of problems that directly impact NVIDIA’s end users and partner OEMs.
  5. This job will require a deep understanding of our hardware and software architectures.

Skills

Required

  • C++
  • low-level systems software development
  • Linux OS
  • computer system architecture
  • device programming
  • OS fundamentals

Nice to have

  • BS or MS degree in Computer Engineering, Computer Science, or related degree, or equivalent experience
  • previous experience of working on a large system software code base
  • good written and verbal communication skills
  • strong collaborative and networking abilities
  • ability to self-manage
  • show leadership
  • good interpersonal skills
  • modern AI productivity tools

What the JD emphasized

  • strong C++ programming skills
  • detailed knowledge of device programming
  • solid foundation of systems software with emphasis on OS fundamentals
  • deep understanding of current generation hardware architecture at systems level
  • excellent programming skills and proficiency in C/C++ language, libraries, and toolchains
  • 5+ years hands-on experience developing low level systems software, preferably using Linux OS
  • strong software engineering skills combined with a drive to solve hard problems are a must
  • familiarity with computer system architecture, microprocessor and fundamentals (caches, buses, memory controllers, DMA, etc.)
  • proven ability to thrive in high-pressure, fast-paced development environments, especially during critical project phases