NVIDIA is an industry leader with groundbreaking developments in High-Performance Computing, Artificial Intelligence and Visualization. The GPU, our invention, serves as the visual cortex of modern computers and is at the heart of our products and services. Our work opens up new universes to explore, enables amazing creativity and discovery and powers what were once science fiction inventions from artificial intelligence to autonomous cars.
NVIDIA is hiring engineers to scale up its AI Infrastructure. We expect you to have strong programming skills, a deep understanding of software building and packaging, especially related to GO and C++, experience with distributed systems, as well as excellent communication and planning skills. We also welcome out-of-the-box thinkers who can provide new ideas while strong at executing tasks. Expect to be constantly challenged, improving and evolving for the better.
You and other engineers in this team will help advance NVIDIA's capacity to build and deploy leading infrastructure solutions for a broad range of AI-based applications that affect core data science. If you're creative, passionate about what you do, autonomous and love having fun, then what are you waiting for, apply today! For two decades, we have pioneered visual computing, the art and science of computer graphics.
With our invention of the GPU - the engine of modern visual computing - the field has expanded to encompass video games, movie production, product design, medical diagnosis and scientific research. Today, we stand at the beginning of the next era, the AI computing era, ignited by a new computing model, GPU deep learning.
What you'll be doing:
- This is a phenomenal opportunity to join the core group working on AI infrastructure for Autonomous Car/Robotics
- We work on building and improving the Distributed computing infrastructure for creating large scale distributed model training
- Expand and optimize job Orchestration Infrastructure(K8s and Slurm), Scheduler. Solid technical foundation in distributed computing and storage, including significant experience with most of the following: server systems, storage, I/O, networking, and system software
- Work with engineering teams across all of NVIDIA to ensure your software integrates seamlessly up and down the stack
- Utilize skills to automate complex tasks and improve the efficiency of unit tests, code metrics checks, integration and functional automated tests
- You will help to build and deploy services into on-prem and external Cloud service providers like AWS, Azure, GCP etc
- Enable development team by providing automated build and test solutions using Docker, Kubernetes, Slurm and on-prem/CSPs
What we need to see:
- Highly motivated with strong communication skills, you have the ability to work successfully with multi-functional teams, principles and architects and coordinate effectively across organizational boundaries and geographies
- 8+ years of software engineering experience on large-scale production systems.
- BS/MS in Computer Science/Engineering/Physics/Mathematics or other comparable Degree or equivalent experience
- Expert level knowledge of a systems programming language (Go/ python/C++) and a solid understanding of Data Structure and Algorithms
- Strong understanding of Container Orchestration Systems(K8s/Mesos) and Container Technology.
- Demonstrated experience in high performance computing domain
- Understanding of performance, security and reliability in complex distributed systems; Familiarity with system level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO
- Experience with Gitlab/Github or other source version control systems
- Knowledge of build tools like GMake, Maven or Ant
- Experience with tools for CI/CD setup such as Jenkins, Gitlab CI, Packer, Terraform, Artifactory or similar tools
- Experience with containerization technologies such as Docker and container orchestration tools like Kubernetes and Slurm
- Deep knowledge of AWS, Azure or other CSPs
- General web networking knowledge (DNS, TCP/IP, HTTP, load balancing, firewalls)
- Deep understanding of Service-Oriented Architecture and RESTful APIs
- Experience in configuration management tools like Ansible
- Solid knowledge of Linux based operating systems like Ubuntu
- Experience with unit test tools and code coverage tools
- Excellent data analysis skills and demonstrated ability to solving complex issues involving multiple software or hardware components
- Strong collaborative and interpersonal skills, specifically a proven ability to effectively guide and influence within a multifaceted matrix environment
Ways to stand out from the crowd:
- Large-scale Distributed System and HPC experience
- Strong hands on knowledge of K8s and slurm
- Exposure to and interest in Open Source frameworks, tools, and technologies
- Experience in developing dashboards using front-end development tools
NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us. If you're creative and autonomous, we want to hear from you.
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.