At a Glance
- Tasks: Join NVIDIA to develop AI platforms and optimise performance using JAX.
- Company: NVIDIA, a leader in AI technology and innovation.
- Benefits: Competitive salary, flexible work options, and opportunities for professional growth.
- Other info: Collaborative environment with a focus on cutting-edge technology and career advancement.
- Why this job: Be part of groundbreaking projects that shape the future of machine learning.
- Qualifications: 6+ years in software engineering with strong skills in C/C++ and Python.
The predicted salary is between 75000 - 100000 £ per year.
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
- 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).
- 6+ 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.
Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. For Poland: The base salary range is 292,500 PLN - 507,000 PLN for Level 4, and 375,000 PLN - 650,000 PLN for Level 5.
Senior Software Engineer, JAX employer: NVIDIA AI
Contact Detail:
NVIDIA AI Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior Software Engineer, JAX
✨Tip Number 1
Network like a pro! Reach out to current employees at NVIDIA or in similar roles on LinkedIn. A friendly chat can give us insights into the company culture and maybe even a referral!
✨Tip Number 2
Show off your skills! Prepare a portfolio or GitHub repository showcasing your projects, especially those involving JAX or deep learning frameworks. This is your chance to demonstrate your coding chops beyond just a CV.
✨Tip Number 3
Ace the interview prep! Research common technical questions related to JAX and deep learning. Practising with mock interviews can help us feel more confident and articulate during the real deal.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, we often have exclusive opportunities listed there that you won’t find anywhere else.
We think you need these skills to ace Senior Software Engineer, JAX
Some tips for your application 🫡
Tailor Your CV: Make sure your CV highlights your experience with JAX, C/C++, and Python. We want to see how your skills align with the role, so don’t be shy about showcasing relevant projects or achievements!
Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Use it to explain why you’re passionate about AI and deep learning. We love seeing candidates who can communicate their enthusiasm and fit for the team.
Showcase Your Communication Skills: Since this role involves working with multi-functional teams, make sure to highlight your communication skills in your application. We value clear and effective communication, so give us examples of how you've successfully collaborated in the past.
Apply Through Our Website: We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it’s super easy!
How to prepare for a job interview at NVIDIA AI
✨Know Your JAX Inside Out
Make sure you brush up on your knowledge of JAX, especially its core components and how it differentiates between Python control code and NumPy code. Be ready to discuss your experience with performance optimisations and how you've contributed to similar projects in the past.
✨Showcase Your Programming Skills
Prepare to demonstrate your proficiency in C/C++ and Python during the interview. You might be asked to solve coding problems or discuss your previous work with machine learning frameworks like PyTorch or TensorFlow, so have examples ready that highlight your technical foundation.
✨Communicate Effectively
Since excellent communication skills are a must for this role, practice articulating your thoughts clearly and concisely. Be prepared to explain complex concepts in a way that’s easy to understand, as you’ll need to collaborate with multi-functional teams.
✨Understand the Bigger Picture
Familiarise yourself with the latest trends in numerical computing and deep learning research. Be ready to discuss how these can be applied to real-world products, and think about how your experience can bridge the gap between research and application.