Lead System Software Engineer Platform - Server Embedded Firmware
at Nvidia
USD 224,000-431,200 per year
Tech Stack
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Bash @ 7
Debugging
GPU @ 4
Go @ 7
Linux @ 4
Performance Analysis
Python @ 7
Security @ 6
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
NVIDIA is looking to grow its company and form teams with the smartest people in the world.
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-optimized 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.
- Instrument code for maximum coverage, automate unit tests, maintain detailed test case reports, and provide software quality reports based on static analysis, code coverage, and microcontroller load.
- Collaborate with security and hardware teams to ensure code aligns with security goals and influence hardware design and architecture review. Develop performance-optimized active monitoring BMC solutions using DMTF Standards such as MCTP, Redfish, SPDM, and PLDM specifications.
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
You will also be eligible for equity and benefits.
More jobs at Nvidia
HPC Performance Engineer
Nvidia · United States
USD 152,000-241,500 per year
Senior System Software Engineer - Halos Core And Robotics Platform
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year
Senior System Software Engineer – Dynamo Tools
Nvidia · Santa Clara, United States
USD 152,000-287,500 per year
Senior Systems Software Engineer - Autonomous Vehicles
Nvidia · Santa Clara, United States
USD 152,000-287,500 per year
Senior Perception Engineer, Obstacle Foundation Models - Autonomous Vehicles
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year
Similar jobs
Senior Storage Production Engineer - DGX Cloud
Nvidia · Santa Clara, United States
USD 176,000-333,500 per year
Senior System Software Engineer Platform - OpenBMC
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year
Systems Generalist, GPT Infrastructure
OpenAI · San Francisco, United States, Seattle, United States
USD 293,000-445,000 per year
Senior Storage Production Engineer - DGX Cloud
Nvidia · Santa Clara, United States
USD 176,000-333,500 per year
Senior Software Engineer, DGX Cloud Production Engineering
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year
Senior Embedded Software Engineer
Nebius · United States
USD 179,500-269,200 per year
Senior Systems Software Engineer, Kubernetes Node Lifecycle - DGX Cloud
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year
Senior Software Engineer, DGX Cloud Production Engineering
Nvidia · Santa Clara, United States
USD 184,000-356,500 per year