Job Information
Nvidia Senior System Software Engineer in Bengaluru, India
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.