NVIDIA is a leading technology company known for its revolutionary contributions to parallel computing. The Quantum Computing team is seeking a software engineer to develop the CUDA-Q platform for hybrid quantum-classical systems, focusing on building core infrastructure and collaborating with various stakeholders.
Responsibilities:
- Contributing to the development of CUDA Quantum by building core infrastructure for inter-device communication and efficient execution across multiple processors
- Partnering with architects, product managers, and collaborators to create an extensible toolchain integrating quantum architecture specific components
- Solving difficult problems at the intersection of compilers, HPC and quantum computing to enable ground-breaking research and technology
- Discussing and refining software designs and implementation strategies with peers
- Improving processes and infrastructure to accelerate our development
Requirements:
- Bachelors Degree in Computer Science, Physics or related engineering field (Ph.D. or Masters preferred), or equivalent experience
- 5+ years of experience
- Ability working on large-scale software projects, and a proven track record of building performant and robust production software
- A solid understanding of performance profiling, multi-processor systems, and compiler fundamentals
- Ability to quickly develop expertise in new domains and products, and eagerness to master new challenges
- Strong communication and collaboration skills
- Extensive knowledge about quantum computing hardware and control systems and/or prior experience implementing optimization and code generation components for various quantum computing architectures
- A passion for system designing and a focus on improving extensibility
- An understanding of quantum error correction
- Deep understanding of compiler toolchains, specifically LLVM/MLIR
- Proficiency in GPU- and/or FPGA-programming