Der Synesty “DevOps” – ein Mitarbeiterinterview

Wer bist du?

Hi, ich bin der Thomas und wohne in Jena. Angefangen habe ich bei Synesty als Praktikant im Jahr 2014. Damals war ich in der Ausbildung zum professionellen Handbuchleser (Fachinformatiker für Anwendungsentwicklung). Seit Oktober 2015 bin ich bei Synesty fest angestellt. Zurzeit bin ich im Bereich des “DevOps” bei Synesty tätig.

“DevOps” – Was ist das?

“DevOps” ist ein Kunstwort bestehend aus development (englisch für Entwicklung) und operations (englisch für IT-Betrieb). Der Begriff “DevOps” hat keine klare Definition. Bei einer Suche im Internet findet man viele verschiedene Definition. Für manche Menschen ist “DevOps” auch eher eine Art von Philosophie und kein klares Vorgehensmodell oder eine bestimmte Rolle die eine Person ausführt.

Was bedeutet nun “DevOps” bei Synesty?

Mein Tätigkeitsbereich umfasst viele klassische Systemadmin Aufgaben wie z.B das Einspielen von Updates, Monitoring (überwachen) der Server und das Erstellen von Backups sowie deren Überprüfung. Bei Synesty betreue ich alle Server und darüber hinaus auch Workstations die, die Mitarbeiter bei Synesty verwenden.

Als DevOps arbeite ich eng mit dem Entwicklerteam zusammen und habe deswegen einen tiefen Einblick in den Code der Synesty Studio-Software. Änderungen am Code nehme ich aber nur selten vor, mein Fokus liegt mehr im Bereich der Einrichtung und Konfiguration neuer (Test)-Systeme.

Ich schreibe Scripte und erstelle Ansible playbooks. Ansible¹ ist ein Open-Source-Tool, das zum automatischen konfigurieren und administrieren von Systemen benutzt wird.

Ein weiterer Teil meiner Arbeit umfasst das Deployment (ausrollen einer neuen Studio Version). Das Deployment findet in Zusammenarbeit mit dem Entwicklerteam statt. Unser Ziel ist es den deployment Vorgang möglichst kurzzuhalten und ohne Downtime durchzuführen. Was uns auch ganz gut gelingt, denke ich. Um das zu erreichen, benutzen wir verschiedene Tools wie z.B. Gitlab als Codeversionsverwaltung, Jenkins (CI/CD)² und Ansible.

Wie sieht ein typischer Arbeitstag bei dir aus?

Meist komme ich zwischen 9:00 – 9:30 Uhr im Büro an. Als erstes richte ich meinen Blick auf unser Monitoring-Dashboard, welches gut sichtbar im Büro hängt. Dann dreh ich eine kleine Runde durchs Büro und begrüße meine Arbeitskollegen. Im morgendlichen Gespräch mit den Kollegen erfahre ich bereits von eventuellen Problemen.

Im Anschluss daran überprüfe ich meine E-Mails und schaue mir noch mehr Dashboards an. Zu meiner täglichen Routine gehört auch das Lesen von News. Es ist sehr wichtig informiert zu sein. Fast täglich liest man von neuen Sicherheitslücken. Ein Blick in die News-Aggregatoren ist also genauso wichtig für mich, wie ein Blick in E-Mails oder aufs Monitoring.

Den größten Teil meiner Arbeitszeit befinde ich mich in der Bash². Die Bash ist eine freie Linux Konsole. Viele meiner Aufgaben kann ich mit Hilfe der Bash bewältigen.

Was ist dein Aufgabenbereich?

Ein weiteres großes Thema ist IT-Security.  Sicherheit ist  für mich kein erreichbarer Zustand, sondern ein Prozess der auf kontinuierlicher Verbesserung aufbaut. Deswegen umfasst die Arbeit als “DevOps” auch viel Recherche und ständige Weiterbildung. Ich arbeite nicht nur in der  IT sondern “lebe” sie auch. Denn auch im privaten beschäftige ich mich gern mit Themen der IT, es ist also auch mein Hobby.

Fernab von “DevOps” Tätigkeiten, kümmer ich mich auch um Themen der Datenschutz-Grundschutzverordnung (DSGVO). Ich empfinde es als wichtig, dass Personen mit Admin Zugang ein gewisses Maß an Wissen über Datenschutz haben.

Welche Tools benutzt du täglich?

Wie bereits erwähnt, mein täglich Brot ist die Bash. Der Kommandozeileninterpreter ist mein Hauptwerkzeug. Egal ob ich mal schnell auf einen Server, Config-Dateien anpassen muss, oder ich eine Dokumentation zu einem Tool lese (Manpage). Meist geschieht es immer mit der Bash. Zum schreiben von Scripten oder Ansible plays benutzte ich dann aber doch lieber den Atom Editor. Auch wenn es mit der Bash möglich wäre, so bietet mir der Atom Editor einige Vorteile wie z.B Git integration und Syntax highlightning für viele Sprachen.

Als typische Devops-Tools verwende ich Jenkins (CI/CD)², Gitlab (code-repository, ticket-system), Ansible (Orchestrierung) und Prometheus + Grafana für das Monitoring. Natürlich darf in der Aufzählung auf keinen Fall Docker fehlen. Für “das schnelle Testen und ausprobieren” verwende ich mittlerweile Docker Container.

Welche Berührungspunkte gibt es mit Synesty Studio?

Da man Software nicht anfassen kann, keine. :P Kleiner Spaß, das Backend vom Synesty Studio sehe ich in der Tat eher selten. Im Synesty Studio sehe ich eigentlich immer nur den Admin Bereich.

Nenne drei Hashtags die deine Arbeit bei Synesty beschreiben würden!
#DevOps #WorksOnMyMachine #¯\_(ツ)_/¯

 

¹ Ansible

²(CI) Continuous Integration / Continuous Delivery (CD)

³ Freie Linuxs Shell