Senior Math Libraries Engineer - Sparsity in AI
About the role
We are looking for software engineers to contribute to the design and development of libraries and tools that simplify and accelerate computing for unstructured sparsity in deep learning (DL) and high-performance computing (HPC). Our team develops GPU-accelerated libraries and SDKs that power advancements in AI, data analytics, scientific simulations, and engineering applications, including large language models (LLMs), computer-aided engineering, quantum chemistry, autonomous vehicles, and computer vision.
In this role, you will collaborate with other developers to create solutions involving sparse tensor computations, domain-specific language (DSL) specifications for sparse storage formats, and on-demand code generation. Ideal candidates will have experience in accelerated computing and a passion for advancing the state-of-the-art in DL frameworks like PyTorch.
Responsibilities
- Design and develop a C++-based system to simplify and accelerate computing for unstructured sparsity in DL and HPC on NVIDIA GPUs
- Enable the system in languages and frameworks commonly used in DL, such as Python and PyTorch
- Evaluate and improve system performance on real-life applications
- Enhance library quality, performance, and maintainability by writing effective, well-tested code for production use
- Work closely with product management and internal/external partners to understand feature and performance requirements and contribute to technical roadmaps
Requirements
- BS, MS, or PhD in Computer Science, Applied Math, or a related field (or equivalent experience)
- 6+ years of experience developing, debugging, and optimizing high-performance software using C++ and parallel programming; experience with sparse linear algebra applications and technologies like CUDA, MPI, or OpenMP is ideal
- Experience with domain-specific language design and compiler optimizations, particularly sparse compilers (MLIR or TACO)
- Excellent C++, Python, and CUDA programming skills
- Strong collaboration, communication, and documentation habits; experience working in a globally distributed organization is a plus
Skills
- Strong understanding of sparse computations, especially in AI and HPC
- Good understanding of LLMs, deep learning methods, and frameworks
- Experience with low-level GPU performance optimization
- Understanding of numerical linear algebra methods, including direct and iterative solvers
- Experience with CI/CD systems, project management tools like JIRA, and advancing software development practices
Pay
Base salary ranges: $184,000–$287,500 USD for Level 4, and $224,000–$356,500 USD for Level 5. You will also be eligible for equity and benefits.