1. Develop and maintain the server BMC firmware.
2. Develop new features for BMC to enhance server management.
3. Collaborate with the hardware and BIOS teams to clarify questions and resolve issues.
4. Conduct code reviews, tests, and debugging to ensure the quality and reliability of the BMC firmware.
About the Role
- Seeking an MCU Firmware Engineer to design, develop, and debug firmware for microcontroller-based applications. Collaborate with internal teams, suppliers, and chipset vendors to deliver reliable embedded solutions.
Responsibilities
- Develop and debug firmware on the Cortex-M series for applications and peripheral drivers.
- Collaborate with cross-functional teams to resolve technical issues.
- Work with the Technical Project Leader to define software requirements, validate functionality, and testing procedures.
- Write engineering specifications and technical documents.
Requirements
- Bachelor’s degree in Electrical Engineering, Computer Science, or related field.
- Hands-on experience with ARM-based systems, RTOS, and embedded communication protocols (UART, SPI, I²C, CANbus, USB, GPIO).
- Experience with NXP, STM32, TI, Microchip, and Resense platform.
- Strong problem-solving skills, passion for innovation, and ability to think independently.
- Excellent cross-team collaboration ability.
1. Firmware Development based on BSP/SDK of Intel x86 and ARM64 platform.
2. Porting device drivers to target platform.
3. Product's functional and performance verification.
4. Experienced with programming some of the following system interfaces is a plus.
DDR3/4, PCIe, SATA, USB2/3, NOR/NAND Flash, eMMC, UART, I2C/SPI, SMI, XFI/SFI, RGMII/SGMII
5. Familiar with bootloader, Linux kernel and driver is a plus.