Description :
As an Embedded Linux Driver Engineer, you will be responsible for designing, developing, and maintaining low-level software, including device drivers and board support packages. You will work closely with hardware and firmware teams to ensure seamless integration of peripheral devices on embedded platforms.
Key Responsibilities :
- Develop and maintain Linux kernel modules and device drivers for embedded platforms.
- Work on Board Support Packages (BSP), including bootloader development and customization.
- Port and migrate Linux kernels to various hardware platforms and architectures.
- Interface with hardware through protocols like UART, I2C, SPI, I2S, GPIO, PCIe, MMC, USB, etc.
- Collaborate with cross-functional teams to define software requirements and resolve hardware / software integration issues.
- Debug and optimize system-level issues to improve performance, stability, and reliability.
- Provide detailed documentation of driver development and integration processes.
Required Skills & Qualifications :
Strong experience in System C programming on Linux-based platforms.5+ years of hands-on experience in Linux kernel and device driver development.Expertise in Linux internals, kernel debugging, and hardware-software integration.Proficient with bootloader development and BSP customization.In-depth experience with peripheral interfaces such as UART, I2C, SPI, I2S, GPIO, PCIe, MMC, USB.Solid understanding of processor architecture, especially i.e. MX or ARM-based platforms.Experience in kernel porting / migration across versions and platforms.Nice to Have :
Experience working with PowerPC architecture.Familiarity with Python scripting for automation or testing tasks.Exposure to embedded development tools (JTAG, oscilloscopes, logic analyzers, etc.)(ref : hirist.tech)