Oldenburg, Germany · available for interesting problemsOldenburg · offen für spannende Probleme

Lennard Zirks.

Compliance by day. Code by night.
Tailwind always.
Tagsüber Compliance. Nachts Code.
Immer Rückenwind.

$

00 whoamiwhoami

I read regulations for a living and write software for the joy of it. At Avallon I help companies get data protection and supply-chain compliance right. After hours I run a one-person software studio and ship apps people actually use.

Beruflich lese ich Gesetze, aus Leidenschaft schreibe ich Software. Bei Avallon helfe ich Unternehmen bei Datenschutz und Lieferketten-Compliance. Abends betreibe ich ein Ein-Personen-Softwarestudio und baue Apps, die Menschen wirklich nutzen.

That mix shapes how I build: privacy by design isn't a slide, it's the default. No ad SDKs, no trackers, servers in Europe, and an honest privacy policy I can defend line by line. I studied economics, I think in systems, and I commute by bike in every weather.

Diese Mischung prägt, wie ich baue: Privacy by Design ist bei mir keine Folie, sondern Standard. Keine Werbe-SDKs, keine Tracker, Server in Europa und eine Datenschutzerklärung, die ich Zeile für Zeile vertreten kann. Ich habe Wirtschaftswissenschaften studiert, denke in Systemen und pendle bei jedem Wetter mit dem Rad.

lennard.json
{
  "name": "Lennard Zirks",
  "base": "Oldenburg, DE",
  "day": "Compliance & Data Protection @ Avallon",
  "night": "Founder @ Crossroutes",
  "studied": "B.Sc. Economics",
  "speaks": ["de", "en", "ko (learning)"],
  "ships": ["Kotlin", "Rust", "TypeScript", "Java"],
  "runs": "a TrueNAS homelab",
  "km_by_bike": 0,
  "status": "building"
}
01 selected workausgewählte projekte

Things I've built
and keep running.
Dinge, die ich gebaut habe
und am Laufen halte.

Crossroutes ride card with weather along the route Crossroutes banner with group activities on the map Crossroutes multi-day planning on a phone

01.1 · ● live on Google Play

Crossroutes

Find group rides and runs near you, live on a map. Every route shows the weather along the way at the time you'll actually be there, plus a tailwind ratio no other map app has. Clubs, friends, GPX in and out.

Gruppenfahrten und -läufe in deiner Nähe, live auf der Karte. Jede Route zeigt das Wetter entlang der Strecke zu dem Zeitpunkt, an dem du wirklich dort bist, dazu ein Rückenwind-Verhältnis, das keine andere Karten-App hat. Clubs, Freunde, GPX rein und raus.

  • rolerolle → founder, design, Android, backend, infraGründer, Design, Android, Backend, Infra
  • stack → Kotlin · Compose · Fastify · Prisma · PostgreSQL
  • infra → self-hosted in Europe, no ad or analytics SDKselbst gehostet in Europa, kein Werbe- oder Analyse-SDK
Listen music player home screen Listen album grid

01.2 · open source · AGPL-3.0

Listen

A fast, native desktop music player in Rust. No Electron, no web view. Plays Navidrome, Jellyfin, YouTube Music and local files in one queue, mixes songs with beat-matched DJ transitions, and has an optional AI DJ that hosts your set like a radio show.

Ein schneller, nativer Desktop-Musikplayer in Rust. Kein Electron, kein Web-View. Spielt Navidrome, Jellyfin, YouTube Music und lokale Dateien in einer Warteschlange, mischt Songs mit beat-genauen DJ-Übergängen und hat einen optionalen KI-DJ, der dein Set wie eine Radioshow moderiert.

  • stack → Rust · iced · mpv
  • extrasextras → 17 UI languages · MCP server · DLNA · CD ripping17 Sprachen · MCP-Server · DLNA · CD-Rippen
  • telemetrytelemetrie → none
Hangul Quest: Korean quest in Minecraft Hangul Quest: hint in easier Korean Hangul Quest: spaced repetition word card

01.3 · Fabric mod · MIT

Hangul Quest

Learn Korean by playing Minecraft. A Korean sentence tells you what to do, the game checks that you did it. Stuck on a word? The hint explains it in easier Korean and sends you on a two-question side quest first.

Koreanisch lernen beim Minecraft-Spielen. Ein koreanischer Satz sagt dir, was zu tun ist, das Spiel prüft, ob du es getan hast. Hängst du an einem Wort, erklärt der Hinweis es in leichterem Koreanisch und schickt dich erst auf eine kleine Nebenquest.

  • contentinhalt → 0 questlines · 0 steps
  • memorylernen → FSRS-6 spaced repetition
  • stack → Java 25 · Fabric · JSON content, hot-reloadedJSON-Inhalte mit Hot Reload
Pflanzengilde guild planner Pflanzengilde printable garden plan

01.4 · ● live

Pflanzengilde

A permaculture guild planner. Pick a lead tree for your soil, add companions that are checked against research-based compatibility and spacing rules, and print the plan for your garden.

Ein Planer für Permakultur-Gilden. Leitbaum passend zum Boden wählen, Begleitpflanzen ergänzen, die gegen wissenschaftlich fundierte Verträglichkeits- und Abstandsregeln geprüft werden, und den Pflanzplan ausdrucken.

  • stack → React · TypeScript · Vite · SVG
  • export → PDF · JSON
  • languagessprachen → DE · EN

./lab

Private tools I build for myself. Not public, but they're where most of the learning happens.

