Senior Accelerated Computing Architect
About the role
This position offers the opportunity to make a meaningful impact in a fast-moving, technology-focused company. The Senior Accelerated Computing Architect will perform in-depth analysis and optimization to ensure the best possible performance on current and/or next-generation NVIDIA GPUs.
Responsibilities
Creating and optimizing core parallel algorithms, data structures, and reference codes to provide the best possible solutions for NVIDIA GPUs.
Understanding and analyzing the interplay of hardware and software architectures on core algorithms, programming models, and applications.
Actively collaborating with the hardware design, software engineering, product, and research teams to guide the direction of accelerated computing.
Diving into accelerated computing applications to facilitate software-hardware co-design.
Writing up and presenting your work by writing white papers, conference publications, official blog posts, patent applications, etc. as appropriate.
Requirements
An MS or Ph.D. in Computer Science, Computer Engineering or Electrical Engineering, or equivalent experience
6+ years of relevant work experience
Strong mathematical fundamentals, including linear algebra and numerical methods
A passion for performance optimization
Hands-on experience with the massively parallel GPU programming model, e.g. CUDA or OpenCL
Familiarity with APIs for multi-node communication, like MPI or OpenSHMEM/NVSHMEM, is a plus
Strong knowledge of C and C++ with solid understanding of software design, programming techniques, and algorithms
Familiarity with threading APIs for multicore CPUs and Unix-style Inter-process Communication (IPC) APIs is a plus
Familiarity with Python is a plus
Good communication and organization skills, with a logical approach to problem solving, good time management, and task prioritization skills
Experience benchmarking, profiling characterizing workloads on GPU and CPU clusters
Qualifications
A strong background in computer science, computer engineering, or electrical engineering
Experience with GPU programming and optimization
Excellent analytical and problem-solving skills
Ability to work effectively in a team environment
Skills
Proficiency in C/C++, CUDA, and OpenCL
Experience with parallel programming and optimization techniques
Knowledge of GPU architecture and memory systems
Experience with multi-node communication frameworks
Strong communication and collaboration skills
Benefits
NVIDIA is widely considered to be one of the technology world's most desirable employers
Equity and benefits are provided
Pay
The base salary range is $184,000 - $287,500 for Level 4, and $224,000 - $356,500 for Level 5.
Schedule
The schedule is flexible and can accommodate remote work options.