Senior Software Engineer - Python Numerical Computing Libraries

NVIDIA Corporation
Santa Clara, CA, United States
3 days ago
Apply on nvidia.wd5.myworkdayjobs.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
6 years minimum
Compensation
$184,000.0 - $287,500.0
Working hours
Regular working hours

Tech stack

Application Programming Interfaces (APIs) C++ (Programming Language) Profiling Nvidia CUDA Computer Programming Software Debugging Distributed Systems General-Purpose Computing on Graphics Processing Units Python (Programming Language) Machine Learning NumPy Performance Tuning
+12 more
Tensorflow Scientific Computating SciPy Supercomputing Pytorch Deep Learning Parallel Computation Numerical Computing Pandas Information Technology Data Analytics Api Design

Job description

Join our dynamic team to help develop and optimize GPU-accelerated and distributed implementations of Python numerical libraries, supporting Python-based frameworks in various ecosystems. This developer will be a crucial member of a team that is working to unlock the power of distributed GPU computing for domains such as scientific computing, data analytics, deep learning, and professional graphics, running on hardware ranging from supercomputers to the cloud!

What you will be doing:

  • Work closely with product management and internal or external partners, to understand use cases and requirements, and contribute to the technical roadmaps of libraries
  • Architect, prioritize, and develop accelerated and distributed implementations of numerical algorithms
  • Design future-proof Python APIs for accelerated numerical/scientific computing libraries
  • Analyze and improve the performance of developed APIs on various CPU and GPU architectures, especially as a part of customer-critical end-to-end workflows
  • Prototype integrations of developed APIs into targeted frameworks
  • Write effective, maintainable, and well-tested code for production use
  • Contribute to the development of runtime systems that underlay the foundation of multi-GPU computing at NVIDIA

Requirements

  • BS, MS or PhD degree in Computer Science, Applied Math, Electrical Engineering or related field (or equivalent experience)
  • 6+ years of relevant industry experience or equivalent academic experience after BS
  • Excellent Python, C++ and CUDA programming skills
  • Strong understanding of fundamental numerical methods, dense and sparse array computing
  • Deep familiarity with Python numerical computing libraries (e.g. NumPy, SciPy), including accelerated implementations (e.g. CuPy, Jax.NumPy, NumS, cuNumeric)
  • Experience developing and publishing Python libraries, following standard methodologies for pythonic API design
  • Strong background with parallel programming and performance analysis

Ways to stand out from the crowd:

  • Experience using/contributing to Python libraries for data science (e.g. Pandas), machine learning (e.g. scikit-learn) and deep learning (e.g. TensorFlow, PyTorch)
  • Experience with low-level GPU performance optimization
  • Experience building, debugging, profiling and optimizing distributed applications, on supercomputers or the cloud
  • Background with tasking or asynchronous runtimes
  • Background on compiler optimization techniques, and domain-specific language design

Benefits & conditions

Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. The base salary range is 184,000 USD - 287,500 USD for Level 4, and 224,000 USD - 356,500 USD for Level 5.

About the company

We are looking for an experienced software professional to contribute to design and development of accelerated and distributed implementations of Python APIs for numerical computing. In the last decade, Python has become the de-facto programming language for practitioners in AI, data science and HPC, through popular frameworks such as NumPy, SciPy, TensorFlow and PyTorch. These frameworks provide an efficient high-level programming interface, allowing their users to focus on their application while providing highly optimized implementations. NVIDIA has been at the forefront of providing GPU-accelerated implementations of the fundamental components of these frameworks.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on nvidia.wd5.myworkdayjobs.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

4:54 min

Development history of scientific computation libraries and PyViz tools

Radovan Kavický · LIVE

1:37 min

Accelerating compute with focused developer tools

Julia Koch Julia Koch +1 · World Congress 2026 Europe

2:34 min

Maximizing execution memory effectively via python numpy broadcasting

Jodie Burchell · LIVE

2:03 min

Accelerating pandas dataframes using cudf module plugins

Ankit Patel Ankit Patel · World Congress 2024

1:25 min

Replacing NumPy with cuPy for straightforward GPU acceleration

Paul Graham Paul Graham · World Congress 2025

3:33 min

Refactoring data science workflows using Rapids QDF and Pandas

Paul Graham Paul Graham · LIVE

Videos

See all

Related articles

See all