Back to jobs

Senior Accelerated Computing Architect

NVIDIA
China, Shanghai
Full-time
AI tools:
CUDA
You apply on NVIDIA's own careers site

This role optimizes software and algorithms for NVIDIA GPUs across accelerated computing applications, including AI, scientific computing, and high-performance computing. You’ll collaborate with hardware, software, product, and research teams, and communicate findings through technical publications and presentations.

Full-time
6+ years
Master’s or PhD in Computer Science, Computer Engineering, o

Skills & Expertise

CUDA
OpenCL
C and C++
GPU programming
Parallel algorithms
Linear algebra
Numerical methods
MPI

Key Responsibilities

Analyze and optimize performance on current and next-generation NVIDIA GPUs.

Create and optimize parallel algorithms, data structures, and reference code.

Collaborate across teams to guide accelerated computing hardware and software direction.

Full Description

We are now looking for a Senior Accelerated Computing Architect!

NVIDIA is developing software and system architectures for accelerated high performance computing, scientific computing, machine learning, AI, datacenter, and automotive computing. This position offers you the opportunity to make a meaningful impact in a fast-moving, technology focused company.

What you'll be doing:

• Performing in-depth analysis and optimization to ensure the best possible performance on current and/or next-generation NVIDIA GPUs.

• 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.

What we need to see:

• 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.

NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most hard-working and dedicated people in the world working for us. Are you creative and autonomous? Do you love the challenge of pushing an architecture to its limits? If so, we want to hear from you.

Applications are handled on NVIDIA's site