Hauke Schnau

Software Engineer · Großraum Bremen

Hauke
Schnau

Ich mache komplexe Produkte leichter zu bedienen und leichter weiterzuentwickeln.

Ich begleite Features von der unklaren Anforderung bis in den Betrieb und arbeite dabei an Frontend, Backend und den Systemen, die sie am Laufen halten. Meistens stehen TypeScript und React im Mittelpunkt.

Hauke Schnau mit seinem Hund am Strand

Aktuell

Wo ich gerade stehe

Ich bin Softwareentwickler mit Architekturverantwortung bei BuildlinX. Dort verwandle ich unklare Produktanforderungen in Entscheidungen, Briefings und funktionierende Software, von Web über Backend bis zu den Edge-Systemen.

Nebenbei pflege ich eine kleine Auswahl eigener Produkte und Experimente. Ich entwickle Studienbuch als Local-first-App mit React Native neu, erprobe Agenten-Workflows in meinem T3-Code-Fork und probiere mit Projekten wie Typeflake und Mosaia neue Ideen und Technologien aus.


01

Wie es dazu kam

Als ich mich bei CHECK24 bewarb, habe ich in der Coding-Challenge Zod eingesetzt, um die Eingaben zu validieren. Das ist aufgefallen. Später erfuhr ich, dass mein künftiger Team-Lead genau diese Type-Safety-Gewohnheit bemerkt und sich für mich eingesetzt hatte. Ich war noch im Studium und landete in seinem Team, wo ich Versicherungsvergleiche in React, TypeScript und PHP/Symfony baute.

Angefangen hat es aber nicht dort. Meinen ersten professionellen Entwicklerjob hatte ich mit neunzehn bei homevoice, wo ich mit React und Spring Boot Software für die Hausverwaltung entwickelte. Rund um das Studium war ich außerdem freiberuflich tätig und baute Websites für Künstler:innen und kleine Unternehmen. Dabei habe ich gelernt, technische Möglichkeiten und Grenzen für fachfremde Kund:innen klar zu erklären. CHECK24 verließ ich mit einem guten Zeugnis und der Option, jederzeit zurückzukommen, und wechselte dann zu BuildlinX, wo ich heute Architekturverantwortung für ausgewählte Produktbereiche trage: vom Web-Frontend über das Backend bis zu den Edge-Systemen, in TypeScript und Go.

In meinen eigenen Projekten beschäftige ich mich viel mit dem TypeScript-Ökosystem. Ich mag es, ein System so zu verdrahten, dass eine Änderung am Datenbankschema als Typfehler im Frontend auftaucht, wo der Fehler zur Compile-Zeit sichtbar wird statt auf dem Bildschirm von Nutzenden. Zuletzt heißt das vor allem Effect, mit dem ich modulare, zusammensetzbare TypeScript-Anwendungen strukturiere. Typisierte Fehler und Dependency Injection sind dabei nur ein Teil, nicht der ganze Sinn. Ich halte es aktuell für das stärkste Fundament, das TypeScript für diese Art von Architektur bietet, bin dabei aber nicht dogmatisch: Ich suche noch die Grenze, wo sich der Aufwand lohnt und wo er übertrieben ist.

Inzwischen wird ein großer Teil meines Implementierungscodes von KI-Agenten geschrieben, meist von Codex. Meine Aufmerksamkeit gilt den Teilen, die darüber entscheiden, ob Software etwas taugt: das Problem verstehen, die Architektur wählen, die Grenzen ziehen und das Ergebnis an denselben Ansprüchen an Reviews, Tests, Typen und Wartbarkeit messen, die ich in der gesamten Codebase stelle. Die Werkzeuge werden immer besser, und ich will immer besser darin werden, sie zu steuern und zu prüfen.

Standort
Großraum Bremen
Aktuelle Rolle
Softwareentwickler mit ArchitekturverantwortungBuildlinX
Ausbildung
B.Sc. InformatikUniversität Hamburg · Abschlussnote 1,47 · Jahrgangsbester
Entwickle seit
2021fünf Stationen und eigene Produkte

02

