Key Responsibilities:
- Design, develop, and maintain embedded firmware in C/C++.
- Develop automated test scripts and tools using Python.
- Implement features based on customer needs and technical specifications aligned with industry protocols (NVMe, PCIe, I2C, DMTF).
- Work closely with system processors, PCIe components, peripherals, and resident operating systems.
- Perform debugging and validation using software debuggers, in-circuit emulators (ICE), protocol analyzers, and logic analyzers.
- Create and maintain detailed design documentation and collaborate effectively with internal teams and external stakeholders.
Required Qualifications:
- Education:Bachelor s degree in Electrical Engineering, Computer Engineering, or Computer Science.
- Experience:1-4 years in embedded firmware development using C/C++.
- Technical Skills:
- Solid understanding of embedded systems architecture and microprocessor-based design.
- Hands-on experience with NVMe, PCIe, I2C, and DMTF protocols.
- Familiarity with MCTP over PCIe/I2C and BMC out-of-band communication.
- Tools Debugging:
- Proficient with tools like protocol analyzers, logic analyzers, in-circuit emulators, ARM/Greenhills debug tools.
- Soft Skills:
- Excellent verbal and written communication skills.
- Ability to thrive in a globally distributed team across different time zones.
Preferred Qualifications:
- Experience with RTOS-based development.
- Additional proficiency in Python and low-level programming languages.
- Exposure to FPGA or ASIC development environments.
- Understanding of secure firmware practices (encryption, authentication).
- Knowledge of hardware-software co-design for scalable embedded solutions.
- Familiarity with virtualization concepts, including IOMMU and virtual machine environments.