Senior System Software Engineer, GPU Firmware

NVIDIA

NVIDIA

Software Engineering
Multiple locations
Posted 6+ months ago

Do you enjoy hacking and tinkering at the lowest levels of software? Are you capable of designing and implementing clever firmware solutions in heavily resource-constrained environments? If so, you’re primed to help develop the boot software that powers the world’s best GPUs. We are searching for a top-notch software engineer to fill a challenging, yet fun role on our GPU Firmware team. You will be joining a team whose primary mission is solving the intricate enigma of securing and innovating the boot process for our GPUs, while dealing with the formidable constraints of boot-time and storage space. Every. Byte. Counts.

This is your chance to create waves in the industry while directly working with and alongside some of the most top-valued diverse minds in the GPU business. Your goal will be to shape the future of GPU technologies doing exactly what you enjoy: solving puzzles. If this sounds interesting and you’re up for the task, we’d certainly like to hear from you!

What you’ll be doing:

  • Design, develop, test, debug, and optimize GPU firmware throughout the entire GPU lifecycle.

  • Design and implement creative solutions for boot software.

  • Collaborate with hardware, software, and business teams to transform new firmware features from idea to reality.

  • Interact with leading OS and PC vendors to improve and innovate on the startup experience.

  • Improve team software process and core infrastructure via projects dealing with build systems and regression farms.

  • Continuously evaluate and improve security for firmware that functions as a root of trust for flash and boot security.

  • Facilitate security requirements for GPU products by driving compliance with industry standards such as NIST, Open Compute Project, etc.

  • Align with customers and partners on security requirements and features.

  • Work with hardware teams to improve NVIDIA’s GPU hardware security.

What we need to see:

  • BS or MS degree or equivalent experience in EE/CS/CE.

  • 4+ years’ experience in developing device BIOS, firmware, or other low-level software.

  • Strong C skills.

  • Even stronger communication skills.

  • Sense of humor heavily encouraged, but not required.

  • Deep understanding of software process.

  • Secure software fundamentals including cryptography, authentication/attestation, chains of trust, and understanding of common SW security vulnerabilities.

  • Easy to work with, as you’ll constantly work closely with both hardware designers and other software engineers to design, develop, and debug functional (and non-functional!) aspects of GPU subsystems.

Ways to stand out from the crowd:

  • Experience in x86 assembly and in-depth knowledge of the PC architecture.

  • Expertise with display technologies such as DP, HDMI, and VGA/VESA specs.

  • Proficient with PCI/PCIe architecture.

  • Experience working on protocols like MCTP, PLDM, SPDM, etc

  • Good knowledge on developing for UEFI environments.

We are widely considered to be one of the technology world’s most desirable employers, and as a result have some of the most brilliant and talented people in the world working for us. If you're clever, creative, and driven, we'd love to have you join the team.