Summary
EnCharge AI develops advanced AI hardware and software systems for edge-to-cloud computing, centered on high-efficiency in-memory computing technology. The Device Driver Engineer will design, implement, optimize, and maintain high-performance Linux and Windows driver stacks for AI accelerator hardware, collaborating with hardware, firmware, and AI software teams.
Responsibilities
- Develop, optimize, and maintain Linux/Windows PCIe device drivers for AI accelerators
- Implement low-level hardware interactions, DMA, memory management, and interrupt handling
- Work on driver optimizations to reduce latency and improve throughput for AI workloads
- Debug and troubleshoot PCIe protocol, kernel panics, crashes, and performance bottlenecks
- Collaborate with hardware, firmware, and AI software teams to define driver interfaces
- Ensure compliance with PCIe standards (Gen4/Gen5), SR-IOV, BAR memory mapping, and IOMMU
- Support virtualization (VFIO, SR-IOV, DPUs) and containerized environments (Kubernetes, Docker, etc.)
- Develop tools for profiling, debugging, and monitoring driver performance
- Contribute to open-source kernel modules if applicable
Skills
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field
- 3+ years of experience in device driver development for Linux and/or Windows
- Strong experience with PCIe-based hardware, including BAR regions, DMA, interrupts, and MMIO
- Proficiency in C/C++ and kernel-mode programming (Linux Kernel, Windows WDDM/WDF/MCDM)
- Knowledge of low-level debugging tools (gdb, perf, ftrace, dmesg, PCIe analyzers)
- Understanding of multi-threading, synchronization, and memory management in kernel space
- Experience in hypervisor interactions, VFIO, and passthrough solutions
- Knowledge of secure boot, firmware updates, and trusted execution environments (TEE)
- Experience with AI-specific accelerators (e.g., GPUs, NPUs, TPUs) is a plus
- Familiarity with high-performance AI/ML workloads is a plus
Qualifications
Must Haves
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field
- 3+ years of experience in device driver development for Linux and/or Windows
- Strong experience with PCIe-based hardware, including BAR regions, DMA, interrupts, and MMIO
- Proficiency in C/C++ and kernel-mode programming (Linux Kernel, Windows WDDM/WDF/MCDM)
- Knowledge of low-level debugging tools (gdb, perf, ftrace, dmesg, PCIe analyzers)
- Understanding of multi-threading, synchronization, and memory management in kernel space
- Experience in hypervisor interactions, VFIO, and passthrough solutions
- Knowledge of secure boot, firmware updates, and trusted execution environments (TEE)
Nice to Haves
- Experience with AI-specific accelerators (e.g., GPUs, NPUs, TPUs) is a plus
- Familiarity with high-performance AI/ML workloads is a plus