Private Werkzeuge, die ich für mich selbst baue. Nicht öffentlich, aber dort passiert das meiste Lernen.

infra

Homelab

TrueNAS SCALE running photos, media, music, cloud storage, smart home and DNS filtering, published through Cloudflare Tunnels.

TrueNAS SCALE mit Fotos, Medien, Musik, Cloud-Speicher, Smart Home und DNS-Filter, veröffentlicht über Cloudflare-Tunnel.

ai

Agent stackAgenten-Setup

A multi-agent setup with MCP servers for my own services and small local models on my GPU for quick decisions.

Ein Multi-Agenten-Setup mit MCP-Servern für meine eigenen Dienste und kleinen lokalen Modellen auf der GPU für schnelle Entscheidungen.

learn

kr-keyboard

A touch-typing trainer for the Korean 두벌식 layout that adapts to the keys I keep mixing up.

Ein Zehnfinger-Trainer für das koreanische 두벌식-Layout, der sich an die Tasten anpasst, die ich verwechsle.

02 git log --careergit log --werdegang

From economics
to compliance to code.
Von Wirtschaft
über Compliance zu Code.

  1. a7f3c2107/2026 →

    Founder & DeveloperGründer & Entwickler · Crossroutes

    Concept, UI/UX, mobile development and infrastructure for a sports community app with weather-aware route planning. Run as Software-Entwicklung Lennard Zirks.

    Konzeption, UI/UX, mobile Entwicklung und Infrastruktur einer Sport-Community-App mit wetterbewusster Routenplanung. Betrieben als Software-Entwicklung Lennard Zirks.

  2. 5e0b9d411/2025 →

    Compliance Consultant · Avallon GmbH

    EU Pay Transparency Directive and ESG regulation: EU Deforestation Regulation (EUDR), CSDDD, CSRD and the German Supply Chain Act (LkSG).

    Entgelttransparenzrichtlinie und ESG-Regulierung: EU-Entwaldungsverordnung (EUDR), CSDDD, CSRD und Lieferkettengesetz (LkSG).

  3. c19e7a012/2024 →

    Data Protection ConsultantDatenschutz Consultant · Avallon GmbH

    GDPR, the Protestant church data protection act (DSG-EKD) and related frameworks for clients across sectors.

    DSGVO, DSG-EKD und verwandte Regelwerke für Kunden aus verschiedenen Branchen.

  4. 8b2f4e612/2024 – 07/2026

    Junior Compliance Consultant · Avallon GmbH

    Trade secrets protection (GeschGehG) and early EUDR readiness.

    Geschäftsgeheimnisschutz (GeschGehG) und frühe EUDR-Vorbereitung.

  5. 0d6a3f110/2024

    Junior Consultant · Avallon GmbH

    Joined Avallon in Oldenburg, starting in data protection and GDPR.

    Einstieg bei Avallon in Oldenburg, mit Schwerpunkt Datenschutz und DSGVO.

  6. f41c8b2B.Sc.

    EconomicsWirtschaftswissenschaften · University of OldenburgUniversität Oldenburg

    Thesis on how the war in Ukraine hit the world agricultural market, and what the EU did about it.

    Bachelorarbeit über die Folgen des Ukrainekriegs für den Weltagrarmarkt und die Maßnahmen der EU.

  7. 2a9e5c706 – 09/2022

    Intern, E-Commerce & Business DevelopmentPraktikant E-Commerce & Business Development · onmobia GmbH

    First taste of building digital products in Oldenburg.

    Erster Kontakt mit digitalen Produkten, in Oldenburg.

  8. 0000000init

    Initial commit

03 off the clockfeierabend

Seoul → Busan.
0 km in six days.
Seoul → Busan.
0 km in sechs Tagen.

In 2025 I rode the Four Rivers bike path across South Korea with a rented bike and two panniers. This is the real GPS track. Drag along the route to ride it.

2025 bin ich den Four-Rivers-Radweg quer durch Südkorea gefahren, mit Mietrad und zwei Packtaschen. Das ist der echte GPS-Track. Zieh entlang der Route, um sie nachzufahren.

km 0
lat 37.55
lon 126.90
daytag 1/6
Bike path under a highway bridge along the Han river
km 0 · along the Han riveram Han-Fluss
Quiet riverside road under plane trees
km 285 · riverside back roadsNebenstraßen am Fluss
Bike path through green wetlands
km 470 · Nakdong wetlandsFeuchtgebiete am Nakdong
Cyclist with panniers on a forest road
km 484 · into the hillsab in die Hügel
Red bike lane along wide water near Busan
km 620 · almost at the seafast am Meer
  • 0+km by bike since 2022km mit dem Rad seit 2022
  • 0km, longest day: Bodensee Radmarathonkm, längster Tag: Bodensee Radmarathon
  • 21.1km, Oldenburg half marathon 2026km, Oldenburg Halbmarathon 2026
  • 0km daily bike commute, −10 °C to 35 °Ckm Rad-Pendeln am Tag, −10 °C bis 35 °C

Also: permaculture gardening, Korean variety shows, cooking (pizza dough by baker's percentages, homemade tteokbokki), and building a D&D world called Lyria.

Außerdem: Permakultur im Garten, koreanische Varieté-Shows, Kochen (Pizzateig nach Bäckerprozenten, selbstgemachtes Tteokbokki) und eine eigene D&D-Welt namens Lyria.

04 pingping

Let's build
something.
Lass uns was
bauen.