Close

Die Bedeutung der Teamstruktur in DevOps

Je nach den Unternehmensumständen benötigen verschiedene Teams unterschiedliche Strukturen.

Shana Vu

Produktmarketing, DevOps


Wenn ein Softwareteam DevOps-Konzepte übernehmen möchte, muss es sich der folgenden Tatsache bewusst sein: Je nach den Umständen des Unternehmens und seinem Drang, sich zu verändern, benötigen verschiedene Teams unterschiedliche Strukturen.

Der Aufstieg der DevOps-Teams


Hast du ein DevOps-Team in deinem Unternehmen? Das ist ziemlich wahrscheinlich. In unserer Umfrage zu DevOps-Trends haben wir festgestellt, dass mehr als zwei Drittel der befragten Unternehmen ein Team oder eine Einzelperson mit der Bezeichnung "DevOps" im Jobtitel hat.

Während das DevOps-Konzept immer häufiger angewandt wird, hören wir oft, dass Softwareteams jetzt DevOps-Teams sind. Es reicht allerdings nicht aus, neue Tools hinzuzufügen oder ein Team zum DevOps-Team umzubenennen, um die Vorteile von DevOps voll ausnutzen zu können.

Wer das DevOps-Prinzip und dessen ordnungsgemäße Implementierung nicht richtig versteht, beschränkt sich bei einer DevOps-Transformation normalerweise auf eine Reorganisation oder die neuesten Tools. Die echte Übernahme des DevOps-Konzepts bringt hingegen einen kulturellen Wandel mit sich, bei dem Teams neue Strukturen, neue Managementprinzipien und bestimmte Technologietools anwenden.

Arten von DevOps-Teamstrukturen


Welche DevOps-Teamstruktur implementiert werden soll, hängt von zahlreichen Faktoren ab. Das sind beispielsweise die Anzahl der Produkte, an denen ein Unternehmen arbeitet, die technische Führung und die Fähigkeit von Entwicklungs- und Operations-Teams, Prozesse aufeinander abzustimmen.

Lösung anzeigen

DevOps-Tools für das gesamte Team

Zugehöriges Material

Erfahre mehr über die Vorteile von DevOps

Es ist wichtig zu verstehen, dass nicht jedes Team dieselben Ziele verfolgt oder dieselben Praktiken und Tools verwendet. Selbst die Art und Weise, wie ein Team zusammengesetzt ist, sollte nicht standardisiert werden. Je nach den Umständen des Unternehmens und seinem Drang, sich zu verändern, benötigen verschiedene Teams unterschiedliche Strukturen. DevOps-Teams in zwei unterschiedlichen Unternehmen können sich massiv voneinander unterscheiden.

Um die Vorteile von DevOps zu nutzen, etwa schnellere Markteinführungszeit, verbesserte Deployment-Häufigkeit, bessere Teamkultur und verstärkte Zusammenarbeit zwischen Teams und Abteilungen, muss die Rolle jedes Teams klar umrissen sein. Dennoch gibt es in vielen Organisationen eine Vielzahl von Teambezeichnungen und Teams, die mehrere Rollen übernehmen (z. B. ein Infrastrukturteam, das Tools nicht nur auswählt, sondern diese auch wartet). Diese Vielseitigkeit macht es für Führungskräfte schwierig, die gesamte Organisationslandschaft zu visualisieren und wichtige Fragen wie die folgenden zu beantworten: Verfügen wir über die richtigen Teams? Fehlen uns in einigen Bereichen Fähigkeiten, die keines unserer Teams vorweisen kann? Sieht es so aus, als ob Teams gleich viel Autonomie und Unterstützung durch andere Teams erhalten?

Die hervorragende Arbeit der Leute hinter Team Topologies ist der Ausgangspunkt dafür, wie Atlassian die verschiedenen Ansätze des DevOps-Teams sieht. Denke daran, dass die nachstehenden Teamstrukturen je nach Größe und Reifegrad eines Unternehmens unterschiedlich geartet sein können. Tatsächlich ist eine Kombination aus mehr als einer Teamstruktur oder einer Struktur, die sich zu einer anderen entwickelt, oft der beste Ansatz.

