Four projects: a Windows kernel driver, a cross-platform
citizenship-exam prep app, a full-stack solo build, and a 2015
open-source aid app.
2021–present · Open source · OpenVPN
ovpn-dco-win — Windows kernel driver for the OpenVPN data path
For most of OpenVPN's history on Windows, the data path crossed the
kernel/user-space boundary on every packet. ovpn-dco-win
keeps it inside the kernel — a Windows Driver Framework NDIS miniport
that handles encryption, decryption and packet I/O.
I'm the author and maintainer. The driver ships in OpenVPN's modern
Windows builds and is in use across tens of thousands of corporate
networks. Source is public on GitHub.
C++ · Windows kernel (WDF) · NDIS · WireGuard-style data-channel design
2026 · Personal · iOS & Android
Kansalaisuuskoe – harjoittelu — prep app for the Finnish citizenship test
Finland introduces a citizenship test in 2027, but no official
question bank exists yet. I built a practice app: hundreds of
multiple-choice questions across history, society and law, rights,
culture and everyday life — each with an explanation and a link to its
official source.
One Flutter codebase for iOS and Android: untimed topic practice, a
timed 40-question exam simulation, progress tracking, and a one-time
in-app purchase to unlock the full bank — no subscription. It works
offline, and content updates over the air from a static backend, so
corrected or official material can ship the same day without an app
release. UI in eight languages, with explanations in the languages
most common among applicants.
Built AI-assisted (Claude Opus under my direction): I did the
architecture, the content pipeline and review, the store and IAP
setup, and the release engineering. Honest positioning — practice
material based on official topic areas, not affiliated with Migri.
Flutter / Dart · Riverpod · drift (SQLite) · in_app_purchase · gen-l10n (8 languages) · OTA content (nginx) · App Store / Google Play
2026 · Personal · Self-hosted
StipaCaller — a self-hosted 1:1 calling and chat app
I built this mainly to get into AI-assisted coding on a real,
end-to-end product rather than a toy. Three stacks on purpose: iOS,
Android and a Go backend — so I could see how agents handled each.
Claude Opus 4.7 wrote most of the code under my direction;
I did the architecture, protocol design, the tricky integrations
(PushKit/CallKit, NSE crypto, WebRTC signalling) and the review.
End-to-end encrypted (sealed boxes — the server never sees plaintext).
Delivery via APNs and FCM, with VoIP push through PushKit/CallKit.
Most of the code was written on Madrid–Helsinki–Madrid flights and
over coffee in a Colombian café in Madrid.
2015 · Open source · Refugee aid in Germany & Austria
helphelp2 — donation map for the 2015 refugee crisis
During the European refugee crisis, Rüdiger Trost wanted an app
showing where to take donations near you and what was needed.
Existing online lists were stale. He asked me to build it.
I did the Android client and the Django + PostGIS backend. Collection
points appeared on a map keyed to the user's location; organisations
updated their needed-items lists in real time. By the time the press
picked it up: ~50 collection points across Germany and Austria, and
~8,000 volunteers had downloaded the app. I was top contributor on
both repositories.