Wie ich baue

Type Safety

Wenn es kompiliert, sollte es funktionieren.

Wenn ich die Wahl habe, lasse ich Typen durch das ganze System fließen, vom Schema über den API-Vertrag bis zur Komponente. Benenne ich ein Feld in der Datenbank um, zeigt der Compiler auf jede Stelle, die sich ändern muss, statt dass Nutzende die kaputte finden. Für die schwierigeren Teile greife ich zu Effect, das mir eine verlässliche Struktur für modulare, zusammensetzbare Systeme gibt, typisierte Fehler und Dependency Injection eingeschlossen. Dogmatisch bin ich dabei nicht. Nicht jedes Projekt braucht das, aber wo es passt, verhindert es eine ganze Kategorie von Fehlern, bevor sie entstehen.

End-to-end-Verantwortung

Ich begleite ein Feature, bis es im Produktivbetrieb läuft.

Oberfläche, API, Domänenmodell, Persistenz, Delivery und die Fehler, die erst im Produktivbetrieb auftreten, gehören zum selben Produkt. Ich verstehe lieber diesen ganzen Weg, als an einer Schicht aufzuhören. Die interessantesten Probleme sitzen meist dort, wo zwei Teile des Systems aufeinandertreffen.

Rechenschaft bei KI

Agenten schreiben viel von meinem Code. Die Entscheidungen bleiben meine.

Ich arbeite überwiegend in Codex, andere Werkzeuge kommen ergänzend dazu. Agenten helfen bei Recherche, Entwürfen, Refactorings, Tests und Dokumentation. Die Verantwortung für Scope, Architektur und Verifikation bleibt bei mir. Generierte Arbeit muss denselben Standards, Reviews und Prüfungen gegen ein laufendes System entsprechen wie jede andere Änderung. Die Zuversicht eines Agenten ist kein Beweis.

Local-first

Die Daten sollten da sein, bevor man sie anfragt.

Bei etwas wie Studienbuch, das in Klassenräumen läuft, in denen das WLAN alle paar Minuten abbricht, verändert Local-first das Erlebnis. Die Daten liegen auf dem Gerät, synchronisieren, wenn es geht, und zeigen nie einen Spinner für etwas, das man schon hat. Das bringt hervorragende UX, Datenschutz, Robustheit und Kontrolle über die eigenen Daten. Es bringt aber auch zusätzliche Komplexität, also greife ich nur dazu, wenn das Produkt es rechtfertigt.

Developer Experience

Ich verbringe meine Zeit lieber am Produkt als am Build-System.

Ich kümmere mich um Tooling, vermutlich etwas mehr als unbedingt nötig. Starke Typen, fokussierte Tests, Preview-Deployments, CI, reproduzierbare Nix-Umgebungen, Turborepo, Oxlint, Oxfmt und Jujutsu machen Feedback-Schleifen schnell und verlässlich. Der sichere Weg, etwas zu ändern, sollte zugleich der schnelle sein. Zeit für Developer Experience zahlt sich bei jedem Commit aus und lässt mehr Aufmerksamkeit für das Produkt.


03

Tech Stack

Diese Werkzeuge nutze ich oft genug, um eine Meinung zu ihnen zu haben.

Sprachen

TypeScript · JavaScript · Go · PHP · Python · Java · Dart · Rust

Frontend

React · React Native · Expo · Flutter · Next.js · Astro · TanStack Query · TanStack Router · TanStack Form · TanStack Start · TanStack Table · Tailwind CSS · shadcn/ui · MobX

Backend & Laufzeiten

Bun · Node.js · Effect · Hono · tRPC · Elysia · Express · Spring Boot · Symfony

Daten & APIs

PostgreSQL · SQLite · Drizzle ORM · Zod · Prisma · Redis · OpenAPI

Testing

Vitest · Playwright · Storybook

Build & Tooling

Vite · Vite+ · Turborepo · Oxlint · Oxfmt · pnpm

Infrastruktur

Nix · NixOS · nix-darwin · Docker

Workflow

Jujutsu · Git · Codex


04

Projekte

