Developer Experience optimieren

8 Wege, um Top-Entwickler zu halten

02.11.2023
Von 
Matthew Tyson ist Java-Entwickler und schreibt unter anderem für unsere US-Schwesterpublikation Infoworld.com.
Sie wollen talentierte Softwareentwickler aufbauen und an sich binden? Dann sollten Sie sich um Ihre Developer Experience kümmern.
Auf die Developer Experience kommt es an.
Auf die Developer Experience kommt es an.
Foto: DC Studio - shutterstock.com

Human-Centric-Ansätze sind in der Arbeitswelt im Kommen. Sie fokussieren auf die Bedürfnisse der Menschen und erzielen darauf Vorteile fürs Business. Eine Umfrage der Marktforscher von Gartner legt nahe, dass solche Arbeitspraktiken die Mitarbeiter-Performance erheblich steigern.

Dabei sollten Softwareentwickler als einige Ihrer wertvollsten Ressourcen besondere Berücksichtigung finden. Und in der Entwicklerwelt steht - und fällt - die Job-Zufriedenheit mit der Developer Experience. Das ist leider ein Aspekt, den viele Nicht-Entwickler nicht verstehen.

Developer Experience verbessern - so geht's

Um eine Arbeitskultur zu schaffen, die leistungsstarke Developer hervorbringt und bindet, sollten IT-Führungskräfte die Erkenntnisse der menschenzentrierten Arbeit mit der Developer Experience zusammenführen. Im Folgenden lesen Sie, wie Sie das anstellen.

1. Developer Experience verstehen

Wenn Sie als Führungskraft verstehen, was die Developer Experience ist und warum sie für Softwareentwickler wichtig ist, ist das schon die halbe Miete.

Ganz grundlegend geht es bei der Developer Experience (DX, auch Entwicklererfahrung) darum, wie es sich anfühlt, Software mit einem bestimmten Tool oder System zu entwickeln. Die Entwicklererfahrung deckt dabei sowohl sehr spezifische (Unterschiede in der Handhabung funktionaler Programmiersprachen) als auch allgemeine Aspekte (Unterschiede bei der Nutzung unterschiedlicher Cloud-Plattformen) ab. Darüber hinaus umfasst DX aber auch die kulturelle Ebene und das Lebensgefühl der Developer. Im weitesten Sinne gibt die Developer Experience Auskunft darüber, wie (wohl) sich Entwickler - insbesondere erfahrene - bei der Arbeit in einer Organisation fühlen.

Das Herzstück der Human-Centric-Philosophie ist die Idee der autonomen Verantwortlichkeit. Soll heißen, die Menschen erhalten Ziele und werden für ihre Performance zur Rechenschaft gezogen - erhalten dabei aber gleichzeitig so viel Kontrolle wie möglich darüber, wie sie ihr Ziel erreichen. Der Gedanke, der dahinter steht: Die Mitarbeiter wissen selbst am besten, was funktioniert und was nicht und sind auch am besten dazu in der Lage, den Kurs schnell und iterativ zu korrigieren. Das kommt einer werthaltigen Developer Experience entgegen.

2. Entwickler verstehen

Developer haben eine selbstreferenzielle Beziehung zur Entwicklererfahrung: Sie bauen oft die Tools, die sie auch selbst verwenden, und wissen um die kreative Leistung, die in die Entwicklung solcher Dinge einfließt. Künstlerischer Geist und Wertschätzung sind es im Wesentlichen, die die Software-Community seit den Mainframe-Tagen antreiben. Das Interesse der Entwicklergemeinschaft an technischen Errungenschaften und ihre Beteiligung daran haben sich zu Schlüsselelementen entwickelt, wenn es darum geht, welche Projekte finanziert werden und ihren Weg in den Mainstream finden. DX ist das, was diese Projekte für Entwickler von anderen abhebt.

