We are looking for a highly motivated Compiler Software Engineer to join this dynamic and innovative CUDA Compiler team. You will craft compiler capabilities that enable development and deployment of high performance parallel applications on NVIDIA's next generation GPU's. Our team delivers language extensions and performance improvements to better realize the potential of NVIDIA hardware for a growing range of computational workloads, ranging from deep learning, scientific computation, and self-driving cars to video games and virtual reality.
In this role, as a leader on our team, you have the opportunity of working on the optimizing CUDA C++ compiler, a core component of our platform for accelerating general purpose computation on the GPU. The CUDA programming language defines a unified programming model across a range of system configurations and hardware capabilities. The compiler is responsible for translating parallel programs written in the CUDA/C++ programming language into microcode that is optimized for fast execution on NVIDIA's family of industry-leading GPU architectures. You will be solving challenging problems working alongside some of the top valued diverse minds in GPU computing and systems software, doing what you enjoy. If this sounds like a fun challenge, and you are interested, please let us know.
What you'll be doing:
Design and implement enhancements to the CUDA C++ compiler driver and front-end, ensuring tight integration with industry-leading third-party compiler software.
Contribute to the programming language specification and its evolution factoring in support for new GPU hardware capabilities.
Collaborate closely with teams developing other components of the compiler in ensuring language conformance, robustness, high-quality code generation and suitability for developing programs used in deep learning and safety-critical execution environments.
Provide engineering support for the compiler and deliver targeted changes for production customer releases.
Establish strong customer/partner relationships and trust through excellent execution and high-quality software development.
What we need to see:
BS/MS/PhD degree in Computer Science, Computer Engineering, or related field (or equivalent experience)
3+ years of experience in developing production compilers or related software
Knowledge of compiler front-end technology
Strong C++ programming skills
Strong interpersonal, verbal and written communications skills
Capability to achieve objectives under tight deadlines
Experience executing tasks while managing competing priorities
Practical knowledge working with large code bases
Experience working with industry standard C++ compilers and development frameworks.
Experience writing and debugging multithreaded programs
Deep understanding of technology and passion for what you do with strong teamwork, specifically a proven ability to effectively guide and influence within a dynamic matrix environment
Ways to stand out from the crowd:
Strong track-record in compiler engineering with EDG, LLVM-clang or other industrial strength compiler front-end
CUDA C++ application development experience
Strong understanding of parallel programming concepts.
Familiarity with deep learning frameworks and NVIDIA GPUs
Experience working with Programming Language and programming language standards.
Widely considered to be one of the technology world’s most desirable employers, NVIDIA offers highly competitive salaries and a comprehensive benefits package. We have some of the most forward-thinking and hardworking people in the world working for us!
The base salary range is 148,000 USD - 276,000 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.