Eigene Produkte, Kundenarbeit und ein paar Experimente. Zu zweien gibt es ausführlichere Fallstudien.

Studienbuch-App-Screens mit Tagesansicht, Noten und Fehlzeiten
Noten, Fehlzeiten und Stundenpläne, die auch dann laufen, wenn das Schul-WLAN streikt.

Mai 2023 – Heute

Studienbuch

Ein Noten- und Fehlzeiten-Tracker mit Hausaufgaben- und Vertretungsplan für Schüler:innen der IGS Lilienthal. Aus Datenschutzgründen und wegen des schlechten Schul-WLANs begann die App local-only. Ich entwickle sie nun als vernetztes Local-first-Produkt neu, das Geschwindigkeit und Datenkontrolle behält und zugleich verlässliche Backups, Synchronisation und Raum für ein deutlich breiteres Schulprodukt schafft.

Aktueller Rewrite: TypeScript 7 · React Native · Expo · TanStack Start · TanStack Router · Effect · Bun · NativeWind · Nix · Local-first

Über alle Generationen: Flutter · Dart · React Native · Expo · TanStack Query · TanStack Router · TanStack Form · TanStack Table · tRPC · Hono · Drizzle ORM · PostgreSQL · SQLite

Fallstudie lesen
Corona-OHZ-Dashboard mit Inzidenzverlauf und Schul-Szenario
Corona-Zahlen des Landkreises, aus PDFs in eine Ansicht geholt, die man auf einen Blick versteht.

2021 – 2022

Corona OHZ

Ein regionales COVID-Dashboard für meinen Heimatlandkreis Osterholz. Die offiziellen Zahlen steckten in PDFs und Pressemitteilungen, also machte ich daraus eine Ansicht, die Schüler:innen und Familien auf einen Blick verstehen konnten. Ich baute es, weil Menschen um mich herum immer wieder nach der aktuellen Lage und den Regeln fragten.

Next.js · React · Recharts · Python · Sass · PWA

Ansehen
Karaoke-App, die einen Track mit synchronem Text abspielt
Den Gesang aus jedem Track entfernen und zu synchronem Text mitsingen.

2021 – 2022

Karaoke App

Einen beliebigen Song hochladen, den Gesang entfernen und zu synchronisiertem Text mitsingen. Ein verspieltes Side-Project, das mir viel über Web Audio, Medien- und Such-APIs und darüber beigebracht hat, ein etwas verrücktes Produkt von Anfang bis Ende zum Laufen zu bringen.

TypeScript · Next.js · tRPC · TanStack Query · Prisma · MobX · Web Audio · Python · Spleeter · Spotify-/YouTube-APIs

Ansehen
Startseite der Schulwebsite der IGS Lilienthal
Ein vollständiges Redesign der unübersichtlichen und schwer navigierbaren Website meiner Schule.

Sep. 2025 – Heute

IGS Lilienthal website

Ein grundlegendes Redesign der alten, weit verzweigten Website meiner Schule. Ich vereinfachte Informationsarchitektur und Navigation, baute das Frontend neu, strukturierte die Inhalte in Kirby CMS und richtete einen verlässlichen Deployment-Pfad ein.

Kirby CMS 5 · PHP 8 · Tailwind CSS · JavaScript · Nix · Gitea Actions · systemd

App-Screens der Umfrage-App Mein Lilienthal
Bürgerumfragen für die Gemeinde, mobil und über ein Admin-Panel.

2021 – 2022

Mein Lilienthal

Eine mobile App mit Verwaltungsoberfläche für Bürgerumfragen in Lilienthal, gemeinsam mit Mitschülern gebaut. Einwohnerinnen und Einwohner konnten auf dem Smartphone antworten, während die Gemeinde Umfragen im Web anlegte, verwaltete und auswertete.

Flutter · Dart · MobX · SQLite · Firebase Messaging · Sentry · Dio · iOS/Android

Ansehen
Künstlerinnen-Website von Henriette Aichinger mit Archivansicht
Ein Künstlerinnen-Portfolio mit Archiv und bewusst untypischer Struktur.

2023 – 2023

