Prepin
Log in
NVIDIA

engineering opportunity

Senior System Software Engineer – Data Center Compute Diagnostics

You will architect, implement, and maintain low-level diagnostic software for data center GPUs and AI systems. Additionally, you will lead development efforts, mentor engineers, and collaborate across teams to validate hardware and diagnose complex system failures.

Durham, North Carolina, United StatesonsiteFULL_TIME

Posted

About the role

What will you do at NVIDIA?

We are seeking a senior system software engineer to lead technically and own key parts of our low-level diagnostic software. This software supports next-generation data center GPUs and rack-scale AI systems. Our team builds software that exercises and validates complex hardware, including processing units, storage and cache architectures, NICs, PCIe and NVLink interfaces, power delivery, and thermal behavior.

This role is well suited to a senior embedded, firmware, device-driver, hardware-validation, or systems software engineer with a record of leading complex software projects that directly interface with hardware. Relevant experience may come from GPUs, CPUs, networking, storage, servers, embedded systems, or other complex silicon-based products. Prior GPU, CUDA, or GEMM experience is helpful for the role; deep experience developing low-level software for complex hardware systems is required.

This is a hands-on software development role in which you will architect, implement, debug, and maintain key components of the diagnostic software through validation, productization, and field support.

In addition to making substantial individual code contributions, you will lead complex development efforts, mentor other engineers, and collaborate with hardware architects, driver developers, silicon-validation engineers, manufacturing teams, and field engineers to bring up new hardware and diagnose difficult system failures. Join an exciting, rewarding, and fast-moving environment building the systems that power modern AI.

What you’ll be doing:

Architecting and developing diagnostic and stress software in C/C++ and Python for complex hardware systems.

Leading development efforts across multiple engineers, breaking ambiguous problems into actionable work, and mentoring engineers in low-level software development and debugging.

Interfacing with hardware blocks, firmware, Linux device drivers, registers, telemetry, and low-level debugging tools.

Assessing new hardware features and defining effective diagnostic and stress strategies for engineering validation, manufacturing, product qualification, and field use.

Designing targeted tests for compute engines, memory and cache subsystems, DMA engines, NICs, PCIe/NVLink interfaces, power, and thermal behavior.

Developing diagnostic and stress workloads ranging from low-level tests for GPU hardware to higher-level AI workloads using CUDA programming, GEMM-style compute, NCCL, and PyTorch.

Investigating complex hardware and software failures involving memory errors, ECC, data integrity, performance, thermals, voltage/frequency behavior, and high-speed interfaces.

Using modern development and analysis tools, including AI-assisted tools where appropriate, to accelerate coding, debugging, test creation, and failure analysis.

What we need to see:

BS or MS degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field, or equivalent experience.

12+ years of experience in embedded software, firmware, Linux device drivers, systems software, hardware validation, diagnostics, or silicon bring-up.

Experience providing technical leadership for a complex software component or project, including coordinating work among various engineers and mentoring others.

Strong programming skills in C and C++, plus working proficiency in Python.

Extensive experience developing software that interacts with hardware, firmware, device drivers, hardware registers, or other low-level interfaces.

Background with PCIe, NVLink, or networking technologies such as Ethernet or InfiniBand.

Strong understanding of computer architecture concepts such as memory systems, caches, interrupts, DMA, buses, device I/O, bandwidth constraints, and hardware error behavior.

Experience debugging complex failures across hardware, firmware, device drivers, operating systems, and applications.

Ability to define technical direction, make sound engineering tradeoffs, and drive ambiguous problems through completion across organizational boundaries.

Excellent written and verbal communication skills, including the ability to communicate effectively with hardware architects, software engineers, manufacturing teams, field engineers, and technical leadership.

Widely considered to be one of the technology world’s most desirable employers, NVIDIA offers highly competitive salaries and a comprehensive benefits package. As you plan your future, see what we can offer to you and your family www.nvidiabenefits.com/

Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. The base salary range is 224,000 USD - 356,500 USD.

You will also be eligible for equity and benefits.

Applications for this job will be accepted at least until August 3, 2026.

This posting is for an existing vacancy.

NVIDIA uses AI tools in its recruiting processes.

NVIDIA is committed to fostering an inclusive work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status or any other characteristic protected by law.

Which skills does this role require?

CC++Linux device driversSystem softwareHardware validationCUDAData center computeSilicon bring-upTelemetryData CenterGPUAI SystemsEmbedded SoftwareHardware ValidationSiliconGEMMNCCLPyTorchStress TestingSystem Bring-upLinuxHardware Architecture

Make your next move

Build a shortlist and prepare

Identify the requirements you can demonstrate, then choose examples from your work to discuss with the hiring team.

Review the responsibilities and requirements before adding an opening to your shortlist.

Role information can change. Confirm current details on the original application page.

Product

AI Candidate AgentCompaniesBrowse JobsDeep ProfileSkill AssessmentOpportunity Matching
Prepin.ai

© 2026 Prepin | All rights reserved.