job description
key responsibilities
- create and deploy openbmc firmware with an emphasis on arm architecture among
other things.
- practical experience configuring bmc firmware, analyzing performance, and
implementing different server manageability features for the company's server
platforms
- creating error, statistics, and configuration solutions for cpu, gpu, dimm, ssds,
nics, ib, psu, bmc, fpga, cpld, and other components to ensure that the
company's server platforms are corporate ready.
- creating and designing bmc solutions for performance-optimized active monitoring
by utilizing dmtf standards, such as mctp, redfish, spdm, and pldm instructions
- writing and automating unit tests for every implemented module, maintaining
thorough unit test case reports, and instrumenting code to guarantee optimal code
coverage
- producing software quality reports using cpu load, code coverage, and static
analysis.
- examining hardware architecture and schematics and influencing hardware design in
close collaboration with hardware teams.
key skills and experience required
- 5+ years’ experience with background in electronics engineering or computer
science, or a bachelor of science degree (or higher).
- proficient in developing firmware for x86 or arm platforms, encompassing features
such as bios communication, power and thermal management, firmware updates,
device monitoring, and firmware security.
- board bring-up proficiency with practical knowledge of device drivers, including spi,
pcie, smbus, mail-box, and i2c/i3c, in addition to device trees for linux kernel and
uboot.
- experience with oob or with-band system management, including exposure to ipmi,
kcs, dmtf standards (pldm, mctp, redfish, etc.), pmbus, nvme, etc.
- knowledge of rest architecture, particularly with regard to json via https and
oauth.
- proficient in programming and scripting for linux user-space and system programs,
utilizing c/c++, with extensive co