
Senior Software Engineer
Trane Technologies4 months ago
Chennai, India or Bengaluru, IndiaSenior
Responsibilities
- Design, develop, and maintain Linux kernel-mode drivers for PCIe, Ethernet, USB 3.x, and MIPI/CSI interfaces.
- Lead initial hardware bring-up and debug low-level issues using JTAG, oscilloscopes, and logic analyzers.
- Customize and optimize Linux kernel modules, memory management, and interrupt handling for real-time performance.
- Debug complex system crashes across hardware, firmware, and kernel space using GDB, KGDB, and Ftrace.
- Profile and tune driver performance for power efficiency, memory footprint, and low-latency throughput.
Requirements
- Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, or a related technical field.
- 3+ years of professional experience in Linux kernel-level development and device-driver programming.
- Deep understanding of Linux kernel internals, including the scheduler, MMU, DMA frameworks, and IPC mechanisms.
- Ability to read datasheets and schematics, with hands-on experience with I2C, SPI, UART, and CAN protocols.
- Proficiency with Git and embedded Linux build systems such as the Yocto Project.
- Expert proficiency in C, Embedded C++, and Rust, including familiarity with STL-lite, atomics, and templates in resource-constrained environments.
Benefits
- Competitive compensation and comprehensive benefits and programs.
- On-site work five days per week.
- Equal opportunity employment is provided.