Staff Engineer, Software / Firmware Engineering
Core
Design and develop low-level firmware and platform software for Compute, Storage, and Custom ASIC solutions, including BMC management firmware and system drivers.
Role type
Staff Engineer, Firmware/Software
Builds
Firmware for Compute, Storage, and Custom ASIC platforms; BMC/OpenBMC-based management firmware; low-level drivers and platform services.
Domain
Semiconductor / Embedded Systems / Server Infrastructure
Required skills
C/C++ programming and debugging, OpenBMC firmware stack development, Yocto/OpenEmbedded build system, Linux-based embedded firmware development, D-Bus and systemd, IPMI/Redfish/MCTP/PLDM protocols, Driver development (USB, I2C, SPI, PCIe), Arm Cortex-M/A and RISC-V core knowledge, Real-time operating systems (RTOS) like Zephyr or Tock.
Preferred skills
OpenBMC upstream contributions or customization experience.
Technologies
OpenBMC, Yocto, OpenEmbedded, Linux, Zephyr, Tock, C, C++, ARM Cortex-M, ARM Cortex-A, RISC-V, USB, I2C, SPI, PCIe, D-Bus, systemd, IPMI, Redfish, MCTP, PLDM.
Responsibilities
Design and develop firmware and platform software for ASIC solutions; Develop and maintain BMC/OpenBMC-based management firmware; Partner with hardware teams to bring up and validate BMC and system platforms; Implement and optimize management controller firmware; Develop low-level drivers and platform services; Create test plans, automate validation, and contribute to CI/CD pipeline.
Seniority
Staff, hands-on IC
