Position: Embedded Software Engineer (Device Driver)
Experience: 3 to 10 Years
Location: Bangalore
Key Responsibilities
- Design, develop, integrate, and debug Linux device drivers for embedded SoC platforms.
- Develop and maintain drivers for I2C, SPI, eMMC, USB, PCIe, Ethernet, Display, Camera, and Multimedia interfaces.
- Analyze and resolve Linux Kernel, device driver, hardware, and system-level issues.
- Support BSP development, board bring-up, and platform integration.
- Work with U-Boot, bootloaders, Linux Kernel, and system boot flows.
- Read and analyze board schematics and hardware specifications.
- Debug hardware/software issues using JTAG, logic analyzers, signal analyzers, and other debugging tools.
- Develop and debug software on ARM and/or RISC-V based platforms.
- Participate in code reviews, documentation, optimization, and software quality activities.
- Contribute to Linux Kernel upstreaming and open-source development where applicable.
Must-Have Technical Skills
- Excellent programming skills in C.
- Strong hands-on experience in Linux Device Driver Development.
- Deep knowledge of Linux Kernel internals and Kernel architecture.
- Experience with Embedded Linux platforms.
- Experience in BSP development and board bring-up.
- Knowledge of ARM and/or RISC-V processor architectures.
- Experience with U-Boot and bootloader.
- Ability to read and understand board schematics.
- Experience with JTAG and hardware debugging tools.