Ihre Nachricht wurde gesendet.
Wir werden Ihre Anfrage bearbeiten und uns so schnell wie möglich mit Ihnen in Verbindung setzen.
Das Formular wurde erfolgreich abgeschickt.
Weitere Informationen finden Sie in Ihrem Briefkasten.
Wie aus Berichten aus der Branche hervorgeht, gibt es jetzt einen wachsenden spezialisierten Sektor für Ingenieure, die sich auf die Korrektur von AI-generierten Code-Fehlern konzentrieren.
Das Muster ist bemerkenswert einheitlich geworden. Unternehmen wenden sich an ChatGPT, um Migrationsskripte, Integrationen oder ganze Funktionen zu erstellen, in der Hoffnung, Zeit zu sparen und Kosten zu senken. Immerhin scheint die Technologie schnell und zugänglich zu sein.
Dann versagen die Systeme.
Und sie rufen uns an.
In letzter Zeit erhalten wir immer mehr dieser Anfragen. Dabei geht es nicht um die Auslieferung eines neuen Produkts, sondern darum, das Chaos zu beseitigen, das entstanden ist, nachdem jemand einem Sprachmodell mit seinem Produktionscode vertraut hat.
Inzwischen sieht es so aus, als ob es sich um eine eigene Nischenindustrie handelt. Die Behebung von durch AI verursachten Fehlern ist jetzt eine kostenpflichtige Dienstleistung. Und in manchen Fällen ist sie sehr teuer.
Der GitClear-Bericht 2024 bestätigt, was wir bei unseren Kunden festgestellt haben: AI-Codierungstools beschleunigen die Bereitstellung, führen aber auch zu Doppelarbeit, verringern die Wiederverwendung und erhöhen die langfristigen Wartungskosten.
Wir wollen jedoch klarstellen, dass wir nicht "gegen AI" sind. Wir verwenden sie auch. Und sie ist im richtigen Kontext und mit den richtigen Leitplanken hilfreich. Was mich jedoch an der übermäßigen Verwendung von AI und ihren weit verbreiteten Auswirkungen frustriert - und wahrscheinlich auch Sie - ist das magische Denken. Die Vorstellung, dass ein Sprachmodell echte technische Arbeit ersetzen kann.
Das kann es nicht. Und wie das Sprichwort sagt: "Der Beweis liegt in der Suppe". Wenn Unternehmen so tun, als ob es nicht so wäre, bezahlen sie am Ende jemanden wie uns, um es zu bereinigen.
Wie sieht also eine dieser Säuberungsaktionen aus? Hier ist, was die AI-afficionados Ihnen nicht sagen, wenn es um verlorene Zeit und verschwendetes Geld geht.
Die Nachricht lautet in der Regel wie folgt:
"Hey, kannst du dir einen Microservice ansehen, den wir gebaut haben? Wir haben ChatGPT verwendet, um die erste Version zu erstellen. Wir haben sie ins Staging gepusht, und jetzt ist unsere RabbitMQ-Warteschlange komplett überflutet."
Aber die Sache ist die: Die Symptome treten viel später auf. Manchmal erst nach Tagen. Und wenn sie es tun, ist es selten offensichtlich, dass die Ursache ein von AI generierter Code war. Es sieht einfach so aus, als ob... etwas nicht stimmt.
Nach einem Dutzend dieser Fälle zeichnen sich erste Muster ab:
Und wenn alles zusammenbricht, hinterlässt das AI natürlich keinen Kommentar, in dem es heißt: "Übrigens, ich habe hier geraten."
Das ist deine Sache.
Dieser kam von einem schnell wachsenden Fintech-Unternehmen.
Sie waren dabei, eine neue Version ihres Kundendatenmodells einzuführen, wobei ein großes JSONB-Feld in Postgres in mehrere normalisierte Tabellen aufgeteilt wurde. Ziemlich normales Zeug. Aber angesichts der knappen Fristen und des Mangels an Mitarbeitern beschloss einer der Entwickler, die Dinge zu "beschleunigen", indem er ChatGPT bat, ein Migrationsskript zu erstellen.
Oberflächlich betrachtet sah es gut aus. Das Skript analysierte das JSON, extrahierte die Kontaktinformationen und fügte sie in eine neue user_contacts
Tisch.
Also haben sie es durchgeführt.
Kein Probelauf. Kein Backup. Direkt ins Staging, das, wie sich herausstellte, die Daten über eine Replik mit der Produktion teilte.
Ein paar Stunden später erhielt der Kundendienst E-Mails. Die Nutzer erhielten keine Zahlungsbenachrichtigungen. Bei anderen fehlten Telefonnummern in ihren Profilen. Daraufhin riefen sie uns an.
Wir haben das Problem auf das Skript zurückgeführt. Es führte die grundlegende Extraktion durch, machte aber drei fatale Annahmen:
NULL
Werte oder fehlende Schlüssel innerhalb der JSON-Struktur.ON CONFLICT DO NOTHING
, so dass alle fehlgeschlagenen Einfügungen stillschweigend ignoriert wurden.Ergebnis: über 18% der Kontaktdaten entweder verloren gegangen oder beschädigt worden ist. Keine Protokolle. Keine Fehlermeldungen. Nur stiller Datenverlust.
Wir haben ein kleines Team damit beauftragt, das Durcheinander zu entwirren. Das haben wir getan:
Zwei Ingenieure, drei Tage. Kosten für den Kunden: etwa $4,500 in service fees.
But the bigger hit came from customer fallout. Failed notifications led to missed payments and churn. The client told us they spent at least $10,000 on support tickets, SLA compensation, and goodwill credits over that one botched script.
The ironic thing is that a senior developer could’ve written the correct migration in maybe four hours. But the promise of AI speed ended up costing them two weeks of cleanup and reputation damage.
Dieser Fall stammt von einem Startup-Unternehmen, das eine Dokumentenmanagement-Plattform für Anwaltskanzleien entwickelt. Eine ihrer Hauptfunktionen war die Integration mit einem elektronischen Benachrichtigungsdienst der Regierung - eine REST-API eines Drittanbieters mit OAuth 2.0 und strenger Ratenbegrenzung: 50 Anfragen pro Minute, keine Ausnahmen.
Anstatt einen erfahrenen Backend-Entwickler mit der Integration zu beauftragen, beschloss jemand aus dem Team, einen "Prototyp" mit ChatGPT zu erstellen. Sie gaben die OpenAPI-Spezifikation ein, baten um einen Python-Client und erhielten ein sauber aussehendes Skript mit requests
, wiederholungslogik mit tenacity
, und Token-Aktualisierung.
Auf dem Papier sah es solide aus. Also haben sie es verschickt.
Folgendes ist tatsächlich passiert:
X-RateLimit-Remaining
oder Retry-After
Kopfzeilen. Es hat einfach weiter blind Anfragen gesendet.httpx.AsyncClient
, eine Semaphor-basierte Drosselung implementiert, ein exponentielles Backoff mit Jitter hinzugefügt und die Retry-After
und Ratenbegrenzungs-Header.Zwei Ingenieure, verteilt auf zweieinhalb Tage. Kosten für den Kunden: etwa $3,900.
Das größere Problem ist, dass ihr größter Kunde - eine Anwaltskanzlei mit zeitkritischen Anträgen - aufgrund des Ausfalls zwei Zeitfenster für die Einreichung von Gerichtsanträgen verpasst hat. Der Kunde musste Schadensbegrenzung betreiben und einen Rabatt anbieten, um den Kunden zu halten.
Alles nur, weil ein Sprachmodell den Unterschied zwischen "funktionierendem Code" und "produktionsreifem Code" nicht verstanden hat. Und einfach so wurde eine weitere Schicht von AI technischer Schuld still und leise zum Stapel hinzugefügt.
The scary part isn’t that these things go wrong. It’s how predictable it’s all becoming.
Every one of these incidents follows the same pattern. A developer asks ChatGPT for a code snippet. It returns something that works just well enough not to throw errors. They wire it into the system, maybe clean it up a little, and ship it, assuming that if it compiles and runs, it must be safe.
But here’s the catch: Large language models don’t know your system.
They don’t know how your services interact.
They don’t know your latency budget, your deployment pipeline, your observability setup, or your production traffic patterns.
They generate the most likely-looking code based on patterns in their training data. That’s all. There’s no awareness. No guarantees. No intuition for system design.
And the output often reflects that:
Noch schlimmer ist, dass der Code korrekt aussieht. Er ist syntaktisch sauber. Er besteht Linters. Er könnte sogar von einem einfachen Test abgedeckt werden. Aber es fehlt das Einzige, was wirklich wichtig ist: der Kontext.
Deshalb tauchen diese Fehler auch nicht sofort auf. Sie warten auf den Einsatz am Freitagabend, auf hochfrequentierte Zeitfenster, auf seltene Sonderfälle. Das ist die Natur der technischen Schulden von AI - sie sind unsichtbar, bis sie etwas Kritisches kaputt machen.
As we mentioned earlier, we use AI too. Pretty much every engineer on our team has a Copilot-like setup running locally. It’s fast, helpful, and honestly, a great way to skip the boring parts.
But here’s the difference: nothing makes it into the main branch without going through a senior engineer, and in most cases, a CI pipeline that knows what to look for.
LLMs are great at:
Was sie sind nicht gut im Design ist. Oder Kontext. Oder sichere Standardeinstellungen.
Deshalb haben wir unsere Arbeitsabläufe so gestaltet, dass wir LLM-Ausgaben als Vorschläge und nicht als Quelle der Wahrheit behandeln. So sieht das in der Praxis aus:
Richtig eingesetzt, ist es eine Zeitersparnis. Blindlings eingesetzt, ist es eine Zeitbombe.
We’re not here to tell you to ban AI tools. That ship has sailed.
But giving a language model commit access? That’s just asking for trouble.
Here’s what we recommend instead:
Lassen Sie sie bei sich wiederholendem Code helfen. Lassen Sie sie Lösungen vorschlagen. Aber ihnen keine kritischen Entscheidungen anvertrauen. Jeder von AI erzeugte Code sollte ausnahmslos von einem erfahrenen Ingenieur überprüft werden.
Ob es sich um Commit-Tags, Metadaten oder Kommentare im Code handelt, deutlich zu machen, welche Teile von AI stammen. Das erleichtert später die Prüfung, die Fehlersuche und das Verständnis des Risikoprofils.
Entscheiden Sie im Team, wo die Verwendung von LLMs akzeptabel ist und wo nicht. Boilerplate? Sicher. Autorenströme? Vielleicht. Transaktionssysteme? Auf jeden Fall nicht ohne Überprüfung. Machen Sie die Politik explizit und Teil Ihrer technischen Standards.
Wenn Sie AI-generierten Code in die Produktion einfließen lassen, müssen Sie davon ausgehen, dass irgendwann etwas kaputtgehen wird. Fügen Sie synthetische Prüfungen hinzu. Ratenbegrenzungsüberwachungen. Verfolgung von Abhängigkeiten. Das Unsichtbare sichtbar machen, besonders wenn der ursprüngliche Autor kein Mensch ist.
Die größten AI-bedingten Ausfälle, die wir erlebt haben, waren nicht auf "schlechten" Code zurückzuführen. Sie kamen von stillen Fehlern - fehlende Daten, unterbrochene Warteschlangen, Wiederholungsstürme - die stundenlang unentdeckt blieben. Investieren Sie in Beobachtbarkeit, Fallback-Logik und Rollbacks. Vor allem, wenn Sie ChatGPT die Migrationen schreiben lassen.
Kurz gesagt: AI kann Ihrem Team Zeit sparen, aber es kann keine Verantwortung übernehmen.
Das ist immer noch eine menschliche Aufgabe.
AI can help you move faster. But it can’t think for you.
It doesn’t understand your architecture. It doesn’t know what “done” means in your context. And it definitely doesn’t care if your data pipeline silently breaks on a Friday night.
That’s why, as CTOs, we need to stay focused on system resilience, not just speed.
It’s tempting to let AI handle the boring parts. And sometimes that’s fine. But every shortcut comes with a tradeoff. When AI-generated code slips through unchecked, it often becomes AI technical debt. The kind you don’t see until your ops team is firefighting in production.
If you’ve already run into that wall, you’re not alone. We’ve helped teams recover from everything from broken migrations to API disasters. We don’t just refactor code. We help refactor the thinking behind it.
Because in the end, that’s what actually makes systems reliable.
Ihre Nachricht wurde gesendet.
Wir werden Ihre Anfrage bearbeiten und uns so schnell wie möglich mit Ihnen in Verbindung setzen.
Mit der Anmeldung erklären Sie sich mit unseren Datenschutzrichtlinie