
Senior Software Engineer, Virtualization β Linux Kernel
Posted 6 days ago

Posted 6 days ago
This is a fully remote position, open to applicants in California, +1 more state.
β’ Design, develop, test, document, and sustain upstream Linux kernel support for NVIDIA GPU virtualization, which includes enabling vGPU in Nova.
β’ Engage with the Linux virtualization stack, covering KVM, QEMU, and VFIO, focusing on device assignment, PCIe SR-IOV, memory management, and the lifecycle of virtual devices.
β’ Lead technical proposals and series of patches through upstream design discussions, reviews, and acceptance processes.
β’ Collaborate with subsystem maintainers to address feedback and review contributions from colleagues.
β’ Diagnose and resolve functional, performance, and reliability challenges across host drivers, hypervisors, and GPU firmware interfaces.
β’ Work in partnership with internal software, hardware, architecture teams, and the open-source community to define features, validate integration, and ensure support as the kernel evolves.
β’ Create Linux kernel and virtualization technologies that facilitate GPU computing in cloud and enterprise environments.
β’ Bachelor's degree or higher in computer science, computer engineering, or a related discipline, or equivalent experience.
β’ Over 12 years of experience in Linux kernel development or virtualization.
β’ Proven track record of relevant contributions that have been accepted into the upstream Linux kernel.
β’ Experience in preparing patch series, addressing review feedback, and collaborating with subsystem maintainers.
β’ Proficiency in Rust and C programming languages.
β’ Strong understanding of Rust ownership, lifetimes, memory safety, and interoperability with C.
β’ Comprehensive knowledge of Linux kernel internals, including the device-driver model, memory management, synchronization, and concurrency.
β’ Solid understanding of virtualization concepts, including host and guest interactions, memory translation, device assignment, interrupts, and resource isolation.
β’ Familiarity with tools such as GDB, KGDB, ftrace, or perf.
β’ Excellent technical writing and communication skills.
β’ Knowledge of GPU architecture, GPU drivers, or GPU virtualization is advantageous.
β’ Experience with DRM, Nouveau, Nova, or similar graphics and compute driver stacks is a plus.
β’ Contributions to Rust-for-Linux are a benefit.
β’ Practical development experience with KVM, QEMU, VFIO, IOMMU, or PCIe SR-IOV.
β’ Background 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.
β’ Highly competitive salaries.
β’ Comprehensive benefits package.
β’ Equity options.
β’ Benefits catering to you and your family.
Leidos
Consertus
Penn Interactive
Foundation Health
Get handpicked remote jobs straight to your inbox weekly.