Post a job

Senior Software Engineer, JAX

NVIDIA logo

Location
Germany
NVIDIA

Job Description

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)

  • 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.

Advice from our career coach

A successful applicant for this NVIDIA senior engineer role should possess a strong background in AI platform development, performance optimizations in deep learning frameworks using JAX, and have excellent programming and system design skills. Standing out as an applicant can be achieved by showcasing expertise in JAX, Autograd, tracing, code generation, and DSL compilers, as well as understanding deep learning training in distributed contexts, software shipping cycles, and experience in building distributed systems at scale.

  • Highlight expertise in JAX, Autograd, tracing, code generation, and DSL compilers
  • Demonstrate understanding of deep learning training in distributed contexts: multi-GPU, multi-node, synchronous vs asynchronous
  • Showcase background with software shipping cycles (dev, deploy, release, CI)
  • Emphasize experience in building distributed systems and services at large scale

Apply for this job

Expired?

Please let NVIDIA know you found this job with RemoteJobs.org. This helps us grow!

RemoteJobs.org mascot