Share
What you’ll be doing:
You will apply knowledge of compute programming models and compute architecture to build tools that provide actionable feedback to compute developers. You should be comfortable working in existing driver code and application code as well as writing new shared libraries and targeted performance tests, and have an eagerness to learn about new compute and graphics drivers, GPU architectures and operating systems.
Develop the Compute Sanitizer (which is a suite of memory checker) tools for GPUs running on Linux, Windows, and embedded operating systems.
Work with tools, compiler, architecture and driver teams to design, implement and verify new features in the Compute Sanitizer stack.
Work closely with internal and external partners including other peer organizations within NVIDIA.
Effectively estimate and prioritize tasks in order to create a realistic delivery schedule.
Write fast, effective, maintainable, reliable and well-documented code.
Provide peer reviews to other engineers, including feedback on performance, scalability and correctness.
Document requirements and designs, and review documents with teams throughout NVIDIA.
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/OpenCL knowledge
Experience with code patching
ELF/DWARF knowledge
These jobs might be a good fit