Image

Software Engineering

Home Software Engineering

Software driving our quantum technology

At QuTech, hardware and software development go hand in hand. As QuTech’s software engineers we develop state-of-the-art software to support our quantum computing systems and quantum networks. Our software comprises the full stack of the quantum (networked) computer: from controlling the quantum devices, to analyzing and visualizing the research results, and to unlocking our systems to the world via web interfaces. There are Software Engineers active in all divisions of QuTech.

What we do:

Develop software for the next generation of systems: We develop sophisticated software for quantum compilers, quantum computer simulators, quantum network simulators and quantum network controllers. Software requirements for our fundamental and applied research projects can change at high speed, due to new insights. We face software challenges without existing solutions as the functionalities they need to run are not even invented yet. This means that we work agile: striving for professional software while remaining flexible in our approach.

Build web interfaces to unlock our quantum technology to the world: We stimulate everyone who is interested to get acquainted with our technology. The websites we built for our demonstrators enable any internet user to use QuTech’s latest real-life quantum devices.

Work together as a quantum ecosystem: As the need for state-of-the-art software grows at QuTech we can focus on the most differentiating aspects of our quantum products. For more generic and matured parts of the software stack, we cooperate with a growing number of quantum related start-ups around us. We also built software to expand the ecosystem of intertwined quantum systems developed at different institutions.

Software Development Support Team (SDST): The SDST is our central advise and support team on software engineering (developing the software), software deployment (running the software) and on software maintenance related processes. They help us cope with the challenges we face in maintaining the delivered code and in supporting the user base of our software. And they also support our engineering as members of our project teams.

“Software Engineers are working in multidisciplinary teams side by side with Quantum Engineers, Hardware Engineers, Researchers and others in order to make quantum computing accessible for everyone.”

At QuTech many software intensive projects/products are developed and maintained as:

  • QNodeOS – a software architecture which forms an operating system for the quantum Internet.
  • QLink – A hardware setup for generating long-distance quantum entanglement
  • QMI – Quantum Measurement Infrastructure is a Python framework for making instruments and equipment transparently available in a networked setup
  • QTT – Quantum Technology Toolbox is a Python-based framework developed for the tuning and calibration of quantum dots and spin qubits
  • Quantum Simulators
    • QX-simulator – A universal quantum computer simulator
    • NetSquid – For modelling and simulation of scalable quantum networks
    • SimulaQron – An application level simulator for a quantum Internet

More projects we contribute to

Image
Photo: @Marieke de Lorijn photographer

Quantum Inspire

Quantum Inspire, developed by QuTech Engineers, is the first European quantum computer in the cloud. Moreover, Quantum Inspire is the world’s first computer with a processor that is using scalable spin qubits. Today, Quantum Inspire let you select from 2 different hardware backends (2 qubit spin and 5 qubit transmon) and a simulator backend.

Quantum Inspire consists of multiple software products working closely together. The web front-end connects to the backend for user registration and authentication, sending in the jobs and getting back the results. Our control software picks up jobs and compiles them to the native gate set of the target platform. It sends the jobs to the low level software that controls the hardware for job execution on quantum hardware and provides the read out of the job results.

To use Quantum Inspire hardware backends and simulation backends directly from your Python code or as a backend for Qiskit or ProjectQ projects, we developed a Software Development Kit which can be found here.

Visit our online platform to get access to Quantum Inspire.

Quantum Network Explorer

To get acquainted with Quantum Networks, QuTech engineers have developed Quantum Network Explorer (QNE); the first European quantum network in the cloud. Quantum Network Explorer delivers a convenient and educational interface to run a number of applications that show the possibilities of Quantum Internet.

QNE consists of multiple software layers. The web front-end connects to the backend via a REST-API for user registration and authentication, sending in the experiments and getting back the results. Our control software picks up the experiments, translates the experiment to instructions for the target quantum network simulator and processes the results.

Currently QNE is using NetSquid as quantum network simulator backend. NetSquid is developed at QuTech/TNO. As a next step for QNE, QuTech engineers are working on the operating system that connects and controls the multi qubit quantum networking hardware which is already operated successfully in the lab and beyond.

Bundled with the first release of QNE an Application Development Kit (ADK) is also released. With this ADK new applications can be developed which can be used locally or uploaded to QNE to be used by others via the web interface.

Visit our online platform to get access to Quantum Network Explorer.

Image
Image

QuTech Cloud

One of the key aspects of successful software products is its high availability to its users and the speed with which new features are released. For major enhancements on these goals QuTech DevOps engineers and software engineers developed QuTech Cloud.

QuTech Cloud is a predictable and scalable infrastructure in order to host QuTech applications as our demonstrators. QuTech Cloud uses proven, high available, fail-over systems and auto recovery solutions while reducing the maintenance effort. QuTech Cloud increases stability, scalability and enables professional deployment strategies for the target applications.

QuTech Cloud is developed as ‘Infrastructure as Code’ (IaC) with automated code testing for IaC in our CI pipelines.

Questions?

Image

If you have questions or want to get more information about our Software Engineering expertise group contact Fer Grooteman.

Join us in creating the quantum future

Work with us as an employee or partner

Engineering expertises

Quantum technology is among the most far-reaching and challenging technologies of our time. To address this challenge, our researchers and engineers from different divisions work closely together to optimize our research projects. Interdisciplinary collaboration is crucial for making the next steps in developing scalable prototypes of a quantum computer and an inherently safe quantum internet.

Take a look at all Engineering expertises
Image
Photo: @Marieke de Lorijn photographer