Senior System Software Engineer

NVIDIA

NVIDIA

Software Engineering
Multiple locations
Posted on Wednesday, July 3, 2024

Do you enjoy hacking and tinkering at the lowest levels of software? Are you capable of crafting and implementing creative secure 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 an outstanding software engineer to fill an exciting, 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 working through 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 set of minds in the business. Your goal will be to shape the future of GPU technologies doing exactly what you enjoy: solving puzzles. If this sounds exciting 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 creative solutions for GPU firmware throughout the entire GPU lifecycle

  • Work closely with hardware, software, infrastructure, and business teams to transform new firmware features from idea to reality

  • Work with leading OS and PC vendors to improve and innovate on the boot experience

  • Improve team software process and core infrastructure by enhancing build systems and regression farms

What we need to see:

  • BE or MTech degree in EE/CS/CE (or equivalent experience)

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

  • Familiarity with industry standards and specifications such as SPI, I2C, PCIe, UEFI and PLDM

  • Strong C skills

  • Good knowledge on operating systems and computer architecture concepts

  • Even stronger interpersonal skills

  • Sense of humor heavily encouraged, but not required

  • Deep understanding of software process

  • 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/RISCV/ARM assembly and knowledge of the PC/PCIe/UEFI architectures

  • A background with display technologies such as DP, HDMI, and VGA/VESA specs

  • EEPROM/Flash and storage device programming experience

  • Experience with secure development techniques such as threat models, attack-trees, static/dynamic analysis, fuzzing, and negative testing

  • Passion for your work

With competitive salaries and a generous benefits package, we are widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us and, due to unprecedented growth, our exclusive engineering teams are rapidly growing. If you're a creative and autonomous engineer with a real passion for technology, we want to hear from you.