
Senior System Software Engineer, Platform – Server Embedded Firmware
Posted 8 hours ago

Posted 8 hours ago
This is a fully remote position, open to applicants in California.
• Create and implement firmware for microcontrollers on GPU server platforms, particularly ARM M-class microcontrollers.
• Develop manageability features in C/C++ for servers within a real-time operating system optimized for embedded environments.
• Conduct firmware bring-up, debugging, performance analysis, and coding related to manageability features for NVIDIA server platforms.
• Create embedded management software that facilitates reporting and connectivity among server management devices.
• Implement communication protocols based on registers and DMTF standards among BMCs, GPUs, switches, memory, I/O expanders, sensors, and microcontroller peripherals.
• Design a versatile microcontroller framework for server management subsystems.
• Develop and evaluate code along with design documentation; collaborate with team members to fulfill product specifications.
• Instrument code for coverage, automate unit testing, maintain test case documentation, and provide software quality assessments.
• Work alongside security and hardware teams to achieve security objectives, and participate in hardware design and architecture evaluations.
• Develop performance-optimized active-monitoring BMC solutions utilizing MCTP, Redfish, SPDM, and PLDM.
• A Bachelor of Science Degree (or higher) in Electrical Engineering, Computer Science, or an equivalent field of experience.
• Over 5 years of experience in low-level firmware development for embedded microcontrollers using Zephyr or FreeRTOS.
• Proven experience in creating BMC and/or microcontroller firmware for managing CPU, GPU, Network, and Storage Devices.
• Familiarity with USB and I3C embedded interfaces.
• Proficiency with ARM Integrated Development Environments (IDE), debuggers, logic and protocol analyzers, and oscilloscopes.
• Comprehensive understanding of interrupt schemes, multi-threading, DMA, memory management, and working in resource-constrained embedded environments.
• Strong programming and scripting abilities in embedded languages such as C/C++, Bash, Python, Go, etc.
• Experience in reviewing and utilizing hardware schematics, reference manuals, and datasheets for embedded development.
• Expertise with MCTP, PLDM, SPDM, SMBUS, and OCP recovery methodologies.
• Solid grounding in Linux fundamentals, distributions, package management, upgrade processes, and image building/deployment.
• Equity
• Comprehensive benefits package
• Equal opportunity employer
• Supportive and inclusive work environment
Lease a Bike | Deutschland
Ping Identity
CenExel
RTX
Get handpicked remote jobs straight to your inbox weekly.