Understanding Quantum Information and Computation (IBM Learning)
John Watrous
You know the basics. Now it is time to write real quantum circuits, implement algorithms, and run on actual quantum hardware. These 36 courses are designed for learners who have completed an introductory course and are ready for the next level.
Intermediate quantum computing is the step between understanding what qubits are and being able to actually use quantum computers to solve problems. You are at the intermediate level if you can explain superposition, entanglement, and measurement without much prompting; you understand the gate model conceptually; and you are ready to write circuits rather than just read about them.
You do not need to have a physics background, and you do not need to be comfortable with all the mathematics yet. Many intermediate courses introduce linear algebra as they go. What matters is that you have enough conceptual grounding that you are not confused by the vocabulary and can focus on the new material.
If you have completed the Deutsch-Jozsa algorithm as an exercise and you understand why it demonstrates quantum advantage -- even if you had to work through it carefully -- you are ready for intermediate content. The algorithms you will encounter now (Grover's, Shor's, VQE, QAOA) are more involved, but the conceptual jump from Deutsch-Jozsa is manageable.
Intermediate quantum computing covers a wide range of practically important topics:
Quantum circuit design goes beyond single-qubit gates to multi-qubit operations, circuit optimization, and transpilation for specific hardware. You will learn to think about gate depth, connectivity constraints, and how to map a logical algorithm to a real device.
Algorithms at this level include Grover's search algorithm (quadratic speedup for unstructured search) and Shor's factoring algorithm (conceptually -- the math is introduced step by step). You will understand what makes these algorithms work rather than just following the steps.
Variational methods such as VQE and QAOA are the most practically relevant near-term algorithms. Intermediate courses introduce these as hybrid quantum-classical optimizations and often include hands-on coding exercises using Qiskit or PennyLane.
Real hardware is a major component of intermediate courses. Running circuits on actual IBM, IonQ, or Rigetti devices means dealing with noise, error rates, and measurement statistics. Understanding the gap between simulator and hardware results is one of the most valuable practical skills at this level.
Error mitigation basics -- techniques like zero-noise extrapolation and probabilistic error cancellation -- are introduced at the intermediate level and prepare you for advanced fault-tolerance topics.
Before starting an intermediate course, you should ideally have:
If you are unsure whether you have the right foundation, see our prerequisites guide for a self-assessment checklist.
36 courses -- ranked by rating
John Watrous
IBM Quantum Research Team
Delft University of Technology (QuTech)
Delft University of Technology (QuTech)
Austin Fowler
Prof. Isaac Chuang and Prof. Peter Shor, MIT
Prof. R. Shankar, Yale University
Delft University of Technology (QuTech)
Delft University of Technology (QuTech)
Delft University of Technology (QuTech)
MIT Physics Department
Dept of Computer Science, University of Oxford
Xanadu / Community
Microsoft Quantum Team
Xanadu / QOSF Community
Delft University of Technology (QuTech)
Delft University of Technology (QuTech)
Google Quantum AI
IBM Quantum
IBM Quantum
Microsoft Learn
Hasso Plattner Institute / IBM Quantum Research
IBM Quantum / Qiskit Community
MIT Lincoln Laboratory
QWorld volunteer instructors
Amazon Web Services
Brilliant.org
Classiq engineering and research team
Delft University of Technology (QuTech)
Delft University of Technology (QuTech)
Centre for Quantum Technologies, NUS
Hasso Plattner Institute / IBM Quantum
Hasso Plattner Institute / IBM Quantum
IBM Quantum
D-Wave
D-Wave