Henriette Aichinger

Eine Portfolio-Website für die Leipziger Künstlerin Henriette Aichinger. Das Design entstand in Zusammenarbeit. Ich übersetzte die archivartige Navigation, animierten Overlays und die bewusst unkonventionelle Struktur in Code, baute das Kirby CMS und wies die Kundin in die redaktionellen Abläufe ein.

Kirby CMS · PHP · Individuelles Frontend

Ansehen
Website von when paper performs mit farbigem Raster der Mitwirkenden
Eine kinetische Editorial-Website für ein Performance- und Publikationsprojekt.

2023 – 2023

when paper performs

Ein Webauftritt für ein Kunst- und Publikationsprojekt über Performance und gedrucktes Material. Das Design entstand in Zusammenarbeit. Ich implementierte das bewegte visuelle System, beriet zur technischen Umsetzbarkeit, baute das Kirby CMS und bereitete die Kund:innen auf die Pflege von Mitwirkenden und Publikationen vor.

Kirby CMS 3 · PHP · Tailwind CSS · Individuelles JavaScript/CSS

Ansehen
Landingpage der Beratungs-Website to the better
Eine frühe Freelance-Kundenseite, vom vagen Briefing bis zum fertigen Launch.

2022 – 2023

to the better

Mein erstes richtiges Freelance-Kundenprojekt, eine Website für die Beraterin Hanh Xuan Han. Das Design entstand in Zusammenarbeit. Ich übernahm Implementierung, Kirby CMS und Kundenbriefing und half dabei, aus der Designrichtung und einem offenen Briefing einen realistischen Umfang für den Launch zu machen.

Kirby CMS 3 · PHP · Tailwind CSS · Individuelles JavaScript/CSS

Ansehen

Apr. 2026 – Heute

T3 Code

Ein persönlicher Fork, mit dem ich teste, welche Agenten-Workflows sich lohnen.

Ein persönlicher Fork erlaubt mir, Workflow-Ideen schnell genug zu spezifizieren, zu prototypisieren und selbst zu erproben, um herauszufinden, welche Werkzeuge sich einen Platz in meiner Engineering-Arbeit verdienen.

TypeScript · React · React Native · Effect · Electron · Expo · Bun · SQLite · SSH · Tailscale · Vite+ · Nix

Fallstudie lesen

Aktuell in Erprobung

Frühe Side-Projects, an denen ich noch feile. Bewusst nur im Überblick.

Typeflake

Eine frühe, typisierte Schicht für die Nix-Erstellung. Nix übernimmt weiterhin die eigentliche Ausführung, während TypeScript ergonomisches, typsicheres Authoring, inspizierbares generiertes Nix, klare Escape-Hatches und eine engere Feedback-Schleife ergänzt.

TypeScript 7 · Effect 4 · Nix · Oxlint · Oxfmt · tsdown · Node.js

Auf GitHub ansehen

Mosaia

Eine frühe Produktvision für portables, stack-natives Code-Review und Agenten-Zusammenarbeit: Repositories bleiben klonbar, lokale Entwicklung erstklassig, und Kontext sowie Agentenarbeit wandern sichtbar mit den Änderungen.

Umgesetzt: TypeScript · Effect 4 · pnpm · Git/SSH

Geplant: PostgreSQL · SSH · Postgres-basierte Jobs


05

Ausgewählte technische Arbeit

Stack Overflow semantic search

Okt. 2025 – Jan. 2026

Ein System für semantische Suche und quellengebundene Fragebeantwortung über Stack Overflow, entwickelt in einem vierköpfigen Universitätsprojekt. Ich prägte die technische Richtung und implementierte den Großteil des Systems, von der speicherschonenden Verarbeitung des 93-GB-Datendumps über Embeddings, Retrieval und Re-Ranking bis zur Evaluation. Später ergänzte ich eine lokale Chat-Oberfläche mit nachvollziehbaren Quellen.

Suchpipeline: Python · SentenceTransformers · FAISS · SQLite · Flask · Nix · Semantische Suche · Retrieval-Evaluation

