Job Openings
Embedded Developer - Senior (Linux Device drivers)
About the job Embedded Developer - Senior (Linux Device drivers)
Location: Bangalore
Years of Experience: 8+Years
Prerequisite skills: Embedded Developer(Linux Device drivers)
Job Description:
- Design, Develop, and Implement: Create and modify Linux kernel modules and device drivers for various peripherals like I2C, SPI, USB, and PCIe.
- System Integration: Perform system-level integration, board bring-up, and validation with hardware and software teams.
- Debugging and Profiling: Use advanced debugging tools (GDB, ftrace, JTAG) to resolve issues, coredump analysis, perform root cause analysis, and optimize performance.
- Hardware Understanding: Read and understand hardware datasheets, schematics, and specifications to develop drivers.
- Collaboration: Work with cross-functional teams, including hardware, software, and validation.
Required Skills & Qualifications
- Programming: Strong proficiency in C is a must with good understanding of Linux file system.
- Linux Kernel: Deep understanding of Linux kernel internals, architecture, module programming, interrupt handling, and DMA
- Device Drivers: Hands-on experience with a range of drivers (character, block, network, USB, PCIe).
- Debugging Tools: Expertise with debugging tools like GDB, serial debugging and crash dump analysis.
- Communication Protocols: Familiarity with common embedded communication protocols (I2C, SPI, UART).
- Problem-Solving: Excellent analytical and debugging skills with strong problem-solving abilities.
Preferred Skills & Qualifications
- Embedded Platforms: Experience with ARM/Intel architecture and platforms.
- Build Systems: Familiarity with build systems like Yocto or Buildroot.
- Firmware: Knowledge of firmware development, bootloader customization, and boot sequence optimization.
- Scripting: Experience with scripting languages like Python or Bash for automation.
- Specific Domains: Exposure to areas like RTOS Linux.