Senior Software Verification Engineer

NVIDIA NVIDIA · Semiconductors · Yokneam, Israel +1

Senior Software Verification Engineer at NVIDIA focusing on testing advanced networking and transport features on Ethernet adapters and DPUs. The role involves designing, implementing, and maintaining test infrastructure, developing and executing various test types, debugging cross-layer issues, and taking end-to-end ownership of features. Requires strong C/C++ and Python skills, understanding of OS and networking, and debugging complex systems.

What you'd actually do

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

Skills

Required

  • 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
  • Solid understanding of operating systems and low‑level software (threads, synchronization, memory, I/O, performance)
  • 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
  • High sense of ownership

Nice to have

  • 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
  • Hands-on work with NICs, DPUs, or other accelerators
  • Familiarity with hardware/firmware interaction
  • Background building automation and verification frameworks for complex distributed or performance‑critical systems
  • Experience with transport‑level reliability and congestion concepts (e.g., retransmission, flow control, congestion handling), and how to test them

What the JD emphasized

  • 4+ years of hands‑on software development experience
  • Strong programming skills in C/C++ and Python
  • Solid understanding of operating systems and low‑level software
  • good knowledge of computer networking fundamentals
  • Proven ability to debug complex problems in large, multi‑component systems