StackChat: TypeScript · Next.js · React · Vercel AI SDK · Ollama · Bun · Tailwind CSS

Groundswell

Juni 2025 – März 2026

Eine eventgetriebene Synchronisations-Engine für eventual-consistent Local-first-Clients und einen kanonischen Server, entwickelt für Studienbuch.

TypeScript · Effect · Hono · Drizzle ORM · PostgreSQL · Vitest · Playwright · OpenTelemetry · Nix

Moodle & STiNE automation

Feb. 2024 – 2025

Werkzeuge, mit denen ich die fragmentierten Studiensysteme der Universität Hamburg besser nutzbar machte. Den Moodle-Crawler nutzte ich intensiv, um Kursmaterial in einer verlässlichen lokalen Ordnerstruktur aktuell zu halten, statt unübersichtliche Kursseiten wiederholt nach neuen Folien, Übungsblättern, Aufzeichnungen und anderen Dateien zu durchsuchen. Ein späterer STiNE-Crawler erprobte die typisierte Extraktion aus dem öffentlichen Vorlesungsverzeichnis.

Moodle-Crawler: Go · SAML-Authentifizierung · Web-Scraping

STiNE-Experiment: TypeScript · Bun · Effect · Vitest · Web-Scraping

WebUntis API

März 2026 – Heute

Ein typsicherer Effect-Client für moderne WebUntis-REST-Schnittstellen, der von Studienbuch verwendet wird.

TypeScript 7 · Effect 4 · Vitest · Contract-/Live-Testing · Vite+

nix-infra-modules

Juli 2026 – Heute

Wiederverwendbare Nix-Module aus der Infrastruktur, mit der ich macOS- und NixOS-Systeme, Anwendungs-Deployments, Runner, Ingress, Backups und Entwicklungsumgebungen betreibe.

Nix · NixOS · nix-darwin · systemd · GitHub Actions

Codex Session Archive

Mai 2026 – Mai 2026

Ein Rust-Prototyp zum sicheren Importieren, Durchsuchen, Exportieren und Bereinigen lokaler Codex-Session-Archive mit Volltext- und semantischer Suche.

Rust · Axum · PostgreSQL · pgvector · OpenAI API · Nix · Docker


06

Werdegang

BuildlinX GmbH

Softwareentwickler mit Architekturverantwortung · Vollzeit

Technische Verantwortung über Web-, Backend- und Edge-Systeme im Gebäudemanagement. Ich strukturiere unklare Anforderungen, bereite Architekturentscheidungen und Projekt-Briefings vor und koordiniere die Umsetzung mit den Entwicklern sowie CEO/CTO.

  • Spezifizierte eine neue NixOS-basierte Edge-Plattform samt Betriebssystem in einem Projekt-Briefing für zwei Entwickler:innen und reviewte Architektur sowie Umsetzung mit CEO/CTO. Der von Anfang an klare Scope hält Evaluation und Entwicklung bislang gut auf Kurs.
  • Schreibe Projekt-Briefings und technische Konzepte, die Produktziele, fachliche Rahmenbedingungen und Umsetzung verbinden.
  • Mache aus Produktanforderungen technische Pläne für Teams mit unterschiedlichen technischen Hintergründen.
  • Arbeite an Domain Modeling und Backend-Architektur für komplexe Produkt-Workflows in Web- und Edge-Systemen.
  • Reproduzierbare NixOS-basierte Konfiguration der Edge-PCs.
  • Entwickle Codex-basierte Engineering-Workflows, bei denen Reviews, Tests, Wartbarkeit und Codequalität explizite Anforderungen bleiben.

BuildlinX GmbH

Softwareentwickler · Werkstudium

Produktentwicklung in einem kleinen Team, quer über Frontend, Backend-Schnittstellen, Delivery und Edge-Betrieb.

  • Prägte das Frontend rund um React, Vite, TanStack Query und Router, Storybook, Playwright und Tailwind mit.
  • Entwickelte interaktive Gebäudemanagement-Workflows, Analysen und operative Oberflächen.
  • Implementierte typsichere API-Integration, CI/CD und Branch-Preview-Deployments.
  • Arbeitete in einem kleinen Produktteam an Frontend, Backend, DevOps und Infrastruktur.
  • Senkte die wiederkehrenden Mobilfunkkosten produktiver Edge-Systeme und verbesserte deren Zuverlässigkeit.

