×
Register Here to Apply for Jobs or Post Jobs. X

Kernel Driver Software Engineer

Job in San Francisco, San Francisco County, California, 94199, USA
Listing for: Etched
Full Time position
Listed on 2026-06-02
Job specializations:
  • Engineering
    Embedded Software Engineer, Hardware Engineer
Salary/Wage Range or Industry Benchmark: 100000 - 125000 USD Yearly USD 100000.00 125000.00 YEAR
Job Description & How to Apply Below

Requirements

  • Proficiency in C/C++
  • Strong understanding of kernel-mode driver development and debugging
  • Deep understanding of operating system internals (Linux preferred)
  • Experience with hardware/software interfacing and device drivers
  • Experience with memory management and synchronization in kernel environments
  • Strong understanding of PCIe and other hardware interfaces
  • Experience with device virtualization technologies, including SR-IOV and VFIO
  • Strong understanding of kernel memory mapping, page table configuration, and IOMMU
  • Familiarity with hardware-software co-design principles
  • Proven ability to analyze complex technical problems and provide effective solutions
  • Excellent communication and collaboration 1 skills
  • Experience with version control systems (e.g., Git)
  • Experience with debugging tools (e.g., gdb, kgdb)
  • (Desirable) Candidates with experience in developing and debugging kernel-mode drivers for GPU or other accelerator devices
  • (Desirable) Candidates with a strong understanding of hardware/software interactions
  • (Desirable) Candidates with experience in optimizing driver performance for demanding workloads
  • (Desirable) Candidates with experience in ML workloads
  • (Desirable) Candidates who have debugged complex hardware and software interactions, especially in virtualized environments
  • (Desirable) Candidates with experience in implementing and optimizing SR-IOV and VFIO
  • (Desirable) Candidates with in-depth knowledge of kernel memory mapping, page tables, and IOMMU
  • (Desirable) Candidates with experience in hardware-software co-design projects
  • (Desirable) Experience with GPU driver development
  • (Desirable) Experience with CUDA, OpenCL, or other GPU programming models
  • (Desirable) Experience with performance profiling and benchmarking tools (perf, VTune)
  • (Desirable) Knowledge of hardware virtualization techniques, including para-virtualization
  • (Desirable) Experience with CI/CD pipelines
  • (Desirable) Experience with Rust
  • (Desirable) Experience with ML frameworks like Tensorflow or Pytorch
  • (Desirable) Experience with data center orchestration technologies (Kubernetes, Docker)
What the job involves
  • Kernel-Mode Driver Development:
    Design, develop, and maintain kernel-mode drivers ensuring high reliability, informative debug, and optimal performance
  • Performance Optimization:
    Analyze and optimize driver performance for demanding AI workloads, focusing on minimizing latency and maximizing throughput
  • Hardware Integration and Co-Design:
    Collaborate closely with hardware engineers throughout the ASIC design process.
  • Virtualization Support:
    Implement driver support for device virtualization technologies, including SR-IOV, VFIO, and para-virtualization
  • Memory Management:
    Implement efficient memory management strategies considering kernel memory mapping, page tables configuration, NUMA awareness for device data caching, and IOMMU configuration
  • Security:
    Build kernel drivers fundamentally designed to support and maintain security across host processes, physical memory spaces, and device attestation
  • Debugging and Troubleshooting:
    Diagnose and resolve complex driver-related issues, using common kernel debugging tools and techniques (ftrace, dmesg, etc.) to identify and fix bugs
  • Synchronization and Concurrency:
    Design and implement synchronization mechanisms to handle concurrent access to multiple accelerators
  • System Validation and Testing:
    Develop and execute comprehensive test plans to validate driver functionality, stability, and performance in manufacturing and in general production environments
  • Collaboration and Troubleshooting:
    Collaborate with software and hardware teams to diagnose and resolve complex system-level issues
  • Develop and optimize kernel-mode drivers for new ML accelerators
  • Implement and optimize memory management, including kernel memory mapping and IOMMU configurations, for high-bandwidth data transfers
  • Debug and resolve complex driver-related issues impacting ML workload performance
  • Develop performance benchmarks and profiling tools to analyze driver performance
  • Integrate driver support for advanced features like hardware virtualization and security, including SR-IOV and VFIO
  • Optimizing PCIe communication between the host and PCIe devices, using advanced equipment like PCIe analyzers
  • Implement and debug power management features for PCIe devices
  • Integrating ML accelerators into containerized and virtualized environments
  • Implementing and optimizing para-virtualization techniques for PCIe devices
  • Configure and optimize page tables for efficient memory access from the ML accelerator
  • Participate in hardware-software co-design reviews across teams to optimize performance and power efficiency
#J-18808-Ljbffr
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary