Software entsteht bei uns nicht mehr nur am Editor. Ein Teil unserer Entwicklung läuft heute über Alva – unseren asynchronen Coding-Agenten. Alva plant, implementiert und liefert Code, während wir uns auf das konzentrieren, was wirklich Köpfchen braucht: das Verständnis des Problems und die richtigen Entscheidungen zur richtigen Zeit. In diesem Artikel zeigen wir am Beispiel der lernjournal.app, wie ein neues Feature bei uns vom Ticket bis zum gemergten Pull Request kommt. Denn für uns zählt nicht nur das fertige Feature, sondern auch der Weg dorthin..
Erst verstehen, dann bauen
Ein Ticket allein ist noch keine Lösung. Bevor auch nur eine Zeile Code entsteht, schaffen wir in einer interaktiven Session ein gemeinsames Verständnis zwischen den beteiligten Personen und der LLM. Dafür nutzen wir den Grill-me-Skill von Matt Pocock: Auf Grundlage des Tickets und des aktuellen Zustands des Codes stellt uns das LLM kritische Fragen zur Lösung des Problems. Wo sind die Annahmen? Was passiert in den Randfällen? Wie verträgt sich die Idee mit dem, was schon existiert? Genau dieses «grilling» zwingt uns, das Problem zu Ende zu denken. Das Resultat dieser Session ist ein Product Requirements Document (PRD) – ein geteiltes, geschärftes Bild davon, was wir eigentlich implementieren wollen.

Vertikale Slices statt grosser Würfe
Naheliegend wäre jetzt: das PRD an den Agenten geben und implementieren lassen. Wir machen das bewusst nicht. Grosse Änderungen führen zu unübersichtlichen «Pull Requests”. Diese sind entsprechend schwierig zu reviewen und zu verifizieren. Was man nicht im Detail durchschaut, kann man auch nicht mehr guten Gewissens freigeben. Stattdessen schneiden wir aus dem PRD vertikale Slices. Auch hier interagieren wir mit einem LLM, das uns sinnvolle Slices vorschlägt. Wichtig ist uns dabei eine Eigenschaft: Jeder Slice ist für sich test- und auslieferbar.
Alva übernimmt

Die einzelnen Slices übergeben wir an Alva. Ab hier passiert das Spannende asynchron:
- Planen und Implementieren – Alva erstellt einen Plan, lässt ihn von uns überprüfen und setzt anschliessend die Änderungen um.
- Automatisch verifizieren – Jede Änderung läuft durch unsere Pipeline und wird automatisch geprüft.
- Live anschauen – Zusätzlich startet Alva eine isolierte Umgebung mit den Änderungen, sodass wir die neue Funktion direkt im laufenden System begutachten können.
- Mergen – Passt alles, wird der Slice in den main Branch gemergt.
Implementiert werden die Slices immer hinter «Feature Toggles». So behalten wir die volle Kontrolle über den Release-Prozess..
State lebt im Pull Request
Der ganze Ansatz steht und fällt mit einem Prinzip: Der gesamte State liegt im Pull Request. Es gibt kein mühsames «Context-Reloading», kein Wiederaufsetzen einer Session, kein Nachfüttern von Kontext. Wer sich bei der Entwicklung des Features einbringen will, findet alle Informationen im PR.. Das macht die Zusammenarbeit asynchron und robust. Und es verschiebt unsere Rolle: Wir nehmen zum richtigen Zeitpunkt Einfluss – über Reviews. Beim Plan, bei der Implementierung und vor dem Merge. Genau dort, wo eine menschliche Entscheidung den grössten Einfluss hat.
Erkenntnisse fliessen zurück in die Harness
Das Entscheidende passiert nach dem Merge. Jede Erkenntnis aus einem Review, jede Korrektur, jedes «so bitte nicht» führen wir zurück in unsere Harness – als neue Skills, als Dokumentation, als geschärfte Regeln. Dadurch wird der erzeugte Output mit jeder Iteration besser. Das Vertrauen in den Agenten wächst, und der Review-Prozess wird effizienter. Das Ziel, auf das wir hinarbeiten: ein System, das unsere Software ohne Supervision implementiert – und dabei Code produziert, der unseren Qualitätsansprüchen genügt und wartbar ist.
Was bleibt
Agentic Coding ist für uns kein Selbstzweck und kein «die AI macht jetzt alles».
Es ist eine Arbeitsteilung:
- Die AI hilft uns, bis wir das Problem vertieft verstanden haben.
- Wir schneiden gemeinsam saubere, auslieferbare Slices.
- Alva plant, baut und verifiziert – asynchron, hinter Feature Toggles.
- Wir reviewen zum richtigen Zeitpunkt und führen Erkenntnisse ins System zurück.
- So lösen wir Herausforderungen in iterativen Schritten – nur dass ein Teil der Schritte heute von einem Agenten erledigt wird.
Klingt spannend? Dann melde dich – wir teilen unsere Erfahrungen gerne.