CHECK24 Vergleichsportal für Versicherungsprodukte GmbH

Softwareentwickler · Werkstudium

Produktive Feature-Arbeit in einem etablierten Team für Versicherungsvergleiche, mit React, TypeScript, PHP und Symfony.

  • Trieb Teile der Migration von JavaScript zu TypeScript voran, sodass spätere Änderungen sicherer wurden.
  • Baute mobile Sortier- und Filterinteraktionen, die sich in einer Web-App wie native Bottom Sheets anfühlten.
  • Unterstützte die Migration von Webpack zu Vite und refaktorierte komplexen React- und PHP/Symfony-Legacy-Code in Richtung klarerer Strukturen.
  • Arbeitete im regulären Produktprozess mit Produktmanagement, Code Reviews, technischen Diskussionen und etablierten Delivery-Prozessen.
  • Ging mit einem guten Zeugnis und der Möglichkeit, jederzeit zurückzukommen.

Freelance

Web-Entwickler · Freiberuflich

Websites für Künstler:innen und kleine Unternehmen, vom ersten Kundengespräch über die Umsetzung bis zu CMS und SEO.

  • Implementierte von Designern gestaltete Websites, baute die jeweiligen Kirby-CMS-Setups und beriet zu technischer Machbarkeit und Umfang.
  • Wies Kund:innen in das CMS ein und begleitete die Umsetzung vom ersten Gespräch bis zu Launch und SEO.

homevoice GmbH

Front-End-Entwickler · Teilzeit

Mein erster professioneller Entwicklerjob mit neunzehn: begonnen als Sommerpraktikum, weitergeführt als Teilzeitstelle. Software für die Hausverwaltung mit React und Java/Spring Boot, früh im Produktivbetrieb.

  • Arbeitete in einem kleinen Produktteam sowohl am React- und TypeScript-Frontend als auch am Java/Spring-Boot-Backend.

07

Nach Feierabend

Ich bin zurück nach Grasberg gezogen, den kleinen Ort bei Bremen, in dem ich aufgewachsen bin, und lebe dort mit meiner Freundin und unserem Hund.

Wenn ich nicht gerade etwas baue, mache ich meistens Musik, vor allem Gitarre. Viele meiner Side-Projects, etwa Typeflake und Mosaia, entstehen aus derselben Lust, Dinge einfach auszuprobieren.

Hauke Schnau auf einer Städtereise
Hauke Schnau mit seinem Hund im Freien
Hauke Schnau mit seinem Hund am Strand

Wonach ich suche

Ich suche meine nächste Rolle in einem Full-Stack-TypeScript-Produktteam. Besonders interessieren mich Teams, in denen ich ein Feature von der ersten Idee bis in den Produktivbetrieb begleiten kann. Da ich aktuell in einer stabilen Anstellung bin, kann ich mir die Zeit nehmen, Rolle und Team gut kennenzulernen.

Am besten arbeite ich mit Menschen, von denen ich lernen kann. Oft war ich die frontend-erfahrenste Person im Team. Als sich das Team veränderte, habe ich nach und nach mehr Verantwortung für Architektur und Produkt übernommen. Ich bin nicht in jedem Raum die erfahrenste Person und wünsche mir Kolleg:innen, die meine Entscheidungen hinterfragen und mir neue Perspektiven zeigen. Gleichzeitig teile ich gern, was ich über AI-gestützte Softwareentwicklung und das TypeScript-Ökosystem gelernt habe. Abgesehen vom Team sind mir ein moderner TypeScript-Stack, vom Unternehmen aktiv unterstützte AI-Tools und eine Kultur wichtig, in der Codequalität nicht als Erstes dem Termindruck zum Opfer fällt.

Offen für hybride Rollen im Raum Bremen und andernorts vor allem für Remote-Positionen. Deutsch und Englisch.