Firmware Infrastructure Engineer - GPU

NVIDIA NVIDIA · Semiconductors · Santa Clara, CA

Software engineer to join GPU Firmware team, focusing on designing and implementing automation, tools, and infrastructure for GPU firmware. Responsibilities include improving software processes, developing solutions for firmware, collaborating with various teams, and working with OS/PC vendors. Requires BS/MS degree, 4+ years experience, automation/CI/CD experience, cloud/distributed infrastructure background, database understanding, strong Python/C skills, and interpersonal skills. Nice-to-haves include experience with static/dynamic code analysis, BIOS/firmware development, SQL, and secure development techniques.

What you'd actually do

  1. Improve team software process and core infrastructure by enhancing and designing tooling, build systems, and regression farms
  2. Design, develop, test, debug, and optimize creative solutions for GPU firmware throughout the entire GPU lifecycle
  3. Work closely with hardware, software, infrastructure, and business teams to transform new infrastructure features from idea to reality
  4. Work with leading OS and PC vendors to improve and innovate on the startup experience
  5. Create, document, and automate workflows, processes, and tooling for internal-facing and external-facing team projects

Skills

Required

  • BS or MS degree in EE/CS/CE (or equivalent experience)
  • 4+ yrs experience
  • Automation experience with modern CI/CD tools
  • Sturdy technical background in cloud/distributed infrastructure
  • In depth understanding of database concepts and object modeling.
  • Strong grasp of software development lifecycle and coding practices
  • Strong Python, C, and scripting skills
  • Strong interpersonal skills
  • Easy to work with

Nice to have

  • Experience with static/dynamic code analysis, tooling, and build automation
  • Experience in developing device BIOS, firmware, or other low-level software
  • Familiarity with SQL language and one or more SQL database ecosystems
  • Experience with secure development techniques such as threat models, attack-trees, static/dynamic analysis, fuzzing, and negative testing

What the JD emphasized

  • creative secure solutions in heavily resource-constrained environments
  • Every. Byte. Counts.
  • tight requirements of security, boot-time, storage space