Expoint - all jobs in one place

The point where experts and best companies meet

Limitless High-tech career opportunities - Expoint

Nvidia Senior Debugger Software Engineer 
Poland 
79799511

24.06.2024

What you’ll be doing:

You will apply your knowledge of debuggers, binary instrumentation and computer architecture to enhance existing compute debugger tools and libraries, and extend them to new use cases. You should be comfortable working in C, C++ and assembly on a wide range of supported platforms: Windows, Linux, and embedded real time OSes. You should also be comfortable interacting with different user and kernel mode driver teams, and have an eagerness to learn about new compute and graphics drivers, GPU architectures and operating systems.

  • Develop the compute debugger tools for GPUs running on Windows, Linux, and embedded operating systems.

  • Extend the capabilities of the compute debug tools by developing new user interface elements to visualize debugger state

  • Work with tools, compiler, architecture and driver teams to design, implement and verify new features in the compute debugger and debugger API.

  • Work closely with peer organizations within NVIDIA to enhance the compute debugger to support OptiX / ray tracing use cases.

  • Effectively estimate and prioritize tasks in order to create realistic delivery schedules.

  • Write fast, effective, maintainable, reliable and well-documented code.

  • Provide peer reviews to other engineers, including feedback on performance, scalability and correctness.

  • Mentor junior engineers.

What we need to see:

  • BS or MS in Computer Science or equivalent experience

  • 5+ years of experience

  • Strong programming ability in C, C++, Assembly Language and scripting languages

  • Excellent knowledge of computer architecture of x86 or ARM CPUs

  • Strong problem solving and debugging skills

  • Familiar with low-level programming using assembly languages

  • Source control understanding (git, Perforce, etc.)

  • Ability to self-manage, communicate, and adapt in a fast paced, high demand environment with changing priorities and direction

  • Excellent communication skills, written and verbal

Ways to stand out from the crowd:

  • CUDA knowledge

  • OptiX / ray tracing knowledge

  • Qt User Interface development knowledge

  • Experience with build systems (CMake, Ninja, etc.)

  • ELF/DWARF knowledge