Skip to content

💻Handwerk & Know-how

Softwareentwickler/in · Schreibt, testet und wartet den Code, der das moderne Leben antreibt — und beobachtet als einer der ersten Berufe, wie KI seine eigene tägliche Arbeit automatisiert.

Diese Seite teilen

Das Bild eines acht Stunden ununterbrochen tippenden Entwicklers ist größtenteils falsch. Fremden Code zu lesen, über einen Fehler ohne offensichtliche Ursache nachzudenken und einen technischen Kompromiss Nicht-Ingenieuren zu erklären, nehmen ebenso viel Raum ein wie das Schreiben neuen Codes — oft mehr, für jeden über die ersten Jahre hinaus.

Das im Beruf weitergegebene Handwerk dreht sich weniger darum, welche Sprache man lernen sollte, als um Denkgewohnheiten: wie man systematisch nach einem Fehler sucht statt zu raten, wann man funktionierenden Code in Ruhe lässt, und wann das Löschen von Code die wertvollste Sache der ganzen Woche war.

Was die Arbeit verlangt

889074807083
Problemzerlegung
88
Debugging
90
Systemdesign
74
Kommunikation und Zusammenarbeit
80
Testen und Codequalität
70
Kontinuierliches Lernen
83

Problemzerlegung

Eine vage, große Anfrage in kleine, unabhängig baubare und testbare Teile zerlegen — die Fähigkeit, die produktive Entwickler am meisten von jenen unterscheidet, die bei großen Aufgaben ins Stocken geraten.

Debugging

Systematisch eingrenzen, wo und warum ein System sich falsch verhält, statt zu raten und Dinge zu ändern, bis es zufällig funktioniert.

Systemdesign

Entscheiden, wie Dienste, Daten und Teams aufgeteilt werden sollten, damit sich das Ganze jahrelang sicher weiterentwickeln kann, nicht nur am ersten Tag funktioniert.

Kommunikation und Zusammenarbeit

Einem Nicht-Ingenieur einen technischen Kompromiss erklären, eine Änderung für Reviewer klar aufschreiben und den Umfang aushandeln — professioneller Code wird weit mehr gelesen und diskutiert als geschrieben.

Testen und Codequalität

Prüfungen schreiben, die eine defekte Änderung abfangen, bevor ein Nutzer es tut, und eine Codebasis so lesbar halten, dass die nächste Person — oft dieselbe Entwicklerin, Monate später — sie gefahrlos ändern kann.

Kontinuierliches Lernen

Sprachen, Frameworks und jetzt KI-Werkzeuge wechseln alle paar Jahre; Entwickler, die nach ihrem ersten Job bewusst aufhören zu lernen, stagnieren schnell.

Ein Tag im Leben

Posteingang, Standup und TriageFokuszeit: Code schreibenMittagspauseReviews, Pairing und MeetingsDebugging, Deploys und AbschlussFeierabend (meistens) 036912151821 24h
  1. 7–9 Posteingang, Standup und Triage

    Nachrichten und nächtliche Alarme aufarbeiten, dann ein kurzes Standup-Meeting, in dem das Team sagt, woran es arbeitet und was es blockiert.

  2. 9–12 Fokuszeit: Code schreiben

    Der am besten geschützte Block des Tages, idealerweise mit ausgeschalteten Benachrichtigungen, für die Umsetzung einer Funktion oder Korrektur, die anhaltende Konzentration braucht.

  3. 12–13 Mittagspause

    Eine echte Pause; viele Entwickler berichten, dass dies das Erste ist, was in einer Krunchphase wegfällt, und das Erste, dessen Verlust sie bereuen.

  4. 13–16 Reviews, Pairing und Meetings

    Pull Requests von Kollegen lesen, an einem schwierigen Problem gemeinsam arbeiten, und die Design- oder Planungsmeetings, die sich eher am Nachmittag häufen.

  5. 16–19 Debugging, Deploys und Abschluss

    Die Änderung des Tages fertigstellen und ausliefern, ihren Rollout sicher beobachten und Notizen für morgen oder für den nächtlichen Bereitschaftsdienst hinterlassen.

  6. 19–7 Feierabend (meistens)

    Freizeit und Schlaf — außer in einer Bereitschaftswoche, wenn ein Handyalarm um 3 Uhr nachts zu einem ungeplanten Produktionsvorfall werden kann.

Das Know-how

Handwerkswissen, das Praktiker tatsächlich weitergeben — keine Motivationssprüche.

01

Bisektieren, nicht raten

Wenn ein Fehler irgendwo zwischen einer funktionierenden und einer defekten Version auftauchte, die Historie binär durchsuchen statt den Diff mit bloßem Auge zu prüfen — den Mittelpunkt prüfen, dann wiederholen, bis eine Änderung übrig bleibt.

Standard-Binärsuch-Debugging, automatisiert durch Gits Bisect-Befehl
02

Erst den Fehler lesen, dann den Code

Die vollständige Fehlermeldung, der Stack-Trace und umliegende Logzeilen enthalten meist bereits die Antwort; direkt zum Quellcode zu springen und zu raten verschwendet den einen Beweis, den der Computer freiwillig gab.

Wiederholt bei Brian Kernighan und Rob Pike, The Practice of Programming (1999)
03

Erst die Änderung leicht machen, dann die leichte Änderung machen

Wenn eine Funktion schwer hinzuzufügen ist, ist das meist ein Zeichen, dass der Code dafür falsch geformt ist. Erst refaktorisieren, ohne Verhaltensänderung, bis die Funktion ein kleiner, offensichtlicher Diff wird — dann diesen Diff machen.

