Was macht ein DevOps?

Was macht eigentlich …? In unserer neuen Rubrik wollen wir euch verschiedene Tätigkeiten in der IT-Branche vorstellen. Heute an der Reihe: Was macht eigentlich ein DevOps? Andreas Dürrschnabel gibt einen Einblick in seinen Berufsalltag und was es mit der Verbindung von „Development“ und „Operations“ auf sich hat.

Lieber Andreas, du bist DevOps bei der CONITAS. Bevor wir uns deinen derzeitigen Job genauer anschauen, erzähl uns doch zuerst einmal etwas über dich und deine Zeit vor der CONITAS. 

Schon mein ganzes Leben war von IT geprägt. In der Schule habe ich an mehreren AGs zu unterschiedlichen IT-Themen teilgenommen – und mit dem Wechsel ans Technische Gymnasium waren wir damals die ersten, die den Weg eines neuen IT-Profils gegangen sind. 

Danach habe ich eine Ausbildung zum IT-Systemelektroniker gemacht und als IT-Administrator auf einer Leitstelle für die Überwachung von Strom, Gas und Wasser gearbeitet. Aber ich wollte mein Wissen auf eine breitere Basis stellen. Also absolvierte ich im Anschluss noch ein Bachelor- und Master-Studium an der Hochschule Karlsruhe. Mit dem Verfassen meiner Masterarbeit habe ich die inhaltliche Welt der IT-Infrastruktur und -Administration verlassen und arbeitete fortan für knapp zwei Jahre als Softwareentwickler.  

Aber der Wunsch, wieder mehr mit Technik zu arbeiten, war so groß, dass ich zurück in die klassische Welt einer Bank mit eigenem Rechenzentrum gegangen bin. Dort fungierte ich als Schnittstelle und erster direkter Ansprechpartner auf operativer Ebene des IT-Betriebes für die Softwareentwicklung – und konnte trotz einiger Widerstände viele Dinge im Bereich der Automatisierung anstoßen und die Prozesse dadurch modernisieren. 

Wie bist du auf die CONITAS aufmerksam geworden und was hat das Unternehmen für dich so interessant gemacht? 

Tatsächlich war es so, dass in meinem alten Job personelle Veränderungen dazu geführt haben, dass wichtige Stützen für die weitere Ausrichtung und Modernisierung des Unternehmens weggefallen sind.  

Also habe ich mir intensiv Gedanken darüber gemacht, welche Richtung ich einschlagen und mit welchen inhaltlichen Themen ich mich zukünftig beschäftigen möchte. Um am Puls der Zeit zu bleiben, war für mich schnell klar, dass nur eine DevOps-Stelle infrage kommt. 

Ein ehemaliger Kollege machte mich auf die die CONITAS aufmerksam, die zum damaligen Zeitpunkt auf der Suche nach einem Senior Cloud DevOps war. Die Inhalte der Stelle passten zu meinen Vorstellungen – und auch in so einem Umfeld mit dieser Technologie zu arbeiten, empfand ich als sehr interessant. 

Nachdem ich die offene Unternehmenskultur, das moderne Arbeitsumfeld und die motivierten Kolleg*innen kennengelernt hatte, war für mich klar, dass ich mich hier einbringen möchte. Und diese Chance bekam ich dann auch im Frühjahr 2021. 

Du arbeitest bei der CONITAS als DevOps. Was genau verbirgt sich hinter dem Begriff? 

Ob es eine genaue oder „offizielle“ Definition gibt, weiß ich ehrlich gesagt nicht. Aber grundsätzlich ist DevOps als Begriff zunächst nichts anderes als ein Kofferwort aus den Begriffen „Development“ und „Operations“. Im Kern geht es darum, zwei unterschiedliche Welten in einer Rolle/Person zu vereinen. Entstanden ist diese Position im Cloud-Umfeld. Aber mittlerweile gibt es diese Stellen auch in klassischen Rechenzentren. 

