Senior Software Engineer - Python Numerical Computing Libraries

at Nvidia
USD 184,000-356,500 per year
SENIOR
✅ On-site

Tech Stack

AI API @ 4 Algorithms CUDA @ 6 Data Science @ 4 Debugging @ 4 Deep Learning @ 4 GPU @ 4 HPC JAX @ 3 Machine Learning @ 4 Pandas @ 4 Parallel Programming @ 7 Performance Analysis @ 7 Performance Optimization @ 4 Product Management @ 4 Profiling @ 4 PyTorch @ 4 Python @ 4 TensorFlow @ 4 scikit-learn @ 4

Details

We are looking for an experienced software professional to contribute to the design and development of accelerated and distributed implementations of Python APIs for numerical computing. Python has become the de facto programming language for practitioners in AI, data science, and high-performance computing through frameworks such as NumPy, SciPy, TensorFlow, and PyTorch. NVIDIA provides GPU-accelerated implementations of the fundamental components of these frameworks.

Join a dynamic team developing and optimizing GPU-accelerated and distributed implementations of Python numerical libraries. The work supports Python-based frameworks across scientific computing, data analytics, deep learning, and professional graphics, running on hardware ranging from supercomputers to the cloud.

Responsibilities

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

Requirements

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

Preferred Qualifications

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

Compensation and Benefits

The base salary range is USD 184,000–287,500 for Level 4 and USD 224,000–356,500 for Level 5. Base salary is determined based on location, experience, and the pay of employees in similar positions. The role is also eligible for equity and benefits.

Applications will be accepted at least until July 1, 2026. This posting is for an existing vacancy. NVIDIA uses AI tools in its recruiting processes. NVIDIA is committed to fostering an inclusive work environment and is an equal opportunity employer.

More jobs at Nvidia

Similar jobs