Senior Infrastructure Software Engineer, Deep Learning Libraries
at Nvidia
📍 Santa Clara, United States
$148,000-276,000 per year
SCRAPED
Used Tools & Technologies
Not specified
Required Skills & Competences ?
Docker @ 4 Jenkins @ 4 Kubernetes @ 4 Python @ 3 Distributed Systems @ 4 Git @ 6 Jira @ 4Details
NVIDIA's Deep Learning Libraries Group is seeking excellent software engineers to enable the next wave of NVIDIA’s highest performing deep learning libraries. The role spans multiple products, including cuDNN and TensorRT. The mission is to design and develop scalable, modular infrastructure that streamlines development, build, and test across NVIDIA’s diverse set of platforms, from Drive AGX for autonomous vehicles to DGX servers for datacenters and large language models. Join our technically diverse team of software engineers and infrastructure experts to design the systems that enable NVIDIA to stay ahead of the competition as we deliver the world's fastest deep learning platforms.
Responsibilities
- Designing and developing software for testing and analysis of our codebases
- Building scalable automation for build, test, integration, and release processes for publicly distributed deep learning libraries
- Developing throughout the software stack, from the user experience down to the cluster and database layers
- Configuring, maintaining, and building upon deployments of industry-standard tools (e.g. Kubernetes, Jenkins, Docker, CMake, Gitlab, Jira, etc)
- Advancing state of the art in those industry-standard tools
Requirements
- BS or equivalent experience or higher degree in Computer Science or Computer Engineering
- 5+ years of relevant experience.
- Strong programming skills in Python (or similar) and familiarity with C/C++ development
- Experience setting up, maintaining, and automating continuous integration systems
- Fluency in SCM (e.g. Git, Perforce) and build systems (e.g. Make, CMake, Bazel)
- A pragmatic approach to solving problems and collaboration
- Passion for “it just works” automation and enabling team members
Ways to stand out from the crowd:
- Experience designing and developing automation in Jenkins with Groovy (or similar)
- Background with distributed systems and cluster/cloud computing, especially with Kubernetes
- Experience designing and developing unit and integration test frameworks
- Hands-on experience with code coverage and static code analysis tools
- Experience with mobile/embedded platforms and multiple operating systems (Ubuntu, RedHat, Windows, QNX, L4T, or similar)
This is an opportunity to have a wide impact at NVIDIA by improving development velocity across our many compute software projects. Are you creative, driven, and autonomous? Do you love a challenge? If so, we want to hear from you!