Für mich ist DevOps in erster Linie eine Kulturfrage. Erst danach kommen geeignete Tools, Methoden und Technologien ins Spiel. Kürzlich hatte ich eine Unterhaltung, in der jemand DevOps mit Containern gleichgesetzt hat. Ich sehe das anders, denn DevOps ist auch ohne diese Technologie möglich. Das Beispiel verdeutlicht aber ganz gut, dass es eben keine allgemeingültige Definition gibt.

Aus der Historie heraus werden zwei unterschiedliche Welten und Sichtweisen zusammengeführt, um gewisse Defizite in der jeweiligen Weltanschauung zu überwinden. Ich nenne ein einfaches Beispiel: In der klassischen Welt möchte der Betrieb immer eine stabile Umgebung haben. Am besten nichts verändern und alles so lassen – frei nach dem Motto: „Never change a running system!“ Der Entwickler möchte allerdings irgendwann seine Software ausliefern und der Kunde möchte irgendwann auch sein bestelltes Produkt nutzen. Deshalb hatte man sich mehr oder weniger darauf geeinigt, das Produkt alle paar Monate in großen und aufwendigen Big-Bang-Verfahren auszurollen und zu hoffen, dass alles ohne Probleme funktioniert. Meistens tut es das aber nicht, weil etwas nicht so funktioniert oder umgesetzt wurde, wie gedacht oder vereinbart. Dieser Prozess macht den Weg zum finalen Produkt kosten- und zeitintensiv. 

Ein berühmter Dialog in diesem Zusammenhang, der auch als „Blame Game“ bekannt ist:  

Der Entwickler ist der Meinung, dass bei ihm alles super funktioniert hat. Warum das nun auf Produktionsebene nicht der Fall ist, kann er nicht beantworten, weil der Entwickler nicht weiß, was da anders ist. Die Produktion ist schließlich die Aufgabe des Betriebes!  

Der Betrieb entgegnet, dass die Software nicht funktioniert und das Problem vom Entwickler gelöst werden muss, der diese geliefert hat.  

So geht es dann hin und her. Allerdings interessiert den Kunden nicht die Schuld. Dieser möchte eine lauffähige Version seiner Bestellung. 

Und hier setzt DevOps an. Die heutige Software-Entwicklung (und auch mein Portal-Team) arbeitet nach agilen Methoden, die es erlauben, sich vom klassischen Wasserfall oder V-Modell zu lösen. Wir stellen dem Kunden in kurzen Zyklen Software bereit, um schnell und in guter Qualität einen Mehrwert zu bieten.  

Es findet ein Wandel statt. Weg von langen Planungs-, Software-Entwicklungs- und Qualitätszyklen sowie großen Ausrollverfahren, hin zu sehr kurzen und gegebenenfalls unregelmäßigen Artefaktlieferungen. Dafür braucht es andere Möglichkeiten, als das bisher bekannte Vorgehen mit all seinen Schwächen.  

In diesen kurzen Zyklen möchten wir kontinuierlich und schnell Feedback vom Kunden. Dies bekomme ich aber nur, wenn der Kunde auch zeitnah einen Nutzen und somit Mehrwert hat. Dieser entscheidet über den Erfolg und die Akzeptanz des Produktes und schlussendlich den Erfolg des Unternehmens. 

Das Portal-Team bei der CONITAS erkennt schnell, falls eine Entwicklung in die falsche Richtung geht – und kann darauf reagieren. Somit werden Ressourcen und Mittel effizient eingesetzt. Um dies zu ermöglichen, braucht es eine effizientere und effektivere Zusammenarbeit zwischen Development, IT-Operations und Qualitätssicherung – und damit auch die Stelle des DevOps. 

Wie sieht dein beruflicher Alltag aus? 

Mein beruflicher Alltag ist spannend und vielfältig. Es gibt jeden Tag neue und andere Themen. Kein Tag gleicht dem anderen.  

Im Endeffekt findet sich genau der zuvor beschriebene Ansatz wieder: Im Portal-Team wird im Zwei-Wochen-Rhythmus Software für unsere Kunden entwickelt und derzeit fix einmal die Woche auf Produktion ausgerollt. Weitere Rollouts sind ohne Probleme möglich, sofern erforderlich. Um dies realisieren zu können, ist es wichtig, dass die ganzen Prozesse zuverlässig funktionieren.  

