Used Tools & Technologies
Not specified
Required Skills & Competences ?
Software Development @ 4 Parallel Programming @ 7 Debugging @ 4 CUDA @ 4 GPU @ 4Details
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 GPUs. 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.
Responsibilities
- 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 CUDA C++ programming language specification and its evolution factoring in support for new GPU hardware capabilities.
- Drive language conformance, front-end robustness, and compile-time improvements that benefit a wide range of users, from deep learning researchers to safety-critical software developers.
- 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.
Requirements
- 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.
- Advanced C++ development skills, including experience working with large, modularized codebases.
- Strong interpersonal, verbal and written communications skills.
- Capability to achieve objectives under tight deadlines.
- Experience executing tasks while managing competing priorities.
- 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.
- Prior work on domain-specific front-ends or IRs such as MLIR, including dialect development or integration with custom compilers.
- CUDA C++ application development experience.
- Strong understanding of parallel programming concepts.
- Experience working with Programming Language and programming language standards.
With competitive salaries and a generous benefits package, we are 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 and, due to unprecedented growth, our exclusive engineering teams are rapidly growing. If you're a creative and autonomous engineer with a real passion for technology, we want to hear from you.