Software Engineering Manager, Linear Algebra Libraries

Posted:
10/17/2024, 5:00:00 PM

Location(s):
California, United States

Experience Level(s):
Senior

Field(s):
Software Engineering

Workplace Type:
Remote

We are looking for a software engineering manager to lead our development efforts for high-performance linear algebra libraries in the AI and scientific computing domains. Around the world, leading commercial and academic organizations are revolutionizing AI, data analytics, and scientific and engineering simulations, using data centers powered by GPUs. Applications of these technologies include LLMs, computer vision, encryption, computer aided engineering (CAE), electronic design automation (EDA), autonomous vehicles and countless others. Did you know our team develops the GPU accelerated libraries and SDKs that help make these possible?

In this role, you will lead an engineering team designing, developing, and optimizing software to accelerate various elements of the software stack. Ideal candidates will not only have experience leading software product engineering teams, but also be motivated to advance the state-of-the-art in a variety of accelerated computing domains. If this sounds exciting, we would love to meet you!

What you will be doing:

  • Lead, mentor, and grow your library engineering team.

  • Be responsible for the quality and performance of your libraries and the planning and execution of projects.

  • Work closely with NVIDIA Research, Developer Technology, and Product Management teams in the areas of scientific computing, programming systems, and AI to help collect requirements for your products as well as contribute to the development of technology roadmaps.

  • Interact with external partners and researchers to understand their use cases and requirements.

What we need to see:

  • PhD or MSc degree in Computational Science and Engineering, Computer Science, Applied Mathematics, or related science or engineering field (or equivalent experience).

  • 8+ overall years of overall experience in developing high-performance numerical software.

  • 3+ years of experience recruiting, training and leading software engineering teams.

  • Strong fundamentals in numerical methods such as computational linear algebra, linear system solvers, and methods for eigenvalue, singular value, and other decompositions.

  • Hands-on experience with user facing API design, object-oriented programming, large system software architecture development, testing, maintenance, and performance optimization of HPC software using C++ and Python.

  • Experience with parallel programming, ideally using CUDA, MPI, OpenMP, OpenACC, pthreads.

  • Strong collaboration, communication, and documentation habits.

  • Background with, and motivation to adopt and advance, software development practices such as CI/CD systems and project management tools such as JIRA.

Ways to stand out from the crowd:

  • Experience developing or using dense linear algebra libraries such as BLAS, LAPACK and their parallel counterparts like PBLAS and SCALAPACK.

  • Experience with working in a globally distributed organization.

  • Good knowledge of CPU and/or GPU hardware architecture.

  • Good understanding of Machine Learning and Deep Learning technologies and experience using one or more deep learning frameworks (e.g., PyTorch, JAX, TensorFlow...).

  • Experience with leading and mentoring teams in dynamic environments such as concurrent HW and SW development.

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. NVIDIA is widely considered to be one of the technology world's most desirable employers. We have some of the most forward-thinking and talented people in the world working for us. If you're creative, autonomous and love a challenge, we want to hear from you!

The base salary range is 220,000 USD - 419,750 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.

NVIDIA

Website: https://www.nvidia.com/

Headquarter Location: Santa Clara, California, United States

Employee Count: 10001+

Year Founded: 1993

IPO Status: Public

Last Funding Type: Grant

Industries: Artificial Intelligence (AI) ⋅ GPU ⋅ Hardware ⋅ Software ⋅ Virtual Reality