Verified today
Senior Platform Software Engineer - Platform Architect
About the role
NVIDIA is seeking a Senior Platform Software Engineer - Platform Architect to define and implement OpenBMC-based management for accelerated computing systems that integrate host CPUs, BMCs, and coordinated top-of-rack Ethernet switching. The role extends the BMC into a secure management authority for both system and switch management while preserving clear separation between the BMC management plane and the switch data plane. Day-to-day work includes architecting OpenBMC D-Bus services, bmcweb/Redfish APIs, object models for switch inventory and L2 features, backend abstraction layers, and cross-team collaboration on board architecture and production test strategy. The position is based in Bengaluru, India, with a remote option available.
What you’ll do
- Architect and implement OpenBMC support for platforms where the BMC handles host system functions and a coordinated ToR Ethernet switch subsystem
- Define the end-to-end switch-management architecture across OpenBMC D-Bus services, bmcweb/Redfish APIs, persistent configuration, eventing, telemetry, security, and backend switch control interfaces
- Develop OpenBMC object models and services for switch inventory, switch ASICs, front-panel ports, internal ports, PHYs, optics, retimers, VLANs, LAGs, FDB entries, counters, sensors, and health state
- Implement L2 networking capabilities including port admin control, speed and FEC configuration, auto-negotiation, breakout, VLAN creation and membership, access/trunk mode, MAC learning, FDB managemen
- Build backend abstraction layers that can integrate with Linux switchdev/netlink, SAI/SONiC/SWSS-style components, DENT-style Linux networking components, or vendor switch ASIC SDKs
- Work closely with hardware, ASIC, security, firmware, QA, manufacturing, and cloud infrastructure networking teams to influence board architecture, schematics, manageability interfaces, and production
- Write and review design specifications, API documentation, code, unit tests, hardware-in-loop tests, integration tests, and QA plans required to productize the architecture
What you’ll bring
- Bachelor's degree or higher, or equivalent experience, in Computer Science, Electrical and Electronics Engineering, or a related field with 12+ years of relevant experience
- Strong OpenBMC firmware development experience on x86 or ARM-based server environments, including Yocto, systemd, D-Bus, phosphor services, bmcweb, Redfish, firmware update, device monitoring, and pla
- Hands-on experience with Ethernet switch architecture and L2 features such as VLANs, trunks, access ports, LAG/LACP, STP/RSTP, LLDP, FDB/MAC learning, storm control, ACLs, QoS, PHY management, and tra
- System management software experience with rack or blade server platforms, including IPMI, KCS, Redfish, PLDM, MCTP, SPDM, secure firmware update, attestation, and BMC-host communication
- Strong programming and debugging skills in C/C++ and Python, with familiarity in Bash, Go, or Rust; ability to develop reliable Linux user-space services and review low-level system code
- Excellent written and verbal communication skills, strong ownership, high engineering judgment, and a passion for solving hard multi-functional problems
Skills
Education
Bachelor's degree or higher, or equivalent experience, in Computer Science, Electrical and Electronics Engineering, or a related field