Zusammenarbeit zwischen Entwicklung und Operations

Viele Leute betrachten DevOps schlicht als geschlossene Zusammenarbeit zwischen dem Entwicklungs- und dem Operations-Team. Dies ist das Grundprinzip von DevOps, das klare Vorteile bietet. Softwareteams können beispielsweise schneller und zuverlässiger Lösungen entwickeln, testen und liefern.

Der Erfolg dieser Teamstruktur beruht darauf, dass Entwickler den Druck auf das Operations-Team verstehen, dass es die Verfügbarkeit aufrechterhalten und Problemlösungszeiten verringern muss. Ebenso wichtig ist es, dass Operations-Teams den Wunsch der Entwicklerteams, nämlich schnellere Deployment- und Markteinführungszeiten, anerkennen können.

Entwicklungs- und Operations-Teams als Einheit

Mit dieser Teamstruktur wird davon ausgegangen, dass Entwicklung und Operations zusammengehören, wie ein Team agieren und eine einheitliche Front mit gemeinsamen Zielen bilden. Die Konstellation, die gelegentlich als "NoOps" bezeichnet wird, ist häufig in Technologieunternehmen wie Facebook oder Netflix vorzufinden, die ein einziges, primär digitales Produkt anbieten. Sie kann sogar nach dem Prinzip "You build it, you run it" arbeiten, wonach Anwendungen von den Personen bzw. Teams betrieben werden, die sie auch entwickelt haben.

DevOps/SRE

In dieser Teamstruktur, die Google populär gemacht hat, übergibt ein Entwicklerteam ein Produkt an das SRE-Team (Site Reliability Engineering), das die Software tatsächlich ausführt. In diesem Modell stellen Entwicklerteams dem SRE-Team Protokolle und andere Artefakte zur Verfügung. Diese dienen als Nachweis dafür, dass ihre Software einem gewissen Standard entspricht und daher durch das SRE-Team unterstützt werden kann. Entwicklungs- und SRE-Teams erarbeiten gemeinsam betriebliche Kriterien, und SRE-Teams können Entwickler bitten, ihren Code vor der Produktion zu verbessern.

Ops als Plattform

In dieser Teamstruktur fungiert ein Team innerhalb des Entwicklerteams als fachlich kompetenter Ansprechpartner für alles, was mit Operations zu tun hat. Es agiert auch größtenteils als Schnittstelle zum IaaS-Team (Infrastructure as a Service). Diese Teamstruktur hängt von Anwendungen ab, die in einer Public Cloud ausgeführt werden, da das IaaS-Team skalierbare, virtuelle Services erstellt, die das Entwicklerteam verwendet.

DevOps als externe Partei

Wenn es sich bei DevOps um eine externe Partei handelt, setzen Unternehmen auf bestimmte Zeit einen DevOps-Berater oder ein DevOps-Team ein, um Entwicklungs- und Operations-Teams bei der Umstrukturierung zu einem der ersten beiden genannten Teams zu helfen (Zusammenarbeit zwischen Entwicklungs- und Operations-Teams bzw. Entwicklungs- und Operations-Teams als Einheit).

Es gibt mehrere Methoden, um DevOps-Konzepte umzusetzen, aber auch viele, die man nicht anwenden sollte. Teams und DevOps-Führungskräfte sollten sich vor sogenannten Anti-Patterns hüten, die durch Silos, mangelnde Kommunikation und eine falsche Priorisierung von Tools gegenüber der Kommunikation gekennzeichnet sind.

Rollen und Verantwortlichkeiten in DevOps-Teams


Unabhängig von der Teamstruktur tauschen alle erfolgreichen Teams mit DevOps-Praktiken regelmäßig Wissen und Erfahrungen zwischen dem Entwicklungs- und Operations-Team aus. Beispielsweise bei regelmäßigen Besprechungen oder mittels Personen, die in verschiedenen Teams arbeiten und/oder über Teammitglieder, die beide Funktionen innehaben. Ein erfolgreiches Team profitiert von den folgenden DevOps-Vorteilen: schnellere Markteinführungszeit, verbesserte Vorlaufzeit, höhere Deployment-Häufigkeit, höhere Qualität der Ergebnisse, bessere Teamkultur und verstärkte Zusammenarbeit zwischen Teams und Abteilungen.

