Senior Software Engineer, Virtualization and Linux Kernel
NVIDIA
Get more Software Engineering openings
A short daily email when similar roles appear in Santa Clara. No account needed.
NVIDIA has been transforming computer graphics, PC gaming, and accelerated computing for more than 25 years. It’s a unique legacy of innovation that’s fueled by great technology—and amazing people. Today, we’re tapping into the unlimited potential of AI to define the next era of computing. An era in which our GPU acts as the brains of computers, robots, and self-driving cars that can understand the world. Doing what’s never been done before takes vision, innovation, and the world’s best talent. As an NVIDIAN, you’ll be immersed in an inclusive, supportive environment where everyone is inspired to do their best work. Come join the team and see how you can make a lasting impact on the world.
We are looking for a Senior System Software Engineer to join the GPU Virtualization team and advance open-source Linux kernel support for NVIDIA GPUs. In this role, you will develop virtualization features in Rust and C, contribute to the upstream Linux kernel, and work directly with open-source maintainers and partners. You will help shape vGPU support in Nova, the upstream Rust driver for NVIDIA GPUs and the surrounding Linux virtualization stack. We are looking for someone who takes ownership of technical problems, communicates clearly, and works independently across globally distributed teams.
What you’ll be doing:
- Design, develop, test, document and maintain upstream Linux kernel support for NVIDIA GPU virtualization, including vGPU enablement in Nova.
- Work across the Linux virtualization stack, including KVM, QEMU and VFIO, on device assignment, PCIe SR-IOV, memory management and virtual-device lifecycle.
- Drive technical proposals and patch series through upstream design discussions, review and acceptance. Work with subsystem maintainers, address feedback and review contributions from others.
- Debug and resolve functional, performance and reliability issues across host drivers, hypervisors and GPU firmware interfaces.
- Collaborate with internal software, hardware, architecture and the open-source community to define features, validate integration and maintain support as the kernel evolves.
What we need to see:
- BS degree or higher in computer science, computer engineering or a related field, or equivalent experience.
- 12+ years of experience in Linux kernel development or virtualization.
- Record of relevant contributions accepted into the upstream Linux kernel, including experience preparing patch series, addressing review feedback and working with subsystem maintainers.
- Proficiency in Rust and C, with a strong understanding of Rust ownership, lifetimes, memory safety and interoperability with C.
- In-depth knowledge of Linux kernel internals, including the device-driver model, memory management, synchronization and concurrency.
- Strong understanding of virtualization, including host and guest interactions, memory translation, device assignment, interrupts and resource isolation.
- Strong debugging and analytical skills, with experience using tools such as GDB, KGDB, ftrace or perf to investigate complex kernel and system issues.
- Clear technical writing and communication skills, with the ability to explain design tradeoffs and work effectively with globally distributed engineering teams and open-source communities.
Ways to stand out from the crowd:
- Knowledge of GPU architecture, GPU drivers or GPU virtualization. Experience with DRM, Nouveau, Nova or similar graphics and compute driver stacks is a plus.
- Contributions to Rust-for-Linux, or experience developing in Rust for kernel subsystems.
- Hands-on development experience with KVM, QEMU, VFIO, IOMMU or PCIe SR-IOV.
- Experience as an open-source maintainer or reviewer, or leading patch series that span multiple kernel subsystems.
- Familiarity with device emulation, low-level firmware interfaces or virtual-device migration.
Join NVIDIA to develop Linux kernel and virtualization technologies that bring GPU computing to cloud and enterprise environments. You will work with experienced engineers and open-source communities, with opportunities to shape technical direction and grow your expertise.
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 for Level 5, and 272,000 USD - 431,250 USD for Level 6.You will also be eligible for equity and benefits.
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.The average job posting receives 250 applications.
Stand out by tailoring your resume to this specific role. Our AI resume builder highlights the skills and experience that matter most to this employer.
More open roles at NVIDIA
System Software Engineer - Robotics Simulation
Santa Clara
Solutions Architect, AI and ML
Redmond
Senior Software Engineer, AV Analysis Platform
Santa Clara
Senior Software Developer, Test and Automation
Santa Clara
Senior Software Engineer, AI Infrastructure Solutions
Santa Clara
Silicon Co-Design Engineer - New College Grad 2026
Santa Clara
More software engineering roles in Santa Clara
System Software Engineer - Robotics Simulation
NVIDIA
Director of Engineering - AI Control Tower
ServiceNow
Senior Software Engineer, AI Infrastructure Solutions
NVIDIA
Senior Software Developer, Test and Automation
NVIDIA
Senior Software Engineer – WebRTC Streaming
NVIDIA
Developer Relations Manager Robotics
NVIDIA