Senior C/c++ Software Engineer

NVIDIA NVIDIA · Semiconductors · Kyiv, Ukraine +1 · Remote

Senior C/C++ Software Engineer for NVIDIA Networking Unit, focusing on NIC/DPU firmware design and implementation, new standards, and product launches from pre-silicon to full lifecycle. Requires strong C/C++ skills, embedded systems experience, and networking expertise.

What you'd actually do

  1. Design and implement new features in NIC/DPU firmware design and verification.
  2. Participate in implementing the new standards and protocols in data center management technologies.
  3. Launch new hardware, and make sure our new products are secure, reliable, and fast.
  4. Work with various teams inside NVIDIA and share technologies across many products.
  5. Work on the new features starting from the pre-silicon stage and during the entire product life stages.

Skills

Required

  • C/C++ software development
  • embedded systems
  • binary network protocols
  • Higher IT or Technical Education
  • English — Advanced Level
  • High ability to learn new things, do research, and analysis of tasks
  • Effective cross-team collaboration and communication
  • SCRUM-oriented
  • Ability to inspect and improve the code, processes, and architecture of the existing systems
  • deliver high-quality code
  • Strong background in designing, implementing, debugging and testing complex software

Nice to have

  • NVIDIA's networking solutions
  • in-depth understanding of networking management protocols
  • network troubleshooting
  • optimal solutions for complex, network-centric environments
  • past-paced, evolving environments with technologies
  • collaborating cross-functionally with other teams
  • partnering with architects to anticipate, explore, and define edge cases in specifications
  • future-proof and scalable solutions
  • test automation
  • test case design
  • design comprehensive and efficient test cases
  • coverage of edge cases and critical scenarios
  • developing and maintaining automated testing frameworks
  • validate functionality, performance, and reliability
  • streamlining the QA process
  • improving overall software quality
  • build systems
  • version control systems (Git, Gerrit)
  • Linux administration
  • shell scripting (Bash, Python)

What the JD emphasized

  • 5+ years of hands-on experience in C/C++ software development
  • Strong expertise in networking
  • R&D mindset
  • Proficient in test automation and test case design