Kritik und Produktivität – Zwischen Antrieb und Stagnation
Bei meinem aktuellen Projekt befinde ich mich gerade in einer Phase, die wohl zu jedem Entwicklungsprozess gehört: Feedback, Überarbeitung, Fertigstellung.
Eigentlich ist das Alltag. Gerade in der Softwareentwicklung lebt ein gutes Produkt davon, dass jemand genau hinschaut, nachfragt, Fehler findet und gelegentlich auch etwas intensiver nörgelt. Im besten Fall verbessert Kritik nicht nur das Produkt, sondern gleich noch den Prozess, durch den es entsteht.
Doch irgendwann stellt sich die Frage: Wo liegt das richtige Maß?
Bei einer Automation könnten wir vielleicht an Reglern drehen. Mehr oder weniger Strenge. Höhere oder niedrigere Schwellenwerte. Deterministische Prüfungen, klar definierte Zustände, messbare Ergebnisse.
Beim Menschen funktioniert das leider nicht ganz so elegant.
Vielleicht ist genau das einer der Gründe, warum mich die
Schnittstelle zwischen Softwareentwicklung und Psychologie so
fasziniert. Beide beschäftigen sich auf ihre Weise mit
Eingaben, Verarbeitung, Rückkopplung und Reaktion. Nur dass
Menschen keine Module sind und Gefühle sich eher widerwillig
über if und else abbilden lassen.
Und damit komme ich zu meinem eigenen Beispiel.
Feedback trifft auf Erwartung
Ich befinde mich noch in einer Ausbildung, der ich mich ganz bewusst unterzogen habe. Allein kann man sich tief in ein Thema eingraben. Eine strukturierte Ausbildung zwingt einen zusätzlich immer wieder dazu, Dinge zu tun, die man sich selbst vielleicht ersparen würde. Genau darin liegt ein großer Teil ihres Wertes.
An dieser Stelle möchte ich auch der Developer Akademie danken. Meine Erfahrungen dort sind insgesamt sehr positiv, und ich habe in kurzer Zeit enorm viel gelernt.
Nun hatte ich eines meiner Projekte an einen Punkt gebracht, an dem ich überzeugt war: Die Checkliste ist erfüllt, das Ding kann zum ersten Mal abgegeben werden.
Also: abschicken.
Und warten.
Bis dahin war ich ziemlich stolz auf das Ergebnis.
Dann kam das Feedback.
Uff.
Plötzlich war von meinem inneren Feuerwerk nicht mehr viel übrig. Stattdessen sah ich neue Baustellen, Änderungswünsche und Punkte, die ich anders eingeschätzt hatte. Einige davon waren vollkommen nachvollziehbar. Andere gingen mir gegen den Strich. Bei manchen dachte ich: Das hätte man freundlicher formulieren können. Und bei manchen berührte die Kritik Entscheidungen, die ich ganz bewusst getroffen hatte.
Genau hier wurde es interessant.
Denn rein professionell betrachtet passiert etwas ziemlich Banales: Jemand liefert Kriterien und Rückmeldungen, ich prüfe sie und entscheide, wie ich damit weiterarbeite.
Input. Verarbeitung. Output.
Nur sind Menschen eben keine sauber dokumentierten APIs.
Die Evaluation der Evaluation
Auf der einen Seite stand eine Kritik, die ich stellenweise als sehr direkt empfand. Auf der anderen Seite meine eigene Begeisterung für das Projekt, mein Stolz auf die geleistete Arbeit und wahrscheinlich auch eine etwas zu selbstsichere Erwartung an das Feedback.
Was passiert, wenn diese beiden Seiten aufeinandertreffen?
Technisch gesprochen: unnötig komplizierte Verarbeitung.
Plötzlich laufen Schleifen, die niemand bestellt hat.
War die Kritik sachlich gerechtfertigt? War der Ton angemessen? Habe ich etwas übersehen? Wird hier gerade eine Designentscheidung kritisiert oder mein Urteilsvermögen? Muss ich etwas verbessern oder verteidige ich gerade nur mein Ego?
Und dann beginnt die Evaluation der Evaluation.
Wenn man nicht aufpasst, braucht die Verarbeitung des Feedbacks plötzlich mehr Ressourcen als die eigentliche Aufgabe.
Ich stelle mir so einen klassischen Streit zwischen Frontend und Backend vor, wenn die Zusammenarbeit nicht funktioniert: viel inneres Augenrollen, mentales Vogelzeigen, ein wenig Drama – und irgendwann sitzt man dann doch wieder gemeinsam vor einer Liste von Tickets.
Denn am Ende gibt es ein gemeinsames Ziel:
Ein gutes, funktionierendes Produkt.
Wenn Kritik mehr berührt als Code
Nur stellte sich mir dabei noch eine andere Frage.
Warum trifft mich manche Kritik fast überhaupt nicht, während andere innerhalb weniger Sekunden sämtliche Warnleuchten einschaltet?
Bei genauerem Hinsehen merkte ich, dass es nicht nur um Kritik ging.
Es ging um die Beziehung zur Person, die sie äußert.
Es ging um meine Identifikation mit dem, was ich geschaffen hatte.
Und es ging um etwas, das mich schon sehr lange beschäftigt: das Verhältnis von Autorität und Verantwortung.
Ich habe großen Respekt vor Menschen, die Verantwortung übernehmen und ihr Wissen weitergeben. Vielleicht sogar mehr als der Durchschnitt. Gerade deshalb reagiere ich empfindlich, wenn ich den Eindruck bekomme, dass Autorität nicht mehr als Verantwortung verstanden wird, sondern als Macht.
Ob dieser Eindruck im konkreten Moment vollkommen gerechtfertigt ist, steht dabei zunächst auf einem anderen Blatt.
Die Reaktion ist trotzdem da.
Und plötzlich geht es in meinem Kopf nicht mehr nur um eine Codezeile.
Aus einer kleinen Meinungsverschiedenheit kann innerhalb kürzester Zeit eine viel größere Geschichte werden: über Hierarchie, Respekt, Freiheit und Widerstand.
Mein innerer Prometheus bekommt Feuer.
Das Problem ist nur: Nicht jede Feedbackrunde braucht eine Revolution.
Kritik wieder zu Information machen
Gerade in Entwicklerteams wird Kritik irgendwann unvermeidbar. Code Reviews, Architekturentscheidungen, UX-Fragen, technische Schulden, Deadlines – überall treffen unterschiedliche Einschätzungen aufeinander. Gute Zusammenarbeit entsteht deshalb nicht nur aus technischem Können. Sie hängt auch davon ab, wie gut wir Kritik aufnehmen, einordnen und weiterverarbeiten können.
Für mich bedeutet das inzwischen vor allem: zuerst sortieren.
- Was ist technisch begründet?
- Was ist Konvention?
- Was ist Geschmack?
- Was löst bei mir lediglich Widerstand aus?
- Und an welcher Stelle lohnt es sich tatsächlich, eine Entscheidung zu verteidigen?
Diese Fragen verändern den Charakter von Kritik. Aus einem diffusen Angriff wird wieder Information. Und Information lässt sich verarbeiten.
Vielleicht ist genau das eine der Fähigkeiten, die man als Entwickler mit der Zeit lernt: Nicht nur Systeme zu debuggen, sondern auch die eigene Reaktion auf Rückmeldungen.
Denn manchmal verbessert Kritik eine Funktion.
Manchmal eine Architektur.
Manchmal die Zusammenarbeit.
Und gelegentlich zeigt sie einem einen Fehler, der in keinem Repository liegt.
Der schwierigste Bug sitzt eben manchmal vor dem Bildschirm.