Senior System Software Engineer, OpenBMC

Posted 2hrs ago

Employment Information

Education
Salary
Experience
Job Type

Report this job

Job expired or something wrong with this job?

Job Description

Senior System Software Engineer responsible for implementing firmware architecture using OpenBMC for NVIDIA Server platforms. Collaborating with hardware teams and driving product life cycles with QA teams.

Responsibilities:

  • Responsible for implementing the Unified Firmware architecture and System management software across NVIDIA server platforms.
  • Leading end-to-end platform architecture, spanning hardware abstraction, firmware design, security, and scalable system management using OpenBMC.
  • Hands on work with bringing up of BMC firmware, performance analysis and coding various manageability features for NVIDIA’s Server platforms.
  • Developing and reviewing code, writing and reviewing design documents, reviewing QA test plan and working closely with all team members to achieve consensus for design and testability as per product requirements.
  • Designing and developing performance optimized active monitoring BMC solutions using DMTF Standards including MCTP, Redfish, SPDM and PLDM specifications.
  • Instrumenting code to ensure maximum code coverage, writing and automating unit tests for each implemented module and maintain detailed unit test case reports.
  • Providing software quality reports based on static analysis, code coverage, CPU load.
  • Working with security team to ensure developed code is in line with product security goals.
  • Working closely with hardware teams to influence hardware design and review HW architecture & schematics.
  • Generate API documentation from code using Swagger or similar tools.
  • Help generate content for user guides to pursue customer problems etc.
  • Drive product life cycles with QA teams to productize the module, and be responsible as a product owner.

Requirements:

  • Bachelor of Science Degree (or higher) or equivalent experience in Electrical Engineering or Computer Science with 10+ years of experience
  • OpenBMC Firmware development experience on X86 or ARM Platforms including BMC-BIOS communication, power/thermal management, firmware update, device monitoring, firmware security, etc.
  • System Management software development experience in Blade/Rack server platforms with exposure to standards IPMI, KCS, DMTF Standards(PLDM, MCTP, SPDM and Redfish) etc.
  • Domain expertise in BMC system-on-chip solution from one or more vendors like ASPEED, Nuvoton, Axiado etc.
  • Design and architecture of errors, stats & configuration appropriate to CPU, DIMM, SSDs, NICs, IB, BMC etc. for an enterprise readiness of NVIDIA Server platforms.
  • Deep understanding on REST architecture style especially JSON over HTTPs with OAuth
  • Excellent programming and scripting skills using C/C++, Bash, Python, Go etc. both for Linux user-space programs and system programs with thorough code reviewing skills.
  • Knowledge of Linux fundamentals, various Linux distributions and packages, Linux upgrade mechanisms, building and deploying Linux images.
  • Excellent written and oral communication skills, good work ethics, high sense of team-work, love to produce quality work and commitment to finish your tasks every single day.
  • Self-starter who loves to find creative solutions to challenging problems.

Benefits:

  • Health insurance
  • 401(k) matching
  • Flexible work hours
  • Paid time off
  • Remote work options