Design, develop, and optimize scalable software solutions for embedded devices and systems using embedded Linux operating system
Develop, customize, and maintain Pre-loader, U-Boot bootloader, and Linux kernel modules to support new hardware platforms and features
Design and deliver high-quality Linux kernel drivers for diverse peripherals, ensuring robust hardware-software integration
Collaborate cross-functionally with hardware engineering, software QA, operations, and global development teams to align on technical strategy, troubleshoot complex issues, and drive project delivery
Perform board bring-up activities for newly designed hardware
Troubleshoot, analyze, and resolve technical problems as they arise
Create and maintain custom Ethernet drivers tailored to specific requirements
Prepare design documentation and functional specifications for new software modules
Requirements
Bachelor’s or Master’s degree in Computer Science, Electronics Engineering, or a related field
Minimum of 15 years of experience developing embedded platform software
Hands-on experience with Linux kernel internals and peripheral driver development (Ethernet, Flash, SPI, I²C, UART)
Expertise in U-Boot bootloader customization and Linux kernel porting across embedded platforms
Experience with board bring up on ARM based systems
Experience in IP protocols and networking software development
Skilled in Linux Ethernet device driver development
Knowledge of networking technologies including Firewall, Routing, IPv4/IPv6, and VLANs
Strong understanding of embedded software design on Linux-based systems
Deep knowledge of OS coding techniques such as processes, threads, interrupts, etc.
Proficient in C programming and shell scripts
Strong debugging skills using tools such as GDB, and Lauterbach.
Experience in Yocto framework
Tech Stack
Flash
Linux
Benefits
health benefits that begin day one
retirement savings plans
industry leading ESPP program with a 2 year look back feature