Senior Linux Kernel Engineer
Dwarf Engineering is a Ukrainian product & engineering company shaping the future of DefenseTech.
We create game-changing tech solutions that ease the work and save the lives of the Defense Forces of Ukraine, giving them the advantage they need.
Our mission is to make advanced defense technologies accessible and to deliver them faster where they matter most.
We are seeking a highly skilled and experienced Linux Kernel Engineer to join our core engineering team. You will be responsible for the heart of our ARM-based embedded systems, focusing on kernel development, device driver implementation, and low-level hardware integration.
This is a critical, hands-on role for a technical expert who thrives on complex, low-level challenges. You will work at the intersection of hardware and software, bringing new products to life by debugging boot-time failures, optimizing performance, and ensuring our hardware is fully supported by a robust, custom-built Linux environment.
If it sounds like you:
You are a deeply technical engineer who is fluent in C and possesses a comprehensive understanding of Linux kernel internals. You are not just a software developer, you are comfortable reading schematics, using a logic analyzer, and debugging hardware-level issues. You excel at optimizing systems for performance and enjoy collaborating closely with hardware and firmware teams to bring new boards from concept to production.
Responsibilities:
- Design, implement, and maintain Linux kernel modules and device drivers for ARM-based embedded systems;
- Develop and debug device tree configurations and board support packages (BSPs);
- Analyze and optimize kernel performance, latency, and resource usage;
- Collaborate with hardware, firmware, and product teams to bring up new boards and peripherals;
- Investigate and resolve complex hardware interface issues, kernel panics, and boot-time failures;
- Contribute to internal kernel build, CI, and deployment workflows.
Requirements/Hard Skills:
- Experience with C programming, advanced use of pointers, structs, memory management, and low-level bit operations;
- Strong experience with kernel concurrency primitives (spinlocks, mutexes, atomics);
- Deep understanding of OS concepts including process scheduling, interrupt handling, paging, caching, and user/kernel mode transitions;
- Solid knowledge of core subsystems (Scheduler, Memory Management, VFS);
- Expertise in the full stack: bootloaders, kernel, and root filesystem;
- Proven experience developing and debugging character, block, or network drivers;
- Hands-on experience with driver mechanisms (IRQs, DMA, MMIO) and peripheral buses (I²C, SPI, UART);
- Experience with subsystems like GPIO, PWM, ADC, watchdog, and camera sensors;
- Expertise in authoring, compiling, and debugging Device Tree (DTS/DTB) configurations;
- Advanced skills using printk, dmesg, ftrace, perf, strace, bpftrace, and kgdb;
- Ability to use JTAG, OpenOCD, logic analyzers, and oscilloscopes to diagnose low-level issues.
Will be a plus:
- Familiarity with reading and understanding SoC reference manuals and hardware schematics;
- Previous embedded systems experience on bare-metal or RTOS platforms;
- Experience in the complete board bring-up process, from hardware verification to adapting Linux BSPs.
What we offer:
- Work for Ukraine's victory at Defense Tech company, where your work directly contributes to strengthening our country's defense capabilities and achieving victory;
- We guarantee full official employment from day one;
- Reservation of employees from day one, subject to relevant documents;
- Flexible schedule, you can begin your workday anytime up to 12:00 PM, finishing accordingly (8 working hours + 1 hour lunch) with 1 day of work from home per week;
- You will receive a full technical setup and height-adjustable desks;
- Our office is located in Kyiv (left bank).
Join us if you want your work to have a real impact!
Required languages
| English | B1 - Intermediate |