Santa Clara, CA, United States of America
33 days ago
Senior Software Engineer - CUDA Python

NVIDIA’s invention of the GPU in 1999 sparked the growth of the PC gaming market, redefined modern computer graphics, and revolutionized parallel computing. More recently, GPU deep learning ignited modern AI — the next era of computing — with the GPU acting as the brain of computers, robots, and self-driving cars that can perceive and understand the world. We're looking to grow our company, and form teams with the most inquisitive people in the world. Join us at the forefront of technological advancement.

We are looking for experienced software professionals to lead/extend our work on bringing delightful developer and user experience to the Python ecosystem. Our goal is to grow NVIDIA’s accelerated Python offerings to a mature product and make Python one of the first-class citizens for programming NVIDIA CUDA GPUs. You will be a crucial member of a team that is working to bring together the power of GPU acceleration and the expressibility and programmability of Python, by developing foundational software that supports many key products spanning the gamut of high performance computing, scientific computing, data analytics, deep learning, and professional graphics running on hardware ranging from gamer laptops to supercomputers to the cloud.

What You'll Be Doing

As a member of our team, you will use your design abilities, coding expertise, creativity, and community engagement to develop and enhance the functionality and performance of NVIDIA GPUs such that the current and future generations of Python users can enjoy the programmability and take full advantage of the NVIDIA CUDA platform, including both NVIDIA hardware and software. Specifically, you will be working to:

Architect, prioritize, and develop new features in CUDA Python

Analyze, identify, and improve the UX and performance of CUDA software in Python

Write effective, maintainable, and well-tested code for production use

Bridge the language gap between existing CUDA C/C++ solutions and Python

Understand and address unique challenges in developing and deploying Python GPU solutions

Identify key open source players in the Python/PyData ecosystem, and engage with them to develop and drive necessary protocols and standards for the NVIDIA CUDA platform

Evangelize CUDA programming in Python to encourage and empower adoption of the NVIDIA CUDA platform

What We Need To See

BS, MS or PhD degree in Computer Science, Electrical Engineering or related field (or equivalent experience)

5+ years of relevant industry experience or equivalent academic experience after BS

Strong Python programming and deployment skills with track record of driving formulation and/or adoption of Python community standards

Fluent C/C++ and CUDA programming skills

Background in AI, high performance computing or performance critical applications

Track record of developing/maintaining Python projects, and/or engaging with Python users on UX or performance improvements

Experience in designing, developing, tuning, navigating, and/or maintaining a large, complex, multi-language software stack (between C/C++/CUDA and Python)

Good written communication, collaboration, and presentation skills with ability of operating across team boundaries

Experience in distributed programming in C/C++/Python using MPI, Dask, Legate, or other distributed programming models/frameworks

Knowledge of generating Python bindings for mid- to large- size C/C++ codebases

Ways To Stand Out From The Crowd

Deep understanding in the CUDA programming model and language features

Familiarity with Python ecosystem, language idioms, and pioneering solutions

Dexterity with compilers, static/dynamic analysis techniques, and/or dynamic code generation/transpilation/compilation

Experience in using or developing the LLVM/Clang compiler infrastructure

Experience in memory management of a multi-language project or development of domain specific libraries/languages for AI, Data Analytics or Scientific Computing

With competitive salaries and a generous benefits package, we are widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us and, due to unprecedented growth, our exclusive engineering teams are rapidly growing. If you're a creative and autonomous engineer with a real passion for technology, we want to hear from you!

The base salary range is 180,000 USD - 339,250 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.

You will also be eligible for equity and benefits. NVIDIA accepts applications on an ongoing basis.

NVIDIA is committed to fostering a diverse work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status or any other characteristic protected by law.

Confirm your E-mail: Send Email