Site Reliability Engineer: Wer den Hausmeister fürs E-Commerce macht

„Never change a running system“ war einmal: Heute stehen die Mitarbeiter der IT oft vor der doppelten Herausforderung, die IT-Infrastruktur permanent den sich ständig verändernden Erfordernissen anzupassen und gleichzeitig einen störungsfreien Betrieb zu gewährleisten. Site Reliability soll’s richten.

Hausmeister im E-Commerce

Von Dirk Bongardt

Die Vorstellung, ein Chirurg könne einen Patienten am offenen Herzen operieren, während dieser gerade einen Marathon läuft, ist einigermaßen absurd. IT-Mitarbeiter stehen in vielen Unternehmen aber vor einer vergleichbaren Aufgabe: Sie müssen die Systeme und Prozesse optimieren, mitunter ersetzen oder erweitern, ohne dass die Geschäftstätigkeit des Unternehmens auch nur für einen Augenblick unterbrochen wird. Einem Chirurgen steht ein Anästhesist zur Seite, damit der Patient die Operation überlebt und möglichst nichts davon mitbekommt. Im Unternehmen kommt diese Aufgabe dem Site Reliability Engineer zu – mit dem Unterschied, das sein Patient nicht schläft, sondern läuft.

Wenn das einmal nicht funktioniert, wird es augenfällig vor allem bei den Big-Tech-Unternehmen, die im Fokus der Öffentlichkeit stehen. Als die Fitnesstracker-Apps von Garmin im Sommer 2020 für mehrere Tage nicht richtig arbeiteten, waren Image- und letztlich auch materieller Schaden enorm, und auch schon als eine Reihe von Google-Diensten im Dezember letzten Jahres nur für ein paar Stunden nicht erreichbar waren, löste das – von Google unerwünschte – öffentliche Aufmerksamkeit aus.

Angemessene Zuverlässigkeit

Erstmals fiel der Begriff „Site Reliability Engineering“ im Jahr 2003 im Hause Google. Damals suchte man im Unternehmen – bei weiterhin bestehender Trennung von Softwareentwicklung und Service-Management – nach einer neuen Ausgestaltung dieses Service-Managements. Ein wesentliches Merkmal des Site Reliability Engineering ist die Einteilung der Aufgaben des verantwortlichen Mitarbeiters. Exakt 50 % seines Zeitbudgets sind dem Tagesgeschäft vorbehalten, die andere Hälfte seiner Zeit verbringt er mit Optimierung und Automatisierung der Prozesse und Services.

Im Mittelpunkt des Betriebsansatzes – ebenso wie des Begriffs – steckt die „Reliability“, also die Zuverlässigkeit. Beim Site Reliability Engineering geht es aber regelmäßig weder um das Herstellen einer hundertprozentigen Zuverlässigkeit noch darum, die höchste technisch erreichbare Präzision anzustreben, sondern immer um einen angemessenen Grad an Zuverlässigkeit.

So kann zum Beispiel eine Fehlfunktion im Höhenmesser eines Verkehrsflugzeugs viele Menschenleben kosten, hundertprozentige Zuverlässigkeit ist hier unverzichtbar. Führt die Suchfunktion in einem Onlineshop manchmal zu falschen Ergebnissen, ist das zwar ärgerlich, hundertprozentige Zuverlässigkeit wäre in diesem Kontext aber mit deutlich höheren Kosten verbunden, als es ein eventuelles Mehr an Umsatz rechtfertigen würde. Welcher Grad an Zuverlässigkeit in den verschiedenen Kontexten angemessen ist und welche Metriken zur Bestimmung der Zuverlässigkeit herangezogen werden, muss der Site Reliability Engineer in enger Kommunikation mit den jeweiligen Stakeholdern abstimmen.

ITuK1.2021.gesamt.neu.jpg

Schwarz auf Weiß
Dieser Beitrag ist zuerst in unserer Magazin­reihe „IT & Karriere“ erschienen. Einen Über­blick mit freien Down­load-Links zu sämt­lichen Einzel­heften be­kommen Sie online im Presse­zentrum des MittelstandsWiki.

Zur Abstimmung gehört auch das Vereinbaren von Fehlerbudgets. Jede Änderung, natürlich auch jede Optimierung, birgt das Risiko eines vorübergehenden Ausfalls. Im Fehlerbudget ist festgehalten, wie viele solcher Ausfälle in einem Zeitraum (Monat oder Quartal) tolerabel sind. Ist das Fehlerbudget für einen Zeitraum erschöpft, verzichtet der Site Reliability Engineer bis zum Ende des Zeitraums auf Änderungen und wechselt den Fokus auf die Stabilisierung bestehender Systeme.

Site Reliability und DevOps

Die Ausgestaltung von Site Reliabilty Engineering, wie sie bei Google entwickelt wurde und praktiziert wird, ist im gleichnamigen Buch aus dem O’Reilly-Verlag zu finden. Selbstredend unterscheiden sich die Erfordernisse und Herausforderungen der meisten anderen Unternehmen erheblich von denen bei Google. Viele Unternehmen haben deshalb die grundsätzlichen Herangehensweisen adaptiert und in der praktischen Umsetzung ihrer eigenen Infrastruktur, aber auch ihrer Unternehmenskultur angepasst.

Site Reliability Engineering wird oft im Zusammenhang mit der DevOps-Philosophie genannt. Gemeinsam ist beiden Ansätzen der Schwerpunkt auf Überwachung und Automatisierung. Daher ist es häufig einfacher, SRE-Prinzipien und -Methoden in ein Unternehmen zu importieren, das bereits eine DevOps-Methode verwendet. Synonyme sind die beiden Begriffe jedoch nicht: Vielmehr ist Site Reliability Engineering ein Ansatz, bei dem die Zuverlässigkeit im Fokus steht, während DevOps eher eine kulturelle Bewegung ist, die die Silos aufbrechen will, die der Entwicklung und dem Betrieb zugeordnet sind.

Kurzübersicht: Das macht ein Site Reliability Engineer

Wichtigstes Tätigkeitsfeld des Site Reliability Engineer ist die kontinuierliche Automatisierung manueller Aufgaben und die kontinuierliche Integration und Auslieferung. Er übernimmt die Verantwortung für Betriebszuverlässigkeit und Automatisierung während des gesamten Infrastruktur-Lebenszyklus, überwacht Bereitstellung und Betrieb der Releases und vereinbart mit den Stakeholdern den angemessenen Grad an Zuverlässigkeit und die Fehlerbudgets.

Voraussetzungen sind im Allgemeinen

  • ein abgeschlossenes IT-Studium oder vergleichbare Kenntnisse,
  • Berufserfahrung in der Softwareentwicklung und/oder Systemadministration,
  • vertiefte Kenntnisse zu typischen Infrastrukturelementen wie Betriebssysteme oder Netzwerke sowie Betriebsprozesse,
  • Erfahrung mit agilen Arbeitsmethoden,
  • Kommunikations- und Teamfähigkeit.

Wer eignet sich?

Die Tätigkeitsschwerpunkte eines Site Reliability Engineer variieren inhaltlich abhängig von der Infrastruktur seines Arbeitgebers, und entsprechend unterschiedliche Kenntnisse setzen die Unternehmen voraus. Der typische Kandidat für diese Position ist ein Softwareentwickler, der über tiefgehende Kenntnisse zu typischen Infrastrukturelementen wie Betriebssysteme oder Netzwerke sowie Betriebsprozesse verfügt. Im allgemeinen sollten Bewerber die folgenden Hard Skills mitbringen:

  • Erfolgreich abgeschlossenes IT-Studium oder vergleichbare IT-Ausbildung
  • Expertise im Bereich der Backend- bzw. Frontend-Entwicklung
  • Fundierte Kenntnisse in der Programmierung mit Technologien wie Java/J2EE, React, Spring Boot, Angular, HTML, CSS, JavaScript, C#, .Net
  • Fundierte Kenntnisse moderner Webtechnologien (TypeScript, Python, Docker, React, Message Queues) sowie Nutzung von Continuous Deployment
  • Projekterfahrung in der agilen Softwareentwicklung und dem Aufbau komplexerer Web-Anwendungen

In den Stellenausschreibungen sind mitunter noch speziellere Kenntnisse gefordert. Zu den unverzichtbaren Soft Skills gehören unter anderem eine gute Kommunikationsfähigkeit und die sozialen Kompetenzen, die eine erfolgreiche Teamarbeit erst ermöglichen. Viele Arbeitgeber legen auch Wert auf eine möglichst breite Erfahrung, von der Softwareentwicklung bis hin zur Systemadministration.

Zuverlässigkeit ist mir ein Anliegen

Nicht alle HR-Abteilungen unterscheiden klar zwischen Site Reliability und DevOps: Wer sich in den einschlägigen Stellenbörsen umsieht, findet etliche Stellenangebote, in denen zum Beispiel nach einem „DevOPS Engineer/Site Reliability Engineer (f/m/d)“ gesucht wird. Wer aber mit einer der beiden Philosophien vertraut ist und die Qualifikationen mitbringt, kann auf jeden Fall eine Bewerbung wagen. Die Verdienstmöglichkeiten für geeignete Kandidaten liegen, abhängig von Branche, Berufserfahrung und Verhandlungsgeschick, bei Jahresgehältern zwischen 52.000 und 72.000 Euro brutto. Damit kann man zuverlässig rechnen.

Dirk Bongardt-Quadrat.jpg

Dirk Bongardt hat vor Beginn seiner journalistischen Laufbahn zehn Jahre Erfahrung in verschiedenen Funktionen in Vertriebsabteilungen industrieller und mittelständischer Unternehmen gesammelt. Seit 2000 arbeitet er als freier Autor. Sein thematischer Schwerpunkt liegt auf praxisnahen Informationen rund um Gegenwarts- und Zukunftstechnologien, vorwiegend in den Bereichen Mobile und IT.


Dirk Bongardt, Tel.: 05262-6400216, mail@dirk-bongardt.de, netknowhow.de

Nützliche Links