"Developer Experience kann in interne und externe Entwicklererfahrung unterteilt werden", weiß Dan Moore, Head of Developer Relations beim Autorisierungs- und Authentifizierungsspezialisten FusionAuth. "Bei ersterem geht es darum, internen Teams eine kohärentere, sicherere und schnellere Entwicklung zu ermöglichen, indem Bausteine und Leitplanken zusammen mit Self-Service-Tools bereitgestellt werden. Bei letzterem steht hingegen im Vordergrund, den Umsatz zu steigern und eine attraktive Plattform für Entwickler außerhalb Ihres Unternehmens zu schaffen."

IT-Führungskräfte und -Manager, die das verwirklichen wollen, müssen sich in die Rolle der Entwickler im Unternehmen versetzen und Wege finden, deren Experience zu optimieren.

3. DevOps einführen

Die Verbreitung von DevOps hat es Entwicklern ermöglicht, in den gesamten Produktlebenszyklus einbezogen zu werden - und diesen ganzheitlich zu beeinflussen. Wenn Sie DevOps noch nicht eingeführt haben: Das wäre ein guter erster Schritt in Richtung entwicklerzentrierte Praktiken.

Nach Auffassung von Guillermo Rauch, CEO und Gründer der Entwicklungsplattform Vercel, werden Unternehmen relativ schnell von DevOps zu Dev Experience kommen: "Eine großartige Entwicklererfahrung führt zu einer höheren Produktivität und einer verbesserten Entwicklungsgeschwindigkeit, was sich direkt auf Ihr Endergebnis auswirkt. Jedes Unternehmen sollte sich fragen, wie es seine Entwickler in die Lage versetzen kann, mehr Zeit auf Anwendungs- und Produktebene zu verwenden und so wenig wie möglich für Backend- und Infrastrukturebene.'"

So betrachtet ist der Fokus auf DX eine Möglichkeit, den Developern mehr Kontrolle über ihre Arbeit zu geben. Dabei sollten Sie jedoch davon absehen, den Teams DevOps-Prozesse aufzuzwingen. Stattdessen sollten diese in die Lage versetzt werden, die Prozesse und Technologien zu entwickeln, die am besten zu ihnen passen. Kurzum: Gute DevOps-Praktiken sind ein natürliches Ergebnis einer guten Developer Experience - und umgekehrt.

4. Verantwortlichkeiten schaffen

Entwickler und IT-Mitarbeiter in die Diskussion über die zu verwendenden Tools miteinzubeziehen - und deren Meinung auch in die Kaufentscheidung einfließen zu lassen - bietet eine unschätzbare Feedback-Schleife darüber, was funktioniert und was nicht. Darüber hinaus gewährleistet es, dass die Entwickler das Gefühl bekommen, gehört zu werden. Das wiederum erhöht die Wahrscheinlichkeit, dass sie sich für das Projekt engagieren.

Der Schlüssel zu einem nutzbringenden Kreislauf zwischen Unternehmen und technischen Mitarbeitern liegt darin, Personen zu finden und zu etablieren, die eine Brücke zwischen Entwicklererfahrung und Business schlagen können. Dazu ist es hilfreich, eine Person (oder - je nach Größe Ihres Unternehmens - auch mehrere) dediziert mit der Verantwortlichkeit für die Developer Experience zu betrauen.

Die "Gesundheit" der Entwicklererfahrung zu managen und eine Schnittstelle zum Business zu bilden, werden wesentlich auf den Gesamterfolg ihrer DX-Bemühungen einzahlen.

5. Kein Druck

Entwickler erstellen Software für zweierlei Zielgruppen: Benutzer und Entwickler (also die Entwickler, die an dem Produkt arbeiten). Für die User zählt in erster Linie ein hervorragendes Produkt. Für die Entwickler ist jedoch auch eine gute Performance "innerhalb" des Produkts wichtig - und das hat wiederum große Auswirkungen für das Unternehmen, das die Software einsetzt. In diesem Sinne liefert die Developer Experience auch Hinweise auf die Codequalität und somit die Lebensfähigkeit einer Software. Für Unternehmen ist das in zweifacher Hinsicht wichtig:

  • Systeme mit guter Entwicklererfahrung sind leichter zu warten und zu erweitern, wobei die Softwarequalität den wesentlichen Unterschied macht zwischen Code, der wachsen und sich weiterentwickeln kann, und Code, der dazu verdammt ist, (schlecht) zu altern.

  • Bei einer guten Developer Experience sind die Entwickler mit der Arbeit an einem Projekt eher zufrieden. Aus diesem Grund sollte auch die Projektgeschwindigkeit nicht als isolierte Kennzahl betrachtet werden, wie es oft der Fall ist.

