Aurora is seeking a seasoned Staff Embedded Linux Developer to architect, design, and implement system-level software for our next-generation embedded platforms. The ideal candidate will lead complex debugging efforts, collaborate closely with hardware teams during board bring-up, and drive performance optimization across all system components.
Requirements
- Lead the design, development, customization, and maintenance of Board Support Packages (BSPs) for various hardware platforms using the Yocto Project build system.
- Configure, build, and optimize the Linux kernel, bootloaders (U-Boot), and root file systems for custom hardware, ensuring system stability and performance.
- Develop, port, and debug Linux device drivers for a wide range of hardware interfaces, including PCIe, DDR, Ethernet, I2C, SPI, and USB.
- Collaborate with hardware engineers during initial board bring-up, debugging issues at the register and schematic levels using tools such as JTAG, oscilloscopes, and logic analyzers.
- Implement and enhance functionalities related to the PCIe subsystem, including DMA, memory management, and interrupt handling.
- Work with BIOS/UEFI configurations and integrate them with the embedded Linux environment as required for specific platforms (e.g., x86 architectures).
- Optimize system performance, boot time, memory footprint, and power consumption for embedded devices.
- Develop and maintain robust CI/CD pipelines and automated testing workflows for the embedded software stack.
- Create Requirements and Design, conduct code reviews, mentor junior engineers, and develop unit test plans.
Benefits
- Annual bonus
- Equity compensation
- Benefits