DevOps-Teams bestehen normalerweise aus Personen, die sowohl im Entwicklungs- als auch Operations-Bereich über Kenntnisse verfügen. Einige Teammitglieder können besser Code schreiben, während sich andere vielleicht besser mit dem Betrieb und der Verwaltung der Infrastruktur auskennen. In großen Unternehmen kann jedoch jeder Aspekt von DevOps, der von CI/CD über IaaS bis hin zur Automatisierung reicht, mit einer Rolle besetzt werden. Dazu können Release-Manager gehören, die Anwendungen von der Entwicklung bis zur Produktion koordinieren und verwalten, oder Automatisierungsarchitekten, die die CI/CD-Pipeline eines Teams warten und automatisieren.

Was braucht man, um einem DevOps-Team beitreten zu können? Die Jobanforderungen für den Beitritt zu einem DevOps-Team entwickeln sich aufgrund neuer Technologien und Techniken weiter, gute DevOps-Teams zeichnen sich aber immer durch dieselben Eigenschaften aus. Solide technische Fähigkeiten, gute Kommunikation, Teamplayer-Mentalität und Anpassungsfähigkeit sind einige der wichtigsten Merkmale von fähigen DevOps-Fachleuten. Wahrscheinlich ist es wichtiger, mehrere dieser Eigenschaften vorweisen zu können, als ein enzyklopädisches Wissen über Kubernetes oder Git. Es schadet aber nicht, beides zu haben!

Ein weiterer Erfolgsfaktor ist eine Führungskraft, die bereit ist, ein Team, kollaborative Teams und das Unternehmen als Ganzes von DevOps zu überzeugen. Diese Person muss nicht unbedingt das Wort "Manager" im Titel führen. Das kann jeder sein, der skeptische Teammitglieder davon überzeugen möchte, dass die Lücke zwischen dem eigenen und einem externen Team geschlossen werden muss – seien es Entwicklungs-, Operations- oder Plattformteams.

Software zur Unterstützung deines Teams


Die tagtäglichen Aufgaben eines Teams geben zwar die DevOps-Toolkette vor, du brauchst aber eine Software, mit der du Arbeiten zwischen deinen Teams und dem Rest des Unternehmens verbinden und koordinieren kannst. Jira ist ein leistungsstarkes Tool, mit dem du Softwareentwicklungsprojekte planen, nachverfolgen und verwalten und deine unmittelbaren Teamkollegen und das erweiterte Unternehmen über den Status deiner Arbeit auf dem Laufenden halten kannst.

Anwendungen wie Zoom, Slack und Microsoft Teams sind ebenfalls notwendig, damit Teams insbesondere bei der Remote-Arbeit schnell und effizient kommunizieren können. In der Vergangenheit konnten Entwickler zum Operations-Team gehen und es nach dem Status eines Vorfalls fragen. Jetzt bieten virtuelle Kommunikations-Apps die Möglichkeit, sich umgehend zu informieren.

Du solltest allerdings dran denken, dass Software für die Teamzusammenarbeit ein Mittel, aber kein Zweck an sich ist. Wenn dein Unternehmen das volle Potenzial von DevOps, wie Transparenz, Vertrauen und Autonomie, nutzen möchte, braucht es nicht nur Tools, sondern auch Teams.

Shana Vu
Shana Vu

Shana is a product marketer passionate about DevOps and what it means for teams of all shapes and sizes. She loves understanding the challenges software teams face, and building content solutions that help address those challenges. If she's not at work, she's likely wandering the aisles of her local Trader Joes, strolling around Golden Gate, or grabbing a beer with friends.


Diesen Artikel teilen
Nächstes Thema

Lesenswert

Füge diese Ressourcen deinen Lesezeichen hinzu, um mehr über DevOps-Teams und fortlaufende Updates zu DevOps bei Atlassian zu erfahren.

Abbildung: DevOps

DevOps-Community

Abbildung: DevOps

Simulations-Workshop

Abbildung: Karte

Kostenlos loslegen

Melde dich für unseren DevOps-Newsletter an

Thank you for signing up