Als menschlicher Erfahrungswert bei der Projektarbeit ist die DX das aussagekräftigste Merkmal für den Zustand eines Projekts. Wie es sich anfühlt, innerhalb eines Projekts zu arbeiten, wird von diversen Faktoren beeinflusst - von den Tools bis hin zur Meeting-Frequenz. Ob sich das angenehm oder weniger angenehm anfühlt, sagt viel über den Status Quo des Projekts und seine Zukunfts- beziehungsweise Erfolgsaussichten aus.

6. Raum lassen

Zu lernen und Wissen weiterzugeben, beziehungsweise zu teilen, sind für Softwareentwickler wichtige Anreize. Je versierter, leidenschaftlicher und fürsorglicher ein Entwickler ist, desto wichtiger ist er in der Regel auch. Eine Kultur zu schaffen, an der jeder partizipiert und ein stetiger Austausch stattfindet, dient als Quell der Inspiration.

Um das zu erreichen, ist etwa ein Beitrag zu Open-Source-Projekten eine gute Möglichkeit. Auch deswegen setzen viele Software-orientierte Unternehmen auch auf quelloffene Komponenten. Diese ermöglichen Entwicklern, ihre kreativen Fähigkeiten auszuleben und sie mit der Welt zu teilen. Nebenbei lenkt das zudem die Aufmerksamkeit auf die Organisation.

Die Erfahrung jedes einzelnen Developers lässt sich entscheidend aufwerten, wenn er oder sie das Gefühl bekommt, Teil eines großen Ganzen zu sein.

7. DX-Killer killen

Das Business giert nach Metriken und Insights, wenn es um den Bereich der Softwareentwicklung geht, der für viele Außenstehende wie eine riesige Blackbox wirkt. Dabei sollten Sie sich bewusst sein: Zu viele oder starke Eingriffe in die Entwickler-Workflows sind echte DX-Killer. Reduzieren Sie stattdessen unnötige Meetings und Reportings auf ein Minimum und behalten Sie im Auge, was am effizientesten funktioniert. Schon alleine der Umstand, dass die Geschäftsleitung diesen Faktor berücksichtigt, ist hilfreich.

Die besten Softwareentwickler gedeihen in einer Umgebung, in der sie sich auf das konzentrieren können, was sie am besten können - Software entwickeln. Wichtig ist außerdem, die Reibungspunkte zwischen Teams und Verantwortungsbereichen zu verringern. Es sind die IT-Führungskräfte, die Ownership- und Exklusivitäts-Silos aufbrechen können.

8. Delivery entstressen

Eine aktuelle Studie kommt zum Ergebnis, dass 7 von 10 Softwareentwicklern Projekte wegen Delivery-Stress hinschmeißen. Bei der Softwareentwicklung gibt es eine Million Details zu beachten - wenn das alles zu einem einzigen großen Ding gebündelt wird, das problemlos ausgeliefert werden soll, verursacht das wahnsinnigen Stress - und das Gefühl, trotz aller Bemühungen nie wirklich genug zu tun.

Der beste Weg, dem zu begegnen: Bauen Sie zuverlässige, automatisierte Systeme auf. Continuous Integration und Delivery, automatisiertes Testing und Co. sind heutzutage Standard beziehungsweise Must-Haves - aber nicht alles. Eine Kultur des Supports ist ebenso wichtig und notwendig. Die Art und Weise, wie sich Entwickler in schwierigen oder unsicheren Zeiten behandelt beziehungsweise wertgeschätzt fühlen, hat drastischen Einfluss auf die DX. (fm)

Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation CIO.com.