Die naheliegende Frage zu einem Produktivsystem, das eine einzelne Person betreibt, lautet: Was hindert es daran, umzufallen? Gestellt wird sie selten, aus Höflichkeit. Stattdessen wird angenommen, die Antwort sei nichts, und man landet still in der Schublade Hobbybastler.
Wie betreibt eine einzelne Person ein Produktivsystem sicher?
Mit Prozess, nicht mit Heldentum. Nicht mit mehr davon, als ein Team hätte. Mit weniger, dafür unverhandelbar.
Aufklärung vor dem Bauen
Das Schema im laufenden Betrieb lesen. Nicht die Migrationsdateien, nicht den Stand des Codes von letzter Woche, nicht die eigene Erinnerung an eine Entscheidung. Nur die Datenbank weiß, was tatsächlich gilt.
Das klingt selbstverständlich und ist trotzdem die Regel, die am häufigsten fällt, weil Lesen sich wie Verzögerung anfühlt. Dabei ist es der billigste Schritt der ganzen Kette. Alles, was später schiefgeht, geht schief, weil hier etwas angenommen statt nachgesehen wurde.
Zwei Instanzen, nie eine
Eine plant und prüft. Eine führt aus. Es ist nie dasselbe Gespräch.
Ein System, das seine eigene Arbeit vorschlägt und sie danach freigibt, hat keine Prüfung, sondern den Anschein einer Prüfung. Diese Trennung kommt dem, was sonst eine Kollegin wäre, am nächsten. Nicht weil die zweite Instanz klüger wäre, sondern weil sie nicht die letzte Stunde damit zugebracht hat, sich selbst davon zu überzeugen, dass der Plan gut ist.
Ein benanntes Go für jede unumkehrbare Handlung
Jeder Schreibvorgang auf Live-Daten. Jede Migration. Jeder Push auf den Branch, der die Produktion ist.
Kein Häkchen, kein aus dem Zusammenhang abgeleitetes Ja. Ein Mensch, mit Namen, der Go sagt. In dem Moment, in dem daraus eine Formalie wird, hört es auf zu wirken. Also muss es ein wenig unbequem bleiben.
Langweiliger Kern, kluges Protokoll
Die Datenbank erzwingt Integrität und Berechtigungen und sonst nichts. Keine Ablauflogik in Triggern, kein Workflow, der in Constraints codiert ist. Regeln, die im Schema wohnen, sind genau dort unsichtbar, wo jemand ein Verhalten zu verstehen versucht.
Gemessen wird über ein Protokoll, das nur anhängt, statt über Verbote. Wer nicht alles im Blick haben kann, schränkt reflexhaft ein. Besser ist, die Leute arbeiten zu lassen und festzuhalten, was passiert ist. Eine Einschränkung, die falsch gesetzt ist, hält die Arbeit an; ein Protokoll, das falsch gesetzt ist, kostet eine Abfrage.
Was das einbringt
Keine Sicherheit. Ein Produktivsystem, das eine Person betreibt, ist in keiner Fassung so sicher wie eines, das ein Team betreibt, und etwas anderes zu behaupten wäre das eigentliche Risiko.
Was es einbringt, ist, dass die Fehler behebbar bleiben. Nichts wird ohne eine benannte Entscheidung zerstört, nichts wird ohne Eintrag geändert und nichts wird auf einer Vermutung darüber aufgebaut, was das System gerade tut.
Das ist eine niedrigere Latte, als ein Team sie legen würde. Und in der Praxis eine höhere, als die meisten Teams überspringen.