Job Title: Senior Software Engineer Linux Kernel & Device Drivers
Location: San Jose, CA (Onsite)
Duration: 1+ year (with possible extension)
Client: Samsung Semiconductor
Required Skills (must be clearly reflected in the profile):
Linux Kernel & Device Drivers
ARM / x86 Architecture
Low-Level Programming
PCIe or CXL
Job Overview
As a Senior Engineer in the Systems Software team, you will drive the software-hardware co-design for Samsung 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 Responsibilities
Memory 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 & Qualifications
Education: 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 Experience
Significant 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