Was macht ein DevOps Engineer? Felix B. im Interview
Felix B.
Background
Wie bist du zum Programmieren gekommen?
Seit jeher haben Computer eine faszinierende Wirkung auf mich. Als dann unter dem Tannenbaum der Familiencomputer aufgebahrt wurde und ich endlich verstanden habe, warum mein Vater ISDN geholt hat, war es um mich geschehen. Richtig "klick" hat es aber erst mit Blizzard's Diablo II gemacht – ein paar Freunde und ich wollten herausfinden, wie wir dieses Spiel spielen können, ohne es tatsächlich zu spielen :)
Nach dem Abitur stellte sich dann die Frage, was ich studieren soll. Zwar habe ich lange mit Chemie geliebäugelt, habe mich dann aber doch für Informatik entschieden – da ich nicht der Typ bin, der den ganzen Tag im Labor steht.
In welchem Alter hast du damit begonnen?
Im zarten Alter von 13.
Für welche Programmiersprache konntest du dich zuerst begeistern?
Python
Dein DevJob
Worum geht es in deinem DevJob genau?
Kurz: Automatisierung
Lang: die zig Anwendungen die durch Entwickler gecodet und gepflegt werden, wollen gebaut und irgendwie auf Zielsysteme deployed werden.
Meine Aufgabe ist es den Prozess von source code über Kompilierung bis zum tatsächlichen roll out auf Produktivsysteme automatisiert und einfach zu gestalten, so dass man jederzeit Updates oder Hotfixes ausrollen kann – ohne dass der Kunde es merkt.
Ein weiteres buzz word darf natürlich nicht fehlen: infrastructure as code – die Zeiten von dedizierten VMs sind zum Glück vorbei!
Was gefällt dir besonders gut an deinem DevJob?
Am schönsten ist es, wenn ein Plan aufgeht: Hat man zum Beispiel einen Prozess, welcher bislang stets manuell getätigt wurde und mehrere Stunden in Anspruch genommen hat soweit automatisiert, so dass er innerhalb weniger Minuten durch "Magie" erledigt werden kann, spart man nicht nur Zeit und Geld, sondern auch Nerven.
Welche Herausforderungen gibt es speziell in deinem DevJob?
Eines der größten Probleme für mich ist es aus der Vielfalt an möglichen Lösungen den besten für das jeweilige Problem zu finden, ohne bereits existierende Prozesse negativ zu beeinflussen. Ebenfalls erwähnenswert: technical debt! Viele gute Ideen müssen aufgrund fehlender Bereitschaft Altlasten abzubauen auf Eis gelegt werden, was durchaus zu Frust führen kann.
Was sind deine bevorzugten Technologien?
Python ist und bleibt meine große Liebe – da ich mich aber derzeit fast ausschließlich in der .NET Welt bewege, muss ich auch sagen dass C# und PowerShell ihre Daseinsberechtigung haben.
Vor allem das vor Kurzem veröffentliche .NET 5 ist ne prima Sache!
Windows oder Mac?
Spielt doch heute keine Rolle mehr. Hauptsache ich habe eine vollwertige shell.
Weiterentwicklung
Welche Dev Projekte hast du außerhalb deiner Arbeit?
Außer ein paar Spaßprojekten mit dem Raspberry pi und kleineren POCs versuche ich tatsächlich außerhalb der Arbeit auch mal abzuschalten.
Familie, Hund und me time sind wichtiger.
Wie hältst du dich für deinen Job am Laufenden?
Durch Lesen und ausprobieren. Es gehört zum Job eines Entwicklers, sich auch mit neuen Technologien auseinander zu setzen, Doku zu lesen und diese bei Problemstellungen einzusetzen. Konferenzen (online oder in persona) und natürlich das Internet (stack overflow, reddit, etc.) haben alle Informationen, die man benötigt um auch mit neuen Technologien Fuß zu fassen.
Wo siehst du dich in der Zukunft?
Da man als DevOps immer auch ein bisschen über den Tellerrand blicken muss, könnte ich mir durchaus auch eine Architektenrolle vorstellen. Derzeit bin ich aber mit meinen Aufgaben mehr als zufrieden und möchte vorerst fleißig weiter automatisieren <3
Tipps für Anfänger
Wie beginnt man Programmieren und womit sollte man beginnen?
- step 1: obige frage googlen
- step 2: sich ein ansprechendes Tutorial / Projekt aussuchen
- step 3: machen
- step 4: gehe zu step 2
rinse&repeat
Welche Skills sollte man für deinen Job mitbringen?
Motivation, Frustrationstoleranz, Ausdauer, Mustererkennung und Konzentration.
Welche Ausbildung ist deiner Meinung nach sinnvoll um deinen DevJob ausüben zu können
Als DevOps Engineer ist analytisches Denken äußerst wichtig – eine Ausbildung dazu fällt mir spontan nicht ein :)
Programmieren zu können hilft natürlich, aber wie ich finde ist ein breites Wissen für DevOps wichtiger als Expertenwissen in einem Spezialgebiet.
Dev Interview Info
Felix B.
DevOps Engineer