NVIDIA's invention of the GPU in 1999 sparked the growth of the PC gaming market, redefined modern computer graphics, and revolutionized parallel computing. More recently, GPU deep learning ignited modern AI - the next era of computing - with the GPU acting as the brain of computers, robots, and self-driving cars that can perceive and understand the world. We're looking to grow our company, and form teams with the most inquisitive people in the world. Join us at the forefront of technological advancement. Although every member of our team is multi-faceted, the focus for this role is on building infrastructure for user-friendliness, maintainability, and extensibility, advocating for parity across all the platforms we support. We work closely with our developers to understand their work and use cases, helping to standardize, automate, and improve their processes.
Want more jobs like this?
Get jobs delivered to your inbox every week.
On a typical day, you might work on systems and scripts built for python, cmake and anaconda, referencing PEP and NEP documentation, and using Github and Gitlab to manage and deploy your work. You should be proactive in identifying and clarifying ambiguity, championing best-practices, and helping find the balance between competing priorities to ship better software, faster. If you embrace abstraction, have an intuition for identifying and decomposing coupled systems, and thrive in an iterative environment, we believe you will fit right in.
What you will be doing:
- Decomposing and modularizing build processes for reusablity across multiple projects
- Debugging cmake, pip, and conda issues encountered in CI and local builds
- Working on scripting and infrastructure to manage dependencies across various environments and build systems
- Bringing up builds and CI across platforms (x64/arm64) and OS'es (Linux/Windows/Mac) and other unreleased hardware and software
- Working with engineering leadership to identify the support matrix and manage the scope of the build matrix
- Creating and updating documentation and coordinating with stakeholders to scope and tackle cross-functional projects
- Automating scheduled work for all of the above
What we need to see:
- Bachelor's Degree in Systems/Software/Computer Engineering, CS or equivalent experience
- 8+ years of relevant industry experience or equivalent academic experience after BS
- Experience working across multiple highly-coupled projects (in Git or another VCS)
- Experience working with C/C++ or Python projects
- Familiarity with cmake, pip, conda or other tools for C/C++ or Python build and packaging
- Familiarity with CI/CD systems including Github and Gitlab
- Understanding of testing principles
- Knowledge of release management practices
- Strong analytical, debugging, and problem-solving skills
- Familiarity with containerization technologies (e.g. Docker)
Ways to stand out from the crowd:
- Experience working with or compiling for HPC/multi-node environment
- Experience working with closed-source SW, confidential HW, or large code-bases (100k+ LoC)
- Familiarity with binary library compilation, linking, and distribution
- Exposure to development across multiple OS'es
- You have implemented, shipped, and EoL'd a conda package
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.