02 Oct
|
Capgemini Engineering
|
Karnataka
02 Oct
Capgemini Engineering
Karnataka
Job DescriptionLocation
NBangalore, India
nWork Mode
NWork From Office – 5 Daysa Week
NFace-to-Face (F2F) Interview is Mandatory
NJob Summary
nWe are looking for an experienced Linux Device Driver Development Engineer with strong expertise in embedded systems, Linux kernel internals, and hardware-software integration. The candidate will be responsible for developing, customizing, debugging, and maintaining Linux platform software and device drivers for custom hardware based on embedded SoCs. This role requires hands-on board bring-up, low-level debugging, and close collaboration with hardware, systems, and application teams in a fast-paced environment.
NKey Responsibilities
n
N
- Design, develop, customize, and maintain Linux device drivers and platform software for embedded SoC–based systems.
N
- Work on BSP and platform software development for custom hardware platforms.
N
- Perform board bring-up activities, including bootloader configuration and early kernel initialization.
N
- Develop and validate Bare-Metal and Linux drivers, performing hardware-software validation using lab equipment such as oscilloscopes, logic analyzers, and JTAG-based debuggers.
N
- Drive bootloader development/customization (U-Boot or equivalent), including power-on boot sequence and low-level initialization.
N
- Debug complex system-level issues across bootloader, kernel, drivers, and hardware layers.
N
- Understand and interpret board schematics, datasheets, and hardware reference manuals to support driver development and integration.
N
- Work on kernel upgrades, driver porting, upstreaming, and component integration.
N
- Develop and customize drivers for peripherals such as GPIO, SPI, I2C, UART, Sensors, NAND, NOR, eMMC, DDR, etc.
N
- Contribute to Linux kernel subsystems, including scheduler, memory management, IPC, DMA, IOMMU, interrupt handling, polling mechanisms, and NAPI.
N
- Develop and debug Linuxplatform drivers for components such as PCIe, Ethernet, USB, GPU, Display, and Multimedia subsystems.
N
- Handle system-level debugging, issue isolation, and root-cause analysis involving kernel crashes, performance bottlenecks, and hardware-related failures.
N
- Collaborate closely with cross-functional teams to ensure seamless hardware–software integration.
N
- Produce high-quality, maintainable, and well-documented code following best practices.
N
nRequired Skills & Qualifications
NCore Technical Skills
n
N
- Strong proficiency in Cprogramming for kernel and system-level development.
N
- In-depth knowledge of Linux kernel internals and device driver architecture.
N
- Hands-on experience with Linux Device Driver Development.
N
- Solid understanding ofARM and x86 processor architectures.
N
- Deep knowledge of multi-core architectures, NUMA, and memory hierarchies.
N
- Experience with concurrent programming,
threading APIs, and synchronization mechanisms.
N
- Strong understanding ofoperating system concepts (Linux and/or RTOS).
N
nEmbedded & Hardware Expertise
N
n
- Experience working with embedded SoCs and Microcontrollers.
N
- Hands-on board bring-upexperience with custom hardware.
N
- Strong debugging skillsusing JTAG/J-Link and other hardware debuggers.
N
- Ability to validate software using hardware test equipment.
N
nKernel & System Knowledge
N
n
- Experience with:
N
- Linux kernel modules
N
- Interrupt architecture and event handling
N
- DMA, IOMMU, IPC mechanisms
N
- PCIe subsystem and drivers
N
- Networking and Ethernetstack
N
- Familiarity with Yocto-based projects or Buildroot.
N
- Experience in kernel upgradation, driver porting, and upstreaming.
N
nDesired / Added Advantages
N
n
- Hands-on experience with OpenGL and OpenCL.
N
- Exposure to GPU, Multimedia, and Display driver development.
N
- Experience in system performance tuning and optimization.
N
- Familiarity with RTOS environments in addition to Linux.
N
nTools & Development Environment
N
n
- Debuggers and profiling tools
N
- Version control systemssuch as Git / GitHub
N
- Linux kernel debugging and tracing tools
N
nSoft Skills
n
N
- Strong problem-solving and analytical skills
N
- Excellent communicationand collaboration abilities
N
- Ability to work independently and in a fast-paced, team-oriented environment
N
- High attention to detail and commitment to code quality
N
📌 Linux Device Driver Development Engineer (Karnataka)
🏢 Capgemini Engineering
📍 Karnataka