Systems Software Engineer, Manageability Stack

NVIDIA NVIDIA · Semiconductors · Bangalore, India

Systems Software Engineer role focused on developing firmware for NVIDIA's Tegra chipsets, supporting platforms in automotive, datacenter, and other areas. Responsibilities include building tools within ARM's execution environment, bare-metal development, and collaborating with hardware architecture teams.

What you'd actually do

  1. As a member of the Tegra Core Firmware Team, you will build and develop tools and features within ARM's execution environment.
  2. Apply your strong communication skills to develop software, drive ideas, and analyze documents, ensuring flawless communication of our technology to both internal and external audiences.
  3. Participate in embedded bare-metal development for Tegra chips and connect these activities to server management protocols and standards.
  4. Collaborate closely with hardware architecture teams, finding opportunities to improve our architecture and make it more performant across generations.
  5. Develop partnerships with team members internally and externally, as collaboration is key in our engineering teams!

Skills

Required

  • 7+ years of experience
  • BS or MS degree in Computer Engineering, Computer Science, or a related field
  • Strong understanding of multicore hardware
  • operating systems build
  • concurrency
  • virtual memory
  • caching
  • interrupts
  • device drivers
  • real-time programming
  • Outstanding C and Python programming abilities

Nice to have

  • Knowledge of secure languages such as ADA/Sparc / RUST
  • Working experience with server management protocols such as IPMI, MCTP, and PLDM
  • Experience analyzing, debugging, and tuning the performance of complex system software stacks
  • Knowledge and understanding of OpenBMC
  • Knowledge of virtualization platforms (KVM, QEMU)
  • Deep understanding of system-level architecture, such as topologies, interconnects, memory hierarchy, interrupts, and memory-mapped IO