Linux Device Driver Engineer (AI)
ΠΡΡΡ & Π‘ΠΎΠΏΡΠΎΠ²ΠΎΠ΄
ΠΠ»Ρ ΠΌΡΡΡΠ° Ρ ΡΡΠΎΠΉ Π²Π°ΠΊΠ°Π½ΡΠΈΠ΅ΠΉ Π½ΡΠΆΠ΅Π½ Plus
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²Π°ΠΊΠ°Π½ΡΠΈΠΈ
TL;DR
Linux Device Driver Engineer (NPU): Developing and maintaining Linux device drivers for NPUs to support high-performance AI computation with an accent on PCIe subsystems, DMA operations, and memory management. Focus on optimizing data transfer latency, implementing safe memory abstractions using Rust-for-Linux, and debugging complex system-level hardware-software interfaces.
Location: Onsite in Seongnam, South Korea
Company
AI chip startup specializing in the development of high-performance NPUs.
What you will do
- Develop and maintain Linux device drivers for NPUs to enable high-performance AI computation.
- Design high-throughput, low-latency data transfer solutions and complex DMA operations over PCIe subsystems.
- Architect and optimize memory management subsystems to ensure stability and zero-overhead host-device communication.
- Investigate and adopt modern kernel paradigms, including Rust-for-Linux, to eliminate memory reference vulnerabilities.
- Design and implement communication interfaces with device firmware for seamless hardware integration.
- Support and debug complex system-level issues across the software stack and hardware interfaces.
Requirements
- Bachelorβs or higher degree in Computer Science, Electrical Engineering, or related fields.
- Minimum of 5 years of experience in general Linux kernel and device driver development (PCIe, DMA, Network, Storage, DRM).
- Deep understanding of SR-IOV, PCIe device virtualization, IOMMU/SMMU, and DMA (dma-mapping, dma-buf, scatter-gather).
- Strong command of kernel concurrency (locking, RCU, workqueues) and ability to debug deadlocks and use-after-free.
- Proficiency in C, C++, and Rust.
- Proven experience in low-level debugging using kernel logs, KASAN/ASAN, and coredumps.
Nice to have
- Hands-on experience with Rust for Linux, specifically zerocopy or safe abstractions for device drivers.
- Previous experience in GPU, NPU, or other complex accelerator driver development (DRM subsystem).
- Understanding of device memory communication protocols and zero-copy data movement between user-space and kernel/hardware.
- Over 5 years of experience in performance tuning for large-scale systems.
Hiring process
- Document screening.
- Online interview, including a coding test.
- On-site interview, including a practical assignment.
- Compensation negotiation and final offer.
ΠΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ: Π΅ΡΠ»ΠΈ ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΡΠΈΡ Π²ΠΎΠΉΡΠΈ Π² ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ iCloud/Google, ΠΏΡΠΈΡΠ»Π°ΡΡ ΠΊΠΎΠ΄/ΠΏΠ°ΡΠΎΠ»Ρ, Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠ΄/ΠΠ, Π½Π΅ Π΄Π΅Π»Π°ΠΉΡΠ΅ ΡΡΠΎΠ³ΠΎ - ΡΡΠΎ ΠΌΠΎΡΠ΅Π½Π½ΠΈΠΊΠΈ. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΆΠΌΠΈΡΠ΅ "ΠΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡΡΡ" ΠΈΠ»ΠΈ ΠΏΠΈΡΠΈΡΠ΅ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ Π² Π³Π°ΠΉΠ΄Π΅ β