NVIDIA is hiring senior engineers to develop its AI platform and more specifically its performance optimizations in deep learning frameworks using JAX, a tool that can differentiate between Python control code and NumPy code. Our goal is to deliver a polished, fast, modular and coordinated platform to handle data, training and analysis for a wide range of deep learning solutions using JAX. To achieve this and provide an excellent user experience, you have strong programming skills and excellent system design skills. You should have excellent communication and planning skills for this role. Come join us to build the next generation of tooling that will advance the numerical computing and machine learning research around the world!
What You Will Be Doing:
Want more jobs like this?
Get Software Engineering jobs delivered to your inbox every week.
- Play meaningful role in NVIDIA's effort in contributing to JAX.
- Design and implement JAX core components and drive peak performance on NVIDIA products.
- Work with AI applied researchers and leaders to build future-proof models
- Build tools that will increase the efficiency of teams developing AI-based systems.
- Work to bridge the gap between the latest in numerical computing, simulation and deep learning research and their applications in real world products.
What We Need To See:
- BS in Computer Science or Computer Engineering or related field (or equivalent experience)
- 5+ years relevant experience
- C/C++ and Python programming
- Experience with machine learning frameworks and their internals (e.g. PyTorch, TensorFlow, scikit-learn, etc.)
- Proven ability developing customer-facing solutions, balancing feature requests and bugs.
- Proven technical foundation in CPU and GPU architectures, numeric libraries, modular software design.
- Highly motivated with excellent verbal and written communication skills.
- Ability to work successfully with multi-functional teams, principles and architects. Coordinates effectively across organizational boundaries and geographies.
Ways To Stand Out From The Crowd:
- Understanding of JAX, Autograd, tracing, code generation and DSL compilers and their design.
- Understanding of deep learning training in distributed contexts: multi-GPU, multi-node, synchronous vs asynchronous.
- Background with software shipping cycles (dev, deploy, release, CI).
- Experience building distributed systems and services at large scale.
The base salary range is 180,000 USD - 339,250 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.