High-performance C++ software developer

About QC DesignQC Design is a quantum computing software startup. We are on a mission to enable mankind to build the ultimate computing machines limited only by the laws of physics. In service of this mission, we build design-automation software for our customers, who are quantum computer manufacturers across all hardware platforms. This software helps our customers design useful and scalable quantum computers. Our productOur software, Plaquette, is the only software that enables quantum hardware companies to design fault-tolerant quantum computers in the presence of real-world hardware imperfections. We build and ship at a fast iteration speed, turning ideas at the frontier of human knowledge in quantum computing into high-quality software that our customers use and love. We listen to what our customers are looking for so we know that what we’re building is truly useful to them! Role and responsibilitiesWe’re seeking a software developer to take the performance aspects of Plaquette to the next level. Your role would be to lead these performance efforts by developing the most efficient algorithms and implementations for Plaquette in collaboration with quantum computing experts in our team. In particular, you will:

Lead the architectural transition of Plaquette from Python to C++, ensuring optimized performance and scalability. Develop, enhance, and maintain efficient algorithms for the simulation and decoding of fault-tolerant quantum computers. Collaborate closely with quantum-computing experts on our team to integrate quantum algorithms from our research and from literature into high-quality clean code. Profile, benchmark and optimize existing code to maximize performance.Uphold and advocate for best practices related to code quality, performance, and maintainability. Contribute to the design and development of new features, ensuring they meet the requirements for high-performance quantum software desired by our customers.

What we’re looking for

Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related field. Proven experience in C++ development, including familiarity with modern C++ standards (C++11/14/17/20). Strong background in software profiling, benchmarking, optimization and performance tuning. Experience with profiling tools is a plus. Experience with Python and its integration with C++ via e.g., PyBind and Cython. Proficient in algorithm design and complexity analysis. Strong understanding of multithreading and concurrency. Excellent problem-solving skills and attention to detail. Interest in quantum computing is important. Prior experience or knowledge is not necessary. Ability to work collaboratively in a team environment, including great written communication skills. Prior participation in competitive programming is a plus. Virtues and soft skills: ownership, high standards, enthusiasm, resourcefulness, follow through, collaboration, kindness.

What we offer

As a part of the core team of an early-stage startup, you have an opportunity to learn fast and to make a major impact on our product and the future of quantum computing. We offer a competitive salary, industry-leading stock options package and the opportunity to be part of a rapidly-growing company.We offer flexibility in terms of working hours and work from home options, allowing you to work in a way that best suits your needs. We strive to maintain a great working environment for everyone involved.

LocationLocation within Germany is preferred. Remote work can also be considered.