Mit Claude Code entwickle ich deutlich schneller als vorher. Aufgaben, für die ich
früher lange selbst Code geschrieben habe, sind teilweise in erstaunlich kurzer
Zeit umgesetzt. Das verändert meine Arbeit spürbar.
Ich beschreibe eine Aufgabe, Claude setzt sie um, durchsucht dafür das Projekt,
verändert mehrere Dateien und kann anschließend noch Tests ausführen. Gerade bei
klar abgegrenzten Aufgaben funktioniert das inzwischen sehr gut.
Trotzdem bedeutet schnelleres Coding nicht, dass ich mich aus der Entwicklung
zurückziehen kann.
Im Gegenteil: Je mehr Code die KI für mich schreibt, desto wichtiger wird die
Kontrolle, um den Überblick zu behalten und zu beurteilen, ob das Ergebnis nicht
nur funktioniert, sondern auch zu meinem Projekt passt.
Meine Arbeit wird dadurch also nicht überflüssig, sie verlagert sich stärker auf
andere Bereiche.
Parallel arbeiten klingt erst einmal perfekt
Eine der großen Stärken von Coding-Agents ist, dass sie selbstständig arbeiten
können.
Während ein Agent eine Aufgabe umsetzt, könnte der nächste schon an einer anderen
arbeiten. Und während beide programmieren, könnte ich mich um etwas völlig anderes
kümmern.
Technisch ist das möglich. Multitasking funktioniert zumindest beim Menschen aber
nur eingeschränkt – und auch beim Vibe Coding habe ich hier stellenweise Probleme
festgestellt.
Wenn zu viele Dinge gleichzeitig innerhalb eines Projekts passieren, verliere ich
irgendwann den Überblick. Insbesondere wenn es Überschneidungen gibt.
Dazu kommt ein technisches Problem: Arbeiten zwei Agenten parallel an verschiedenen
Aufgaben, so gibt es doch immer wieder Schnittmengen. Zentrale Dateien, in denen
allgemein gültige Funktionen liegen, und so weiter. Plötzlich arbeiten zwei Agenten
an denselben Dateien, und die Wahrscheinlichkeit für Konflikte steigt. Ein Agent
verändert Code, auf dessen vorherigem Stand der andere gerade seine Lösung aufbaut.
Hier muss man aufpassen.
Für mich liegt der Vorteil deshalb nicht darin, möglichst viele Agenten gleichzeitig
loszuschicken. Viel interessanter ist es, Aufgaben gezielt abzugeben und die
gewonnene Zeit an anderer Stelle zu nutzen. Wobei auch das schwierig ist, da Agenten
Rückfragen haben und man parallel somit nicht wirklich in einem Fokus-Block
konzentriert an einer anderen Sache arbeiten kann. Hier ist dann wieder Organisation
gefragt.
Nach „fertig“ kommt mein Review
Wenn Claude Code eine Aufgabe als erledigt meldet, ist das für mich inzwischen ein
ziemlich angenehmer Moment. Ein großer Teil der eigentlichen Umsetzung ist erledigt.
Jetzt kommt der Teil, in dem ich mir anschaue, was er gebaut hat.
Dabei geht es mir nicht darum, jede von der KI geschriebene Zeile grundsätzlich
infrage zu stellen. Vieles davon kann ich direkt nachvollziehen und übernehmen.
Aber ich möchte wissen, was sich in meinem Projekt verändert hat.
Das geht direkt im Editor oder (mein Favorit) über den Diff in Git. Welche Dateien
wurden verändert? Welche neuen Strukturen sind entstanden? Wurde bestehender Code
angepasst, mit dem ich nicht gerechnet habe?
Und vor allem: Passt die Lösung zu der Richtung, in die sich das Projekt entwickeln
soll?
Denn Claude kann eine technisch gute Lösung erzeugen, ohne alle Überlegungen zu
kennen, die ich für die nächsten Monate mit dem Projekt habe.
Vielleicht passt die Umsetzung perfekt in mein Vorhaben. Vielleicht hätte ich den
ein oder anderen Punkt im Hinblick auf meine Kenntnis der Architektur aber auch
anders gelöst. Das sind keine Fehler der KI. Das sind Entscheidungen, für die
weiterhin jemand den größeren Zusammenhang kennen muss.
Jedes Projekt hat seine eigenen Regeln
Mit der Zeit entwickelt jedes Projekt seine eigene Ordnung. Bestimmte Dateien
liegen an bestimmten Stellen. Komponenten folgen einem ähnlichen Aufbau. Funktionen
werden nach bestimmten Regeln benannt. Für wiederkehrende Probleme gibt es bereits
Lösungen.
Ein Teil davon steht in Dokumentationen oder Projektregeln. Ein anderer Teil steckt
schlicht im bestehenden Code. Je besser Claude diese Regeln kennt, desto besser
werden auch die Ergebnisse. Mit der Zeit lernt er das Projekt auch immer besser
kennen.
Deshalb lohnt es sich, solche Vorgaben explizit zu machen. Wo gehört welcher Code
hin? Welche Muster verwenden wir? Welche wollen wir vermeiden? Welche Regeln gelten
für Tests, Benennung oder Struktur?
Trotzdem schaue ich nach der Umsetzung, ob diese Regeln tatsächlich eingehalten
wurden. Nicht, weil ich davon ausgehe, dass die KI sie ignoriert. Sondern weil am
Ende ich entscheiden muss, ob eine Änderung wirklich in das bestehende Projekt
gehört.
Ohne Prüfung des erzeugten Codes können hier im Laufe der Zeit beachtliche
technische Schulden aufgebaut werden. Die Erfahrung zeigt, dass diese einen immer
einholen werden.
Funktionieren ist nur eine Ebene
Wie gesagt: KI-generierter Code kann eine Aufgabe sehr schnell lösen. Einer der
ersten Tests ist, ob alles so funktioniert, wie es soll. Danach kommen aber direkt
weitere Fragen: Was passiert mit leeren Daten? Was passiert, wenn eine Anfrage
fehlschlägt? Was passiert bei einer unerwarteten Eingabe? Gibt es einen Zustand,
den wir bei der Beschreibung der Aufgabe vergessen haben?
Der beschriebene Ablauf funktioniert vielleicht perfekt. Ein Benutzer hält sich aber
nicht unbedingt an diesen Ablauf. Genau solche Edge Cases bleiben ebenfalls Teil
meiner Arbeit.
Claude kann auch dabei helfen. Ich kann die KI gezielt nach möglichen Sonderfällen
suchen lassen, Tests erzeugen lassen oder die eigene Implementierung noch einmal
kritisch prüfen lassen.
Das ist für mich ein wichtiger Punkt: Kontrolle bedeutet nicht zwangsläufig, wieder
alles selbst machen zu müssen. Auch beim Prüfen kann KI Arbeit übernehmen. Die
Entscheidung, ob die Prüfung ausreichend ist, bleibt trotzdem bei mir.
Gute Vorarbeit macht KI noch schneller
Am Anfang habe ich Aufgaben häufiger relativ frei beschrieben und Claude einfach
loslegen lassen. Das funktioniert auch erstaunlich oft. Bei größeren Aufgaben habe
ich aber festgestellt, dass mehr Vorbereitung am Ende viel Zeit spart.
Je klarer ich beschreibe, was entstehen soll, desto weniger Entscheidungen muss die
KI selbst treffen. Desto weniger Rückfragen hat sie. Anforderungen, Einschränkungen,
bestehende Strukturen und bekannte Sonderfälle können direkt in die Aufgabe
einfließen.
Bei umfangreicheren Änderungen kann daraus eine richtige Spezifikation werden. Das
klingt zunächst nach mehr Vorarbeit. In der Praxis ist es häufig das Gegenteil.
Ich investiere Zeit in die Beschreibung und bekomme dafür sehr schnell eine
Umsetzung, die wesentlich näher an dem liegt, was ich tatsächlich brauche.
Außerdem kann man diesen Weg der Spezifikation sehr bequem gehen: In einem Gespräch
mit ChatGPT beschreibe ich, was ich umsetzen möchte. In diesem Gespräch entwickelt
sich automatisch ein Pflichtenheft für den Coding-Agenten. Je mehr ich erzähle,
desto mehr fallen mir selber auch Sonderfälle ein oder Punkte, die ich vielleicht
bisher nicht bedacht habe. Allein reden und der dadurch tiefere Einstieg in die
Materie hilft hier schon. Die KI baut mir daraus ein Pflichtenheft aus allen
besprochenen Punkten, das ich dann an Claude Code übergeben kann.
Meine Arbeit verschiebt sich
Das ist wahrscheinlich die größte Veränderung für mich. Ich schreibe weniger Code
selbst. Gleichzeitig beschäftige ich mich stärker damit, was gebaut werden soll,
wie es in das bestehende Projekt passt und ob das Ergebnis langfristig sinnvoll
ist.
Ich definiere Aufgaben. Ich gebe Kontext. Ich treffe Entscheidungen über die
Architektur. Ich prüfe Änderungen. Ich denke über Sonderfälle nach. Und ich
entscheide, welcher Code am Ende tatsächlich übernommen wird.
Claude Code nimmt mir dabei einen erheblichen Teil der Umsetzung ab. Genau das macht
die Arbeit damit so schnell. Für mich bedeutet KI-Coding deshalb nicht weniger
Entwicklung. Es ist eine andere Art zu entwickeln. Der Anteil des manuellen Codings
wird kleiner. Der Anteil von Steuerung, Review und Entscheidungen wird größer.
Und genau darin liegt für mich die Stärke: Ich muss nicht mehr jede einzelne Zeile
selbst schreiben, um eine Idee umzusetzen. Aber ich muss weiterhin verstehen, was
ich bauen möchte und was am Ende in meinem Projekt landet.
Die KI kann einen großen Teil des Weges übernehmen.
Die Richtung bleibt meine Aufgabe.