Ich habe für mich festgelegt, dass ich immer mit Routine-Aufgaben starte. Das beginnt morgens mit der Sichtung und Kontrolle der nächtlichen Aktivitäten. Dort laufen Build- und Qualitätsprozesse zu der von uns entwickelten Software. Tritt ein Fehler auf, muss dieser analysiert und behoben werden, um jeder Zeit handlungsfähig zu bleiben. Außerdem gibt es noch die Produktion, die bei Bedarf immer Aufmerksamkeit verdient hat.  

Damit wir schnell ausrollen können, müssen Infrastruktur und Prozesse weiterentwickelt werden. Die Entwickler*innen und Kolleg*innen vom IT-Betrieb haben Fragen oder Anforderungen. Deshalb stimmen wir uns jeden Morgen in einem kurzen Status-Meeting ab und planen unsere Aktivitäten zwischen Betriebs- und Software-Entwicklungs-Themen zusammen. 

Ich hatte bereits erwähnt, dass Dev und Ops zusammengeführt werden. Daher ist auch die ganze Infrastruktur in Software geschrieben. Es ermöglicht dem Entwickler Anpassungen vorzunehmen, die nach einem Vier-Augen-Prinzip produktiv genommen werden. Ganz wie bei der klassischen Software-Entwicklung. 

Neben diesen Aufgaben gehört auch ein Verständnis für IT-Sicherheit dazu. Wir haben strenge regulatorische und IT-Sicherheits-Vorgaben, die es zu erfüllen gilt. All das muss berücksichtigt, koordiniert und umgesetzt werden. Am Ende der Woche ist dann der Status-Bericht bezüglich technischer Sicherheitsfragen vorzubereiten und zu präsentieren. Zwischen Meetings- und Abstimmungsrunden mit unterschiedlichen technischen Schnittstellen zum Portal arbeite ich auch aktiv an den technischen Aufgaben. 

Welche Qualifikationen/Fähigkeiten sind in deinem Tätigkeitsfeld besonders wichtig? 

Der Begriff DevOps gibt es vor: Ich muss beide Welten kennen und leben. Es ist unverzichtbar, eine Leidenschaft fürs Programmieren und zum Scripting zu haben. Es geht in diesem Umfeld nichts ohne Automatisierung. Das ist wie beim Sport: Jeder strebt das perfekte Spiel an – und daran wird permanent gearbeitet.  

Als DevOps koordiniere ich das Zusammenspiel zwischen allen Beteiligten – und gieße das in eine möglichst vollständige Automation. Natürlich muss das dann alles auch gepflegt und weiterentwickelt werden. Da wir unsere Portal-Software im eigenen Rechenzentrum betreiben, ist es von Vorteil, wenn ein Grundverständnis von Hardware und Netzwerk, über OS, bis hin zu unseren selbstentwickelten Anwendungen sowie den Standardtools am Markt vorhanden ist.  

Aber alles alleine muss (und kann) niemand wissen. Dahinter steht ein richtig gutes Team, das sich gegenseitig bei Fragen mit Rat und Tat zur Seite steht. Bei uns ist deshalb neben Kommunikation auch organisatorisches Talent wichtig. 

Ein Studium kann hilfreich sein, aber auch über eine Ausbildung kann der Weg in dieses Tätigkeitsfeld gegangen werden. Ich glaube, dass ich für mich den richtigen Weg gewählt habe. Nach den vielen Themen im IT-Betrieb, den Sprung temporär auf die andere Seite als Entwickler zu wagen, hat meinen Horizont unheimlich erweitert. In beiden Welten gearbeitet zu haben, hat mir sehr geholfen, ein Verständnis für diese Position zu entwickeln. Der Rest macht dann die Erfahrung und der Faktor Zeit, gepaart mit der Offenheit, Neues zu lernen. 

 

Titelbild: Olemedia/iStock