Tuukka Haapasalo

Hands-on software architect.

I design backend systems and the applications built on them, but I stay in the code myself. These days increasingly with AI assistance. In IT since 1998, at Reaktor since 2016; before that at HiQ and in database research at Aalto University. D.Sc. (Tech.) in computer science.

tuukka.haapasalo@gmail.com linkedin.com/in/thaapasa github.com/thaapasa +358 40 706 3785 Helsinki Updated September 2026
Tuukka Haapasalo

2016 – present

Reaktor

Software Architect

Architect and developer on client projects, typically from the first weeks of a project through to production.

2023 –

IQM Resonance

The system through which IQM’s customers and researchers run jobs on quantum computers. Started as a public cloud service and has grown into the shared front door for all of IQM’s machines. In 2026 IQM Resonance has three machines, the largest at 54 qubits.

On the project from the start of implementation: I have co-designed the architecture and built a large part of the backend that queues and dispatches quantum jobs to the machines, as well as the user interfaces. The architecture is largely the work of a colleague and me. The server, originally written in Python, was replaced with Rust during the project for performance and maintainability. Team of around ten.

  • Rust
  • axum
  • PostgreSQL
  • React
  • TypeScript
  • Python

2018 – 2023

Telia Dot

A fully digital mobile operator built for Telia from the ground up, running on Telia’s cellular network and backend systems. The product is a mobile subscription managed entirely through the customer app.

On the project from the start of implementation, in a team of around fifteen. We designed the initial architecture together; after that people came and went, and I stayed. Over the years I became the developer who knew the whole system and steered where its architecture went. I worked on nearly every part of it: subscription provisioning into the network, an event-execution engine with guaranteed delivery and automatic retries, subscription billing, integrations with tens of legacy backend systems, the internal customer-service tool and the customer-facing mobile app.

  • Node.js
  • TypeScript
  • React
  • React Native

2016 – 2018

Kesko — Caara Leasing

Mobile app and its backend services for Kesko’s Caara Leasing customers, built end to end by a team of two. Followed by the Android version of Kesko’s Volkswagen Owner app.

  • TypeScript
  • Node.js
  • React Native
  • Android

2016 – 2018

OP — Osta laskulla

Architect and developer on OP’s invoice and instalment payment button for online checkouts. Backend in Java and Kotlin, purchase flow UI in React. The main challenge was fitting the bank’s core systems behind a smooth checkout experience.

  • Java
  • Kotlin
  • React

2011 – 2016

HiQ Finland

Software Architect

2013 – 2015

Fintoto backend systems

Backend development in a small team for Fintoto, the Finnish horse-race betting operator. The most demanding piece was a distributed bet-prioritisation service (Scala, Hazelcast), which I designed and built together with one other developer: we buffered the bets from several servers into one shared queue and fed them on to the various backend systems at a limited rate, so that every user got the same share of the bandwidth and no backend was pushed past its capacity. Also built internal tools and worked on the Fintoto web system.

  • Scala
  • Hazelcast
  • Java

2013

Fintoto Toto-mobiili

Designed the architecture and built most of Fintoto’s HTML5 mobile betting app — among the first to offer live video on every common smartphone of the day. Best HTML5 consumer service in the Best Mobile Service in Finland 2013 awards (Teleforum).

  • JavaScript

2011 – 2012

OP file transfer service

Team lead and developer on a file-transfer service for small businesses in OP’s online bank. Coordinated the team’s work and the changes needed across the bank’s systems, and wrote code alongside the team.

  • Java
  • Spring

2011

OP-Mobiili and S-Pankki mobile

Android versions of OP’s and S-Pankki’s mobile banking apps. On OP-Mobiili, fixed critical barcode-scanning problems late in the project.

  • Android

2008 – 2011

Aalto University

Researcher, doctoral student

Research on index structures for multiversion databases and their concurrency-control algorithms. Extended the MVBT index to support transactions while keeping the operations logarithmic in time. With the research group I also worked on R-tree recovery and string-matching algorithms.

2005 – 2008

HiQ Softplan

Software Engineer

Java projects: the web layer of Veikkaus’s OnNet gaming system (Java, Spring); design and implementation of a real-estate brokerage system for Jones Lang LaSalle (Java, Spring, Hibernate, MySQL), also the subject of my master’s thesis; an intranet for Tekes (BEA AquaLogic).

1998 – 2005

Earlier

  • 2003 – 2005

    Teaching assistant, Helsinki University of Technology

    Operating systems project, C/C++ programming, introductory programming.

  • 2004

    Software engineering intern, GE Healthcare

    Smartphone prototypes relaying patient-monitor alarms; ECG rendering to a head-mounted display (Java MIDP, Symbian C++).

  • 1998 – 2003

    Software developer, MMD Group

    PHP/Perl web systems from publishing platforms to chat services, intranets, websites and Linux server administration.

Expertise

  • System analysis and architecture
  • Distributed systems
  • Databases and concurrency
  • Demanding backend systems
  • API design
  • Integrations with legacy systems

Current toolkit

  • Rust
  • TypeScript
  • React
  • Node.js / Bun
  • PostgreSQL
  • Kotlin / Compose

In earlier projects

  • Java
  • Scala
  • Spring
  • Android
  • React Native
  • Compose Multiplatform
  • Hazelcast

Delivery and infrastructure

  • Docker
  • Kubernetes
  • Linux
  • GitHub Actions / GitLab CI
  • AWS
  • UpCloud

AI-assisted development

  • Claude Code
  • GitHub Copilot
  • Cursor

In daily professional use since early 2026.

Languages

  • Finnish — native
  • English — excellent

I take my own projects end to end: design, code, CI, release and operations. The services run on my own Hetzner server, the apps are on Google Play.

2011

On the Recovery of R-Trees

T. Haapasalo, I. Jaluta, S. Sippu, E. Soisalon-Soininen

IEEE Transactions on Knowledge and Data Engineering, 2011