Embedded / 3-6 Years

Linux Device Driver Engineer

Bengaluru

Job Summary

We are looking for a skilled Linux Device Driver (LDD) Engineer to join our embedded systems team. The ideal candidate should have strong experience in Linux kernel programming, device driver development, and hardware-software integration. You will be responsible for designing and implementing kernel-mode drivers and low-level software to interface with a variety of hardware components across custom Linux platforms.

Key Responsibilities:

  • Design, develop, and maintain Linux kernel modules and device drivers
  • Work with I2C, SPI, UART, GPIO, PCIe, USB, and other peripheral interfaces
  • Perform board bring-up and integrate new hardware platforms into Linux
  • Develop and configure Device Tree, platform drivers, and user-kernel interface
  • Debug kernel panics, hardware faults, and interface-level issues using tools like dmesg, kgdb, ftrace, perf, etc.
  • Optimize driver performance, power usage, and boot time
  • Collaborate closely with hardware, board design, and application teams
  • Contribute to Linux kernel upstreaming (optional based on role)
  • Maintain kernel logs, configuration, and build scripts (Makefiles, KConfig)
  • Participate in Linux OS upgrades, BSP customization, and security patching

Required Skills and Qualifications:

  • 3–6 years of hands-on experience in Linux kernel and device driver development
  • Strong knowledge of Embedded C, Linux system calls, memory management, and interrupt handling
  • Proficiency with Device Tree Source (DTS) and platform driver model
  • Familiarity with Yocto, Buildroot, or custom Linux build systems
  • Experience with debugging tools: gdb, strace, ftrace, kgdb, JTAG, logic analyzers
  • Comfortable working in cross-compilation and embedded toolchains
  • Solid understanding of hardware schematics, registers, and datasheets

Preferred Qualifications:

  • Exposure to real-time Linux (PREEMPT_RT) or hard real-time environments
  • Experience in power management, suspend/resume flows, and thermal management
  • Familiarity with U-Boot, bootloaders, and kernel bring-up
  • Experience with Yocto Project, OpenEmbedded, or Android kernel drivers
  • Contribution to open-source/Linux kernel communities is a plus

Education:

Bachelor’s or Master’s degree in Electronics, Electrical, Computer Engineering, or a related field
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

More information about our Privacy Policy