JOBSEARCHER

Linux Kernel & Device Drivers - Software Engineer

ARCHIVED

We can't find an active application page for this role right now. It may reopen or be listed elsewhere. Use Next Steps to search for an active apply link and similar live jobs.

Description:Job Title: Senior Software Engineer – Linux Kernel & Device DriversLocation: San Jose, CA - OnsiteExperience: 5 to 15 years (depending on grade)ContractJob OverviewAs a Senior Engineer in the Systems Software team, you will drive the software-hardware co-design for Client’s AI and data center solutions. This role requires a visionary approach to Linux Kernel Memory Management, specifically focused on heterogeneous memory, virtualization, and high-bandwidth interconnects for our next-generation SoC and SSD platforms.Key ResponsibilitiesMemory Management R&D: Architect and optimize Linux kernel memory management for heterogeneous systems, including UVM (Unified Virtual Memory), memory tiering, and CXL-based memory expansion.Kernel & Driver Design: Lead the design of Linux device drivers for high-performance interfaces such as PCIe Gen5/6, NVMe, and proprietary AI accelerators.Virtualization & Hypervisors: Develop and tune KVM and QEMU support for IOMMU, interrupt virtualization, and hardware-assisted memory management.SoC Bring-up & Architecture: Partner with hardware architects to define registers and memory maps for upcoming ARMv9 and RISC-V silicon.System-Level Debugging: Resolve critical system bottlenecks and memory corruption issues using advanced tools like Lauterbach TRACE32, hardware emulators (Palladium/Zebu), and kernel profilers. Technical Skills & QualificationsEducation: MS in Computer Science, Computer Engineering, or a related field.Kernel Deep-Dive: Expert knowledge of the Linux MM subsystem (paging, swapping, HugePages, page cache, and LRU eviction policies).Hardware Interface Mastery: Deep understanding of PCIe/CXL protocol stacks, cache coherency (AMBA CHI/ACE), and DMA engines.Low-Level Programming: Expert proficiency in C and Assembly (ARM/x86); experience with Python for automation and performance modeling.Security & Reliability: Familiarity with hardware security features like TrustZone, ARM CCA, and memory protection units.Preferred ExperienceSignificant contributions to the mainline Linux Kernel (specifically in the mm/ or drivers/pci/ directories).Experience with Cloud and Data Center workloads and understanding their impact on kernel scheduling and memory latency.Knowledge of Machine Learning frameworks and how they interact with kernel-level memory allocators.