-
Das richtige Vorgehen für die jeweilige Lage
Ich halte viel von Clean-Code-Prinzipien, und ich habe in Start-ups gelernt, wie schnell ein tragfähiger MVP stehen kann. Das ist kein Widerspruch. Die Kunst liegt darin, zu erkennen, was gerade zählt: Muss die Idee zuerst am Markt bestehen, oder sind formale Korrektheit und Performanz oberstes Gebot? Ich treffe diese Entscheidung bewusst und sage Ihnen, was sie später kostet.
-
Kleine, nachvollziehbare Schritte
Änderungen kommen in überschaubaren Einheiten mit sprechender Historie. Sie sehen jederzeit, woran ich gerade arbeite und wie weit es ist. Und was heute entsteht, versteht Ihr Team später auch ohne mich.
-
Tests gehören zur Lösung
Automatisierte Tests entstehen mit dem Feature, nicht danach. Integrationstests laufen gegen echte Datenbanken und echte Nachbarsysteme, nicht gegen Mocks, die immer das Erwartete zurückgeben.
-
Automatisierte Auslieferung
Build, Test und Deployment laufen über eine Pipeline. Ein Release ist ein Knopfdruck und ein Changelog-Eintrag, kein Abend voller Handarbeit.
-
Entscheidungen werden dokumentiert
Architekturentscheidungen halte ich schriftlich fest, zusammen mit den verworfenen Alternativen und dem Grund für die Wahl. Wer später etwas ändern will, muss sonst raten.
-
Wissenstransfer statt Abhängigkeit
Mein Ziel ist, dass Ihr Team nach dem Einsatz weiterkommt. Code Review, Pairing und saubere Dokumentation gehören deshalb zur täglichen Arbeit.
-
Sorgfalt bei Daten und Zugängen
Keine Zugangsdaten im Repository, Verschlüsselung als Standard, Datensparsamkeit als Voreinstellung. In regulierten Umgebungen wird das ohnehin geprüft.
-
Technik ist nur die halbe Aufgabe
Ich höre zu, übersetze zwischen Fachbereich und Entwicklung und spreche Reibungen an, solange sie noch klein sind. Aus der Zusammenarbeit werden regelmäßig Verbindungen, die das Projekt überdauern. Darauf bin ich ein bisschen stolz, und ich halte es für eine Grundlage guter Ergebnisse.
-
KI als Werkzeug, nicht als Autopilot
Lokal betriebene Modelle und die gängigen Cloud-Dienste nutze ich zum Nachschlagen, als Impulsgeber für Architektur und Implementierung und um schneller voranzukommen. Geschrieben und verantwortet wird der Code weiterhin von mir. Wo Vorgaben oder Vertraulichkeit es verlangen, arbeite ich nur mit lokalen Modellen oder ganz ohne.