# Lead System Software Engineer Platform - Server Embedded Firmware

**Company**: NVIDIA
**Location**: Santa Clara
**Work arrangement**: onsite
**Experience**: senior
**Job type**: full-time
**Category**: Engineering
**Industry**: Technology

**Apply**: https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Senior-System-Software-Engineer-Platform---Server-Embedded-Firmware_JR2014509?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply
**Canonical**: https://yubhub.co/jobs/job_53e8ec1e-622

## Description

Are you ready to change the next generation of computing? Join us at the forefront of technological advancement.

As a Lead System Software Engineer Platform - Server Embedded Firmware, you will be responsible for designing and implementing Microcontroller Firmware for GPU Server platforms, focusing on but not limited to ARM M-class microcontrollers. You will develop C/C++ server manageability features in an RTOS embedded-optimised environment, perform hands-on work with microcontroller firmware bring-up, debugging, performance analysis, and coding manageability features for NVIDIA's Server platforms.

Key responsibilities:

- Design and implement Microcontroller Firmware for GPU Server platforms, focusing on but not limited to ARM M-class microcontrollers.

- Develop C/C++ server manageability features in an RTOS embedded-optimised environment.

- Perform hands-on work with microcontroller firmware bring-up, debugging, performance analysis, and coding manageability features for NVIDIA's Server platforms.

- Develop embedded management software to enable reporting and connectivity between server management devices.

- Implement register-based communication and DMTF standard messaging protocols for seamless interaction between BMC, GPUs, switches, memory, I/O expanders, sensors, and local microcontroller peripherals.

- Design a highly portable microcontroller framework that will be implemented across a wide variety of server management subsystems.

- Develop and review code, write and review design documents, and collaborate with team members to meet product requirements.

Requirements:

- A Bachelor of Science Degree (or higher) in Electrical Engineering or Computer Science or equivalent experience.

- 12+ years of experience in low-level microcontroller Firmware development on embedded microcontrollers using Zephyr or FreeRTOS.

- Demonstrated experience in developing BMC and/or microcontroller firmware for managing CPU, GPU, Network and Storage Devices.

- Experience with the following embedded interfaces - USB and I3C.

- Sound experience working with ARM Integrated Development Environments (IDE), debuggers, logic and protocol analyzers, and oscilloscopes.

- A deep understanding of interrupt schemes, multi-threading, DMA, memory management, and working in resource-restricted embedded environments.

- Strong embedded programming and scripting skills using C/C++, Bash, Python, Go, etc.

- Experience reviewing and using hardware schematics, reference manuals, and datasheets for embedded development.

- Expertise working with server manageability protocols such as MCTP, PLDM, SPDM, SMBUS, and OCP recovery.

- Solid understanding of Linux fundamentals, various distributions, packages, upgrade mechanisms, and image building/deployment.

Benefits:

- Eligible for equity and benefits.

Note: This posting is for an existing vacancy.

## Skills

### Required
- Microcontroller Firmware development
- Embedded Systems
- ARM M-class microcontrollers
- Zephyr or FreeRTOS
- BMC and/or microcontroller firmware
- Server manageability protocols
- MCTP, PLDM, SPDM, SMBUS, and OCP recovery
- Linux fundamentals
- Embedded programming and scripting
- C/C++, Bash, Python, Go, etc.

---

Source: [Apply at nvidia.wd5.myworkdayjobs.com](https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Senior-System-Software-Engineer-Platform---Server-Embedded-Firmware_JR2014509?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply)
