Senior Math Libraries Engineer - Dense Linear Algebra
About the role
We are looking for software engineers to join our development efforts in the area of dense linear algebra kernels for high-performance libraries such as cuSOLVER.
Responsibilities
- Designing, implementing and optimizing scalable high-performance numerical dense linear algebra software on GPUs
- Providing technical leadership and guidance to library engineers, QA engineers, and interns working with you on projects
- Working closely with product management and other internal and external partners to understand feature and performance requirements and contribute to the technical roadmaps of libraries
- Finding and realizing opportunities to improve library quality, performance and maintainability through re-architecting and establishing innovative software development practices
Requirements
- PhD or MSc degree in Computational Science and Engineering, Computer Science, Applied Mathematics, or related science or engineering field (or equivalent experience)
- 5+ years of overall experience in developing, debugging and optimizing high-performance numerical linear algebra software using C++ and parallel programming; ideally using CUDA, MPI, OpenMP, OpenACC, pthreads
- Strong fundamentals in numerical methods such as computational linear algebra, linear system solvers, and methods for eigenvalue, singular value, and other decompositions
- Experience developing dense linear algebra libraries such as BLAS, LAPACK; and their parallel counterparts like PBLAS and SCALAPACK
- Strong collaboration, communication, and documentation habits
Qualifications
- Good knowledge of CPU and/or GPU hardware architecture
- Experience with adopting and advancing software development practices such as CI/CD systems and project management tools such as JIRA
- Experience with working in a globally distributed organization
- Strong background of large-scale computing technologies such as PDE solvers, eigenvalue solvers and time-domain simulation methods (e.g., CFD, FEA)
Skills
- Experience with NVIDIA GPUs and CUDA
- Experience with parallel programming frameworks like MPI, OpenMP, OpenACC
- Experience with testing and debugging techniques for high-performance software
- Experience with software development methodologies and tools
Benefits
- NVIDIA’s invention of the GPU in 1999 sparked the growth of the PC gaming market, redefined modern computer graphics, and revolutionized parallel computing for science and engineering.
- 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.
- Today, we are increasingly known as “the AI computing company.”
- We're looking to grow our company and build our teams with the smartest people in the world!
- Join us at the forefront of technological advancement.
Pay
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.
Schedule
This posting is for an existing vacancy. NVIDIA uses AI tools in its recruiting processes. 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.