Kent Beck
04

Chestertons Zaun

Bevor man Code, einen Konfigurationswert oder eine Prüfung löscht oder vereinfacht, die man nicht versteht, herausfinden, warum sie dort platziert wurde. Sie könnte still vor einem Fehler schützen, der genau deshalb seit Jahren nicht aufgetreten ist.

G.K. Chesterton, The Thing (1929), als Ingenieursfolklore übernommen
05

Code löschen ist Fortschritt

Code, der nicht mehr existiert, kann keinen Fehler haben, den nächsten Leser nicht verwirren und muss nicht aktualisiert werden. Das Entfernen toter Pfade und ungenutzter Funktionen sollte genauso gefeiert werden wie das Ausliefern einer Funktion.

Wiederholt von Jeff Atwood, Coding Horror, 2007 ('der beste Code ist kein Code')
06

Gummienten-Debugging

Das Problem laut, Zeile für Zeile, einem Kollegen oder sogar einem unbelebten Gegenstand erklären, bevor man um Hilfe bittet. Der Akt der präzisen Formulierung bringt den Fehler oft ans Licht, bevor jemand antwortet.

The Pragmatic Programmer, Andrew Hunt und David Thomas (1999)

Werkzeuge des Handwerks

Code-Editor / IDE

Visual Studio Code und JetBrains' IDEs dominieren; beide bauen inzwischen KI-gestützte Autovervollständigung und Chat direkt in den Editor ein.

Git

Das Versionskontrollsystem, auf das sich fast die ganze Branche einigte, nachdem Torvalds es 2005 schrieb; fast nichts wird ohne es ausgeliefert.

Issue-Tracker

Jira, Linear oder GitHub Issues verwandeln einen Rückstand an Fehlern und Funktionen in etwas, um das ein Team eine Woche oder ein Quartal planen kann.

CI/CD-Pipeline

Automatisierte Systeme, die Code bei jeder Änderung bauen, testen und ausliefern, und ein Release von einem nervösen manuellen Ereignis in ein Routineereignis verwandeln.

KI-Codeassistent

Werkzeuge wie GitHub Copilot schreiben inzwischen einen großen Teil der Zeilen, die ein Entwickler übernimmt, und verschieben die tägliche Arbeit hin zum Überprüfen und Steuern statt zum Tippen.

Wie man daran scheitert

Lebenslauf-getriebene Entwicklung

Eine trendige Sprache, ein Framework oder eine Architektur wählen, weil es sich im Lebenslauf gut macht, statt weil es zum Problem passt, und dem nächsten Team Komplexität zur Pflege hinterlassen.

Die Fehlermeldung nicht lesen

Auf eine erinnerte Lösung mustermäßig zurückgreifen, statt zu lesen, was das Programm tatsächlich meldet, was Stunden kosten kann, die man der falschen Ursache hinterherjagt.

Der große Neuanfang

Ein funktionierendes System zu verwerfen, um es 'richtig' von Grund auf neu zu bauen, ist ein berüchtigt riskanter Schritt — Netscapes komplette Neufassung seines Browsers Ende der 1990er ist ein oft zitierter Fall, in dem es das Unternehmen die Marktführerschaft kostete.

Ähnliche Berufe

Die nächsten Nachbarn im Sechs-Werte-Profil — nicht nur im selben Feld.

Weiter entdecken

Weiter entdecken

Mehr in Ingenieurwesen & Technik

🤖

KI-Forscher

Entwirft und testet die Algorithmen hinter der maschinellen Intelligenz in einem Bereich, der derzeit darum kämpft, einen wachsenden Teil seines eigenen Forschungsprozesses zu automatisieren.

KI-resistent 50
🛰️

Luft- und Raumfahrtingenieur

Entwirft, analysiert und zertifiziert die Flugzeuge, Raketen und Raumfahrzeuge, die den Boden verlassen, und arbeitet dabei mit Sicherheitsmargen, die keinen Raum für Vermutungen lassen.

KI-resistent 74
🌉

Bauingenieur

Der Beruf, der Flüsse, Felsen und Schwerkraft in Brücken, Straßen und sauberes Wasser verwandelt – seit Imhotep das stille tragende Gewerbe der Zivilisation.

KI-resistent 72
🔌

Halbleiteringenieur/in

Entwirft und fertigt die Transistoren in jedem Computer, Telefon und jeder Waffe — mit Maschinen, die so präzise sind, dass sie nur wenige Fabriken der Welt betreiben können.

KI-resistent 60
🦾

Robotikingenieur/in

Entwirft die Maschinen, die die physische Welt wahrnehmen, entscheiden und in ihr handeln — das schwere Problem war nie Intelligenz, sondern die Welt selbst.

KI-resistent 65
🔐

IT-Sicherheitsspezialist/in

Schützt Systeme, Daten und Menschen, indem digitale Angriffe erkannt, verhindert und abgewehrt werden.

KI-resistent 63
📦

MLOps-Ingenieur/in

Baut die Systeme, die Machine-Learning-Modelle in der Produktion trainieren, bereitstellen, überwachen und regeln.

KI-resistent 54
🌬️

Ingenieur/in für erneuerbare Energien

Entwirft, baut und verbessert Wind-, Solar-, Speicher- und Netzsysteme, die erneuerbare Ressourcen in verlässlichen Strom verwandeln.

KI-resistent 72