Linux Device Driver Engineer
Posted
You will develop and maintain Linux device drivers for NPUs. You will design high-throughput data-transfer and DMA solutions, optimize memory-management subsystems, implement firmware communication interfaces, adopt modern kernel-development practices, and debug complex software and hardware issues.
Responsibilities
- Develop and maintain Linux device drivers for NPUs
- Design high-throughput, low-latency data-transfer and DMA solutions across PCIe subsystems
- Architect and optimize memory-management subsystems for host-device communication
- Investigate and adopt modern kernel-development paradigms, including safe memory abstractions
- Design communication interfaces with device firmware
- Debug system-level issues across software and hardware interfaces
Requirements
- Bachelor’s degree or higher in Computer Science, Electrical Engineering, Computer Engineering, or a related field
- At least 5 years of Linux kernel and device-driver development experience
- Knowledge of PCIe, DMA, network, storage, and DRM drivers
- Understanding of SR-IOV, PCIe virtualization, IOMMU/SMMU, and DMA
- Knowledge of kernel concurrency, locking, RCU, workqueues, and kthreads
- Low-level debugging experience with kernel logs, KASAN/ASAN, and coredumps
- Proficiency in C, C++, and Rust
- Knowledge of hardware-software interfaces and interrupt handling