Building Quantum Software:
A Developer's Guide

Learn to program quantum computers. This book offers a software developer's approach to quantum computing. No need for advanced physics or math knowledge. Every chapter is equipped with hands-on lessons and toolkits to make you or your organization "quantum ready".

What Will You Get From This Book?

Practical lessons in applied quantum computing including how to write code for quantum computers, how to identify quantum advantage, and how to write and test your own quantum simulator. Come away with the knowledge to apply quantum computing to real-world problems and research.

Learn by reading

Read the content in each chapter and the inline code. Complex concepts are visualized and presented intuitively.
Live Book

Learn by doing

Review or execute the Jupyter notebooks in each chapter, and comple the corresponding exercises.

Code Repository

Learn with an assistant

Interact with accompanying visual applications and an AI assistant that responds to your instructions.

UI and Assistant

What's In The Book

  • The advantages and challenges of programming quantum computers
  • A first look at quantum computations: the knapsack problem
  • Single-qubit state and gates
  • Quantum state and circuits: beyond one qubit
  • Selecting outcomes with quantum oracles
  • Quantum search and amplitude amplification
  • The quantum Fourier transform
  • Quantum Phase Estimation and applications
  • Encoding functions in quantum states
  • Quantum optimization
  • Additional topics

Who This Book Is For

Understanding quantum computing without the need for advanced physics and mathematics

Software Developers

Developers and students with basic math knowledge can easily learn to code quantum computers.

Applied Scientists

Scientists with quantum theory knowledge can learn how quantum theory is applied to computing.

Curious Learners

Interactive tools and approachable lessons make learning the foundations of quantum computing easy for anyone looking to expand their programming knowledge.
Get The Book

How-To Videos

Get a preview of some hands-on materials in these videos

Start a container (GitHub codespace) right in the browser by going to the code repository.


Run the Jupyter notebooks in each chapter and complete exercises to test your new skills.

The additional code repository contains interactive applications for learning specific topics. This is an example of interacting with a single-qubit circuit.

The additional code repository contains an AI assistant you can run through your OpenAI account. Watch an interaction with the assistant through written instructions.

The assistant offers a handful of experimental features, such as the voice control feature in this video. Help us by offering feedback to improve experimental features!


image image

About The Authors

Constantin Gonciulea leads the Advanced Technology group at a major financial institution. He holds advanced degrees in mathematics and computer science. Over the last 25 years, he has delivered major server-side, web, and mobile online banking platforms and products, and has worked in quantum computing since 2018.

Charlee Stefanski leads the development of a quantum computing platform at a major financial institution. She holds a BS from the University of Michigan and a Masters from UC Berkeley.