Senior System Software Engineer, Firmware – NVLink
On-siteBengaluru, Karnataka, India
Job Summary
Own the technical architecture and roadmap for NVLink and high-performance interconnect firmware across next-generation GPU platforms, driving seamless execution from design through final verification in C, C++, and Python. Architect correctness models, verification plans, and test cases to prove functionality across pre-silicon and post-silicon environments, while shaping silicon bring-up and program-level validation strategy with architecture and hardware leads. Define verification methodology, engineering standards, and automation strategies that scale, and advance AI-assisted debug tooling to accelerate root-cause resolution. Mentor engineers and raise the quality bar to de-risk cross-generation problems. This Bangalore-based role requires 10+ years of firmware experience and reports to the team responsible for the interconnect fabric powering global multi-GPU systems.
Required Qualifications
- BS or MS degree (or equivalent experience) in Electrical Engineering, Computer Science, or a related field
- 10+ years of experience in firmware or software development and verification
- Deep programming proficiency in Python, C, and C++, with strong command of object-oriented design
- Strong understanding of computer architecture, microprocessors, and microcontroller fundamentals
- Expert debugging and analytical skills that span the hardware/software boundary
- A track record of technical leadership — setting direction, mentoring engineers, and raising quality across a team
- Excellent collaboration and communication skills, with proven success in a multi-national, multi-time-zone environment spanning on-site and remote teams
- A highly motivated, creative problem-solver with a passion for deep-tech and a bias toward rigorous testing
- A versatile, self-motivated approach — equally at home in development, verification, and infrastructure
Desired Qualifications
- Depth in test automation and test-case design — building maintainable frameworks that cover edge cases and critical scenarios
- Familiarity with secure development techniques: threat modeling, static and dynamic code analysis, fuzzing, and negative testing
- Experience with multi-core, multi-process, and multi-threaded programming
- Exposure to high-performance computing systems, interconnects, or networking protocols and architectures
- Passion for unlocking the potential of yourself and those around you
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.