Job Summary
We are looking for an experienced Embedded Software Engineer with strong expertise in C programming, RTOS-based firmware development, and low-level driver development. The ideal candidate will have hands-on experience with PCIe and NVMe (Link Layer), board bring-up using Zephyr RTOS, and developing high-performance embedded software for next-generation hardware platforms.
Key Responsibilities
-
Design, develop, debug, and optimize embedded firmware using C programming.
-
Develop and maintain RTOS-based applications and platform software.
-
Design and implement low-level device drivers for embedded hardware (excluding UEFI development).
-
Work on PCIe and NVMe protocol implementation with a focus on the Link Layer.
-
Perform board bring-up activities using Zephyr RTOS.
-
Debug hardware/software integration issues using JTAG, oscilloscopes, logic analyzers, and protocol analyzers.
-
Collaborate with hardware, validation, and system engineering teams during product development.
-
Analyze system performance, identify bottlenecks, and optimize firmware.
-
Create technical documentation, design specifications, and test plans.
-
Participate in code reviews and ensure adherence to coding standards and best practices.
Required Skills
-
Strong programming expertise in C.
-
Solid experience with RTOS development.
-
Hands-on experience in low-level driver development (excluding UEFI).
-
Good understanding of embedded system architecture and hardware interfaces.
-
Experience with PCIe and NVMe, specifically the Link Layer.
-
Hands-on experience with Zephyr RTOS board bring-up.
-
Strong debugging and troubleshooting skills in embedded environments.
-
Familiarity with version control systems such as Git.
Preferred Qualifications
-
Bachelor's or Master's degree in Computer Science, Electronics, Electrical Engineering, or a related field.
-
Experience with ARM-based embedded platforms or other microcontroller/SoC architectures.
-
Knowledge of bootloaders, memory management, interrupt handling, and DMA.
-
Experience with embedded development tools and debugging utilities.
-
Familiarity with software development lifecycle and Agile methodologies.
Experience