DevJobs

Senior Software Verification Engineer

Overview
Skills
  • C C
  • C++ C++
  • Python Python
  • ML ML
  • Networking Networking
  • TCP
  • O
  • Memory
  • Sockets
  • L3
  • L2
  • I
  • Synchronization
  • Threads
  • Operating Systems
  • Debugging tools
  • UDP
  • Computer Networking
  • Client-server architectures
  • Performance
  • Storage drivers
  • Retransmission
  • Verification frameworks
  • Transport-level reliability
  • AI
  • Performance-critical systems
  • O stacks
  • NICs
  • Low-level I
  • Hardware
  • Flow control
  • firmware interaction
  • DPUs
  • Distributed systems
  • Congestion handling
  • Automation frameworks
NVIDIA is looking for an exceptional Software Engineer to join our Networking Verification team. In this role, you will build tests, tools, and automation to validate advanced networking and transport features on NVIDIA Ethernet adapters and DPUs, working closely with software, firmware, and architecture teams to deliver highly reliable, high‑performance solutions for modern data centers.

What You’ll Be Doing

  • Design, implement, and maintain test and automation infrastructure in C/C++ and Python for validating complex networking and transport functionality.
  • Develop and execute functional, regression, stress, and performance tests for connection‑oriented networking flows, including loss, reordering, failover, and scale scenarios.
  • Work with design, driver, and firmware teams to define verification plans, review specifications, and identify corner cases and negative flows.
  • Investigate failures by analyzing logs, traces, and counters from host, NIC, and DPU to debug cross‑layer issues (application, driver, firmware, hardware, and network).
  • Take end‑to‑end ownership of features: from requirement and test design, through implementation and integration, to sign‑off for product releases.

What We Need To See

  • B.Sc. in Computer Science, Computer/Software Engineering, or equivalent.
  • 4+ years of hands‑on software development experience.
  • Strong programming skills in C/C++ and Python, with a focus on writing clean, maintainable, and testable code.
  • Solid understanding of operating systems and low‑level software (threads, synchronization, memory, I/O, performance) and good knowledge of computer networking fundamentals (L2/L3, TCP/UDP, sockets, client‑server architectures).
  • Proven ability to debug complex problems in large, multi‑component systems using logs, traces, and debugging tools.
  • Strong communication skills, ability to work in a collaborative, cross‑functional environment, and a high sense of ownership.

Ways To Stand Out From The Crowd

  • Ability to effectively leverage AI and machine learning (ML) technologies and tools to improve development, debugging, and verification efficiency.
  • Experience with networking or storage drivers and low‑level I/O stacks, including hands‑on work with NICs, DPUs, or other accelerators, and familiarity with hardware/firmware interaction.
  • Background building automation and verification frameworks for complex distributed or performance‑critical systems, including transport‑level reliability and congestion concepts (e.g., retransmission, flow control, congestion handling), and how to test them.

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. 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!

, , JR2015975

Nvidia