Description
NVIDIA is seeking a system software engineer to develop low-level diagnostic software for next-generation data center GPUs and rack-scale AI systems.
The ideal candidate will have experience in embedded software, firmware, Linux device drivers, systems software, hardware validation, diagnostics, or silicon bring-up. You will own well-scoped components of the diagnostic software from design through implementation, validation, productization, and field support.
Responsibilities:
- Developing diagnostic and stress software in C/C++ and Python for complex hardware systems.
- Interfacing with hardware blocks, firmware, Linux device drivers, registers, telemetry, and low-level debugging tools.
- Bringing up and validating new silicon and system features using pre-production hardware and software.
- Creating targeted tests for compute engines, memory and cache subsystems, DMA engines, PCIe/NVLink interfaces, power, and thermal behavior.
- Investigating hardware and software failures involving memory errors, ECC, data integrity, performance, thermals, voltage/frequency behavior, and high-speed interfaces.
- Contributing to diagnostic and stress workloads ranging from low-level tests for GPU hardware to higher-level AI workloads.
- Using modern development and analysis tools, including AI-assisted tools where appropriate, to accelerate coding, debugging, test creation, and failure analysis.
Requirements:
- BS or MS degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field, or equivalent experience.
- 2+ years of experience in embedded software, firmware, Linux device drivers, systems software, hardware validation, diagnostics, or silicon bring-up.
- Strong programming skills in C and C++, plus working proficiency in Python.
- Experience developing software that interacts with hardware, firmware, device drivers, hardware registers, or low-level interfaces.
- Experience creating diagnostics, validation tests, stress tests, manufacturing tests, or other software used to isolate hardware or system failures.
- Understanding of fundamental computer architecture concepts such as memory, caches, interrupts, DMA, buses, and device I/O.
- Strong debugging and problem-solving skills, including the ability to investigate failures across hardware and software boundaries.
- Ability to take ownership of a well-scoped problem and drive it to completion while collaborating with a technical lead and cross-functional teams.
- Good written and verbal communication skills.
Benefits:
- Highly competitive salaries
- Comprehensive benefits package
- Equity
The base salary range is 124,000 USD - 195,500 USD.
This listing is enriched and indexed by YubHub. To apply, use the employer's original posting:
https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/US-NC-Durham/System-Software-Engineer---Data-Center-GPU-Compute-Diagnostics_JR2028394