DevOps, Open Source, Linux, Docker, Kubernetes, Amazon AWS, Automation, CI/CD, Monitoring
Aktualisiert am 14.02.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.11.2024
Verfügbar zu: 100%
davon vor Ort: 100%
DevOps
Linux
Container
Deutsch
Muttersprache
Englisch
fliessend in Wort und Schrift
Französisch
Grundkenntnisse

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Bevorzugt: 100% remote
Remote mit Einsätzen vor Ort <= 1x/Monat
Vor Ort: Region München oder Allgäu

Arbeitserlaubnis: EU Büger

Nur Projekte innerhalb der EU

möglich

Projekte

Projekte

2 Monate
2022-08 - 2022-09

GitLab CI/CD

DevOps Python Linux Shell Scripting Atlassian APIs ...
DevOps
  • Wartung und Erweiterung von Gitlab Pipelines, die eine Webanwendung bauen und deployen
  • Ansprechpartner für die Entwicklerteams bei Problemen mit Build und Deployment
Artifactory Gitlab CE Gitlab K8s Executor Atlassian JIRA Selenium
Python Linux Shell Scripting Atlassian APIs Linux Kubernetes Jira Confluence
remote
1 Jahr 1 Monat
2021-02 - 2022-02

Cloud Infrastructure Architecute and Automation - Health sector company

Senior DevOps Engineer
Senior DevOps Engineer

  • Create a high-available, auto-scaling backend platform for a mobile Health app in Amazon AWS based on ECS, ECR, RDS Postgres and ALB.
  • Create the next-generation central data storage and data processing platform in Amazon AWS and a private OpenStack-based cloud.
    Tech Stack: MongoDB relica set, AWS IAM/Organisations, AWS EKS,S3, CloudFront, Route53.
    Kubernetes: Ingress, Helm, ArgoCD, ArgoWorkflows, Tekton, Prometheus, Grafana.
    Terraform, Ansible, Ubuntu Linux
  • Help port to a pyhsician's software from an on-premise Windows solution to cloud based solution.
    Ubuntu Linux, VirtualBox, Ansible, Docker, K8s, Java, Springboot, Maven

10 Monate
2018-10 - 2019-07

Monitoring-Stack Provisioning Rewrite & Entkoppelung von Icinga2 Production und non-Production

VMWare CentOS 6/7 RedHat Enterprise Linux ...

Nach dem Umzug von non-root Servern in fremden Rechenzentren auf Hardware in eigenen RZ, kann der Monitoring-Stack per Package Manager installiert werden.
Das ist Voraussetzung für viele weitere Verbesserungen, z.B. Versions-Updates, Authentication und Authorization via Redhat IdentityManagement, Entkoppelung von Production- und non-Production Umgebung.

  • Sourcecode von Subversion nach git (Atlassian bitbucket) umziehen
  • Rewrite des Ansible Provisioning Codes von selbstkompilierten Anwendungen auf Installationen via Package Manager
  • Entkoppelung von Production- und non-Production Umgebung durch separate Icinga2 Distributed Cluster
  • Verschlankung der ausufernden Monitoring Konfiguration durch Vererbungskonzepte in Ansible
  • Icinga2 Authentication und Authorization über das firmenweite Redhat IdentityManagement
  • Rundeck als grafisches Frontend für Ansible Runs mit versionierter Rundeck Konfiguration in git
  • Tagesgeschäft mit Useranfragen, Troubleshooting und Ticketbearbeitung

Key Win:

  • Provisioning des kompletten Monitoring-Stacks via OS Package Manager inkl. Update auf aktuelle Versionen
  • Entkoppelung von Icinga2 Production- und non-Production Umgebung
  • Vereinfachung der Icinga2 Konfiguration und Routinearbeiten
VMWare CentOS 6/7 RedHat Enterprise Linux RedHat Identity Management Icinga2 Distributed Cluster IcingaWeb2 Icinga2 BusinessProcesses Canoo Webtest Graphite Grafana ELK Ansible Puppet Rundeck Shell Python Perl Atlassian Suite (Jira/ Bitbucket/ Confluence)
Payback
10 Monate
2017-05 - 2018-02

Automatisierung SAP Commerce Cloud Services

Site Reliability Engineer CentOS Linux Vagrant/Virtualbox Apache/mod_proxy ...
Site Reliability Engineer

Ich bin kommisarischer Teamlead eines neu gegründeten, internationalen SRE Teams mit Einheiten Europa, Nordamerika und Asien. Ziel ist das automatisierte Deployment von internen Applications, die beim Ausrollen und im Betrieb von Hybris Shoplösungen genutzt werden. Außerdem soll das Provisionieren der Server automatisiert werden, auf denen die internen Applications laufen.

  • Konzept einer automatisierten Serverprovisionierung mit Ansible.
  • Konzept und Architektur eines Build- und Deployment-Systems basierend auf Jenkins als Buildtool und Ansible als Deploymenttool.
  • Ich schreibe den Großteil des Deploymentcodes in Ansible
  • Um den Deploymentcode effizient zu Entwickeln und Testen, baue ich eine lokale, Vagrant/Virtualbox basierte Umgebung, die jedes Teammitglied nutzt.
  • Anpassung bestehender Java/Maven Applikationen auf automatisches Building und Deployment mit Jenkins und Ansible
  • Abstimmung mit anderen involvierten Teams, Dokumentation des neuen Build-/Deploymentsystem, Einführung neuer Teammitglieder ins Build-/Deploymentsystem
  • Support und Troubleshooting des Entwicklerteams in allen Linuxfragen

Key Win:

  • Automatisiertes Server-Provisioning
  • Continous Integration, automatisietes Deployment
CentOS Linux Vagrant/Virtualbox Apache/mod_proxy Java/Maven Maven Jenkins Rundeck Shell Python Atlassian Suite (Stash; Confluence; Jira)
Hybris AG
3 Monate
2017-02 - 2017-04

Konzept und Realsierung eines Docker Swarms und einer Deployment-Pipeline für den Swarm

Docker Swarm inkl. Deployment Pipeline CentOS Linux Docker Docker Swarm ...
Docker Swarm inkl. Deployment Pipeline

Ein internes Tool zur Programmgestaltung soll hochverfügbar und skalierbar gemacht werden. Die Entwickler nutzen bereits Docker, um ihren Code manuell auf Test- und Productionrechner zu deployen. Das Tool soll über automatisierte Build- und Deployment-Pipelines gebaut und deployed werden.

  • Konzept/Umsetzung eines Docker Swarms und einer Docker Custom Registry für die Server des Tools auf physikalischen Servern.
  • Konzeption und Programmierung einer Jenkins Deployment-Pipeline, die aus dem Code der Entwickler Docker Container baut, welche in einer custom Docker Registry veröffentlicht werden, von der aus sie von Jenkins via Ansible in den Docker Swarm deployed werden.
  • Ansible Roles und Plays erstellen für das Provisionieren aller Server und das Deployment der Docker Container im Docker Swarm

Key Win:

  • Das Tool läuft hochverfügbar, skalierbar und ausfallsicher
  • Manuell angestoßener Deploymentprozess in Staging- und Production-Umgebungen, automatisiertes Deployment für die Development Umgebung
CentOS Linux Docker Docker Swarm Docker Custom Registry Vagrant/Virtualbox (für lokales Testen) PostgreSQL Python NodeJS Jenkins/Jenkins Pipeline PlugIns (scripted mit Groovy) Ansible git/Github
Sat1/Pro7
10 Monate
2015-06 - 2016-03

Neue Monitoring Infrastruktur

Monitoring Infrastruktur RHEL Linux Ansible Vagrant ...
Monitoring Infrastruktur

Die Applikationen laufen auf hunderten von Servern in verschiedenen Rechenzentren weltweit. Am Stammsitz München werden Server- und Business-Metriken für alle Rechenzentren und Länder von einem zentralen Monitoringsystem erhoben und ausgewertet. Eine der Herausforderungen sind die strengen Sicherheitsrichtlinen der AMEX.

  • Technical Project Lead
  • Konzept und Realisierung eines automatisierten Builds und Deployments der Monitoring-Infrastruktur und -Konfiguration mit Ansible
  • Einrichten einer Vagrant-basierten Test- und Entwicklungsumgebung für das Deployment der Icinga2-Komponnenten mit Ansible
  • Planung und Umsetzung eines Icinga2 Distributed Cluster
  • Portierung der bestehenden Icinga1 Lösung auf dieses Cluster

Key Win:

  • Ein geordneter, versionierter und dokumentierter Build- und Deploymentprozess der Monitoring Komponenten führt zu einem wartbaren und leicht erweiterbaren Monitoring-System.
  • Icinga 1 durch dessen Nachfolger Icinga 2 ersetzt.
RHEL Linux Ansible Vagrant Icinga 1+2 Gearman Nagvis Business Process View Thruk Apache2 Graphite Grafana Postgres Python Shell Atlassian (Jira Confluence) Subversion
Payback
3 Jahre 6 Monate
2011-01 - 2014-06

verschiedene Projekte

Softwareentwicklung und Operations Debian Linux CentOS Vmware ...
Softwareentwicklung und Operations

Umbau der Applikation auf eine Service Orientierte Architektur

Nicht zuletzt für die mobilen gutefrage.net Apps wird die Kernapplikation neu geschrieben. Statt der vom PHP Framework vorgegebenen geschlossenen Architektur, wird eine modulare, service orientierte Architektur benötigt. Dazu werden große Teile der Applikation neu geschrieben, die nach und nach den bestehenden Code ersetzen. Außerdem können im Rahmen von Feature Switching Teile des Codes nach belieben an- und abgeschaltet, bzw. nur für bestimmte Nutzergruppen aktiviert werden. Als Sprache kommt Scala auf der Java Virtual Machine mit Finagle als Framework zum Einsatz.

  • Änderungen am Server-Provisioning in Chef
  • Monitoring für die Services
  • Tagesgeschäft mit Deployments, Troubleshooting und Tickets lösen

Key Win:

  • gemeinsame Code- und Infrastrukturbasis für Web- und Mobile App
  • Continous Deployment
  • Feature Switching

Technology Stack Umbau und Rechenzentrumsumzug Gutefrage.net

Nach der Entscheidung sich vom bisherigen Hoster/ Operationsdienstleister zu trennen, um die die komplette Infrastrutur in Eigenregie zu verwalten, wid ein 4-köpfiges, Operations Team gegründet, um

  • den Umzug in ein neues Rechenzentrum zu planen und durch zu führen, inkl Rechenzentrums- und Hardwareauswahl
  • die Provisionierung der initial ca. 80 Server und ca. 12 Servertypen zu automatisieren
  • auf die rasant wachsenden Zugriffszahlen zu reagieren durch radikalen Umbau des Technology Stacks auf leistungfähige, skalierbare, ausfallsichere Technologien
  • den Deploymentprozesses zu revolutionieren; von einem SCM Checkout hin zu einer gescripteten Variante mit Capistrano inkl. Canary-Testing und Cache Warmup.
    • automatisiertes Server-Provisioning der ca. 80 Server und ca. 12 Serverrollen mit Chef
    • Accesslogfiletransport und -processing ins/im Hadoop-Cluster
    • Canary-Deployments via Capistrano schreiben und ausführen
    • Setup & Configure Monitoring via Icinga2, OpenTSDB und PagerDuty

Key Win:

  • Zentralisierung des Konfigurationsmanagments, vollautomatisches Provisionieren von Servern in jede gewünschte Rolle „auf Knopfdruck“
  • Das neue RZ erfüllt die gesteigerten Bedürfnisse der gutefrage.net in Sachen Bandwidth, DDOS Prevention, Mass Emailing, etc.
  • Das gescriptete Deployment automatisiert und dokumentiert ehemals manuelle Schritte
  • Dank Canary-Deployment und exzessivem Monitoring werden Fehler schnell sichtbar
  • Der neue Stack ist leistungfähig, skalierbar und ausfallsicher

Relaunch Gutefrage.net & Logfile Analyse Tool

Ich kam zur Laufzeit des Projektes an Bord. Meine Arbeit war im Backendbereich angesiedelt mit Ziel der Optimierung von Datenbankstruktur und -abfragen. Desweiteren programmierte ich das Logfile Analyse Tool, das Daten der Accesslogs aller Applikatonsserver in einer SQL Datenbank speichert. Über ein Webfrontend können verschiedene Abfragen auf die Daten gefahren werden.

  • SQL-Query-Optimierung
  • Entwurf, Test und Durchführung der Datenbankmigration zum Relaunchtermin
  • Logfile Analyse Tool zum Vorhersagen zukünftiger Trafficentwicklungen

Key Win:

  • Facelift
  • Speed-Up der Applikation
  • Vorhersagetool zukünftiger Trafficentwicklungen für die vielen gutefrage.net Teilbereiche
Debian Linux CentOS Vmware Mesos (Marathon/ Chronos) Chef Varnish HAProxy Apache/fpm nginx memcached Redis Solr postfix Nagios/Icinga MySQL XtraDB Cluster Cloudera Hadoop Cluster mit Flume Hive Hbase openTSDB Myrixx etc. Ruby Python SQL Shell Scripting Scala/Finagle git Atlassian Suite (Jira/ Confluence/ Crucible) Scrum und Kanban Test Driven Development Pair Programming PHP5/Symfony
gutefrage.net
5 Monate
2013-04 - 2013-08

Speziesübergreifende Strahlensyndrom-Datenbank

Windows Java Tableau ...

Aufbau einer relationalen Datenbank mit Wissenschaftsdaten

Planung und Realisierung einer internen relationalen Datenbank mit medizinischen Werten humaner und non-humaner Opfer des akuten Strahlensyndroms. Zugriffskontrolle auf die Daten.

  • Datenbankdesign und Implementierung in MySQL.
  • Definition des Dateneingangsformats für non-human Data in Zusamenarbeit mit der University of Maryland.
  • OOP-PHP basierter Parser und Validator für die Eingangsdaten.
  • PHP/HTML/jQuery Webfrontend für Parser/Validator.
  • Datenimport von Humandaten aus der bestehenden SEARCH Datenbank (System for Evaluation and Archiving of Radiation Accidents Based on Victim Histories).

 

Key Win:

  • Direkte Vergleichbarkeit von humanen und non-humanen Krankheitsverläufen.
  • Fein abgestufte Zugangskontrolle auf die Daten.

Portierung der bestehenden MS Access SEARCH Datenbank auf MySQL

Die bestehende Datebank soll auf MySQL protiert werden, die existierenden Java- und MS Access Clients müssen lauffähig bleiben.

  • Portierung auf MySQL, Einziehen des Rechtemanagements, Erweiterng der Datenbank um eine Edit-History
  • Evaluierung der BI-Software Tableau als grafisches Frontend.

Key Win:

  • Zugangskontrolle auf die Daten.
  • Robuste, zukunfssichere, quelloffene Datenbanktechnik mit weitreichenden Zugriffskontrollfuntionen
Windows Java Tableau MySQL 5.5 mit Views Triggern und Stored Procedures MS Access PHP5 HTML jQuery MS Excel
Institut für Radiobiologie der Bundeswehr
6 Monate
2009-10 - 2010-03

Neuentwicklung eines Wall-Tattoo Internetshops

Linux PHP Backend XHTML/jQuery Frontend ...

Die Evaluierung der Shopsysteme legte eine Eigenentwicklung nahe, da die speziellen Produkte des Shops nicht der gängigen Artikel-Logik folgen. Jedes Produkt besitzt ein sehr hohe Anzahl an Variationen, die sich nicht im Vornherein fest legen lassen.
Zudem müssen neue Artikel jederzeit on-the-fly generiert werden können. Eine „Walltattoo-Engine“ erstellt aus einem beliebigen, von Kunden hochladbaren Rasterbild eine Vektorgrafik. Der Plot der Vektorgrafik durch einen Vinylcutplotter wird über den Shop verkauft.

  • Evaluierung verschiedener freier und kommerzieller Shopsysteme.
  • Entwicklung einer webbasierten Walltattoo-Engine mit jQuery, Inkscape, ImageMagick und anderen Open-Source Grafiktools

Key Win:

  • webbasierte Raster-2-Vektor App mit Editor
Linux PHP Backend XHTML/jQuery Frontend MySQL Shell Python
2 Monate
2009-11 - 2009-12

Zusammenlegung der Nähcommunities burdastyle.de und burdafashion.com

Linux CMS/Shopsystem Chameleon (PHP) Ruby on Rails ...

Beide Seiten sind technisch und inhaltlich vollständig getrennt.
Innerhalb eines ambitionierten Zeitplans müssen Userprofile, Usercontent, Shop und redaktioneller Conent beider Seiten in einer neuen Plattform zusammen geführt werden.

  • PHP Entwicklung innerhalb Chameleon
  • Frontendprogrammierung in XHTML, jQuery, CSS
  • Planung, Projektierung und Realisierung der Schnittstellen zu Burda-internen Bestellabwicklungs- und Warenwirtschaftssystemen.

Key Win:

  • eine neue, große Nähcommunity mit einem gemeinsamen Technologiestack
Linux CMS/Shopsystem Chameleon (PHP) Ruby on Rails Shell Python
4 Jahre 3 Monate
2005-04 - 2009-06

verschiedene Projekte

FreeBSD 4.x und 6.x RedHat Enterprise Linux 4 und 5 VMware ...

Neuentwicklung des Kernproduktes Yahoo Finance unter Nutzung der neuen Yahoo Publishing Suite

Finance soll das erste globale Media Produkt werden, das die vielen verschiedenen, individuellen Länderprodukte ablösen kann, ohne die marktführende Stellung des Produktes Yahoo Finance zu gefährden. Entwickelt wird in USA, Indien und Europa auf Grundlage der company-weiten, selbst entwickelten Publishing Suite (PHP5, XML, XSLT, RDF und verwandte Tools des W3C Semantic Web)

  • OO PHP5 Programmierung
  • Caching Strategien
  • Schnittstellen für den Import externer Daten

Key Win:

  • globale Platform statt regionaler Länderseiten, Ressourcenoptimierung, Möglichkeit von globalen Marketingkampagnen, Vergleichbarkeit von Marktdaten unterschiedlicher Länder, etc.

OO Perl Upload-Interface für Yahoos Video Streaming Platform

Meine Schnittstelle wird von internem Code benutzt, der Video Streams und dazu gehörige Video Metadaten unserer Lieferanten entgegen nimmt, um diese in das Yahoo Publishing System einzubinden, welches die Videos dann europaweit veröffentlicht.

  • Konzept und Progarmmierung eins Interface, das sich in die bestehende Architektur des europäischen Publishing Systems einfügt und die zentrale Schnittstelle für den Video-Upload auf die neue interne Video Streaming Platform per REST API realisiert.

Key Win:

  • Vereinheitlichung von zahlreichen unwartbaren, z.T. unperformanten Insellösungen zu Gunsten einer zentralen, europaweiten, robusten, modularen Schnittstelle inklusive high-performance Dublettenerkennungsmechnismus.

Entwicklung einer generischen PHP Frontend Caching-Lösung

Bestimmte Teile einer PHP generierten Seite sollen gecached werden, andere nicht. Ziel ist es, die Runtime-Performance unterschiedlicher Anwendungen stark zu steigern, ohne Funktionalitäten wie Werbung oder personalisierte Inhalte durch seitenweises Caching zu beschneiden. Derzeit wird mein Frontend Cache von den EU Kernprodukten Movies, TV und News benutzt.

  • Entwurf, Programmierung und Implementierung einer Schnittelle zu einem distribuierten In-Memory Cache als Storage Engine

 

Key Win:

  • Meine Lösung konnte die Performance mancher Applikationen signifikant (bis zu 4x) steigern. Sie hat sich auf Seiten mit hohem Traffic bewährt (Movies durchschnittlich 1 Mio Pageviews pro Tag, Peaks bis 10 Mio PV/Tag) und als stabil erwiesen.

Neufassung der europäischen Movies Plattform

Die europäischen Movies-Seiten, sollen SEO freundlicher werden. Der Zugriff auf die Movies Daten soll zentralisiert und vereinheitlicht werden.

  • Entwicklung einer PHP API als Schnittstelle zwischen der Kino-Datenbank () und den PHP-Seiten des Frontends.
  • Implementierung der Vorgaben für suchmaschinenoptimierte URLs mittels o.a. API und Apaches mod_rewrite.
  • Betreuung der Site nach ihrem Launch im März 2006 durch Bugfixes und punktuelle Verbesserungen.

 

Key Win:

  • Zugriff auf die europaweite Yahoo Movies Datenbank über eine einzige definierte Schnittstelle.
  • Steigerung der Pageviews und unique Users durch Suchmaschinenoptimierung.
FreeBSD 4.x und 6.x RedHat Enterprise Linux 4 und 5 VMware Apache Squid RESTful WebServices & ein reichhaltiges Inventar an Yahoo-internen Frameworks Tools und Libraries die auf OpenSource Technologien auf bauen für Package Management Security Scanning Monitoring- Logging- und Reporting- Tools Virtualisierungstools Anti-Abuse Libraries Input-Validation und -Filtering distributed Caching Profiling Software XML XSL/XSLT Semantic Web (RDF RDFS OWL) HTML CSS JavaScript Memory-Caching OOP Perl Shell Scripting SQL CVS Bugzilla TWiki agile Entwicklungsmethoden vornehmlich Scrum objektorientiertes Perl Perl REST PHP MySQL Shell

Aus- und Weiterbildung

Aus- und Weiterbildung

Self-tought, learning by doing, learning from others

Position

Position

Senior DevOps Engineer, Site Reliability Engineer
Open Source Stacks / Linux

Kompetenzen

Kompetenzen

Top-Skills

DevOps Linux Container

Produkte / Standards / Erfahrungen / Methoden

Linux
Experte
Ansible
Experte
Docker
Experte
Shell Scripting
Experte
Amazon AWS
Fortgeschritten
Kubernetes
Fortgeschritten

OS, Cloud, Container

  • Linux

  • Amazon AWS

  • Docker

  • Kubernetes

  • VirtualBox

Infrastructure as Code

  • Ansible

  • Terraform

Build- & Deployment-Pipelines, CI/CD

  • git, GitLab, GitHub, Gitea, Bitbucket

  • Jenkins

  • Artifactory

  • ArgoCD

  • Rundeck

  • Maven

Monitoring, Logs, Alerting, Metric-/ KPI-/ Data-Visualisation

  • Prometheus

  • ELK Stack

  • Grafana

  • Loki Stack

  • InfluxDB

  • Grafana

Data, Databases

  • MySQL, MariaDB

  • Postgres

  • MongoDB

  • InfluxDB

  • Redis

Methodik

  • Scrum

  • Kanban

  • Test Driven Development, ...

Profil

In den vergangenen 20+ Jahren habe ich sowohl in großen internationalen Teams gearbeitet, als auch Projekte in Eigenregie gestemmt.
Ich habe an komplexen, Microservice basierten, high-traffic Stacks gearbeitet und an einfachen, überschaubaren Apps.
Immer im Team und immer auf dem aktuellen Stand der Technik.
Es macht mir Spaß, mich in aktuelle Technologien ein zu arbeiten und bestehendes Wissen zu erweitern.

  • über 20 Jahre IT-Erfahrung

  • Teamplayer & Mensch

  • sehr gutes Englisch in Wort & Schrift

Betriebssysteme

Unix
Experte
Kubernetes
Fortgeschritten
Amazon AWS
Fortgeschritten
Docker
Fortgeschritten

Programmiersprachen

JavaScript
Experte
Python
Fortgeschritten
Shell
Experte

Datenbanken

MySQL
Experte
Postgres
Fortgeschritten
Redis
Experte
MaongoDB
Basics

Branchen

Branchen

Finance
Health
International companies
Internetportale
Sondermaschinenbau: Industrielle Lasermarkersysteme

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Bevorzugt: 100% remote
Remote mit Einsätzen vor Ort <= 1x/Monat
Vor Ort: Region München oder Allgäu

Arbeitserlaubnis: EU Büger

Nur Projekte innerhalb der EU

möglich

Projekte

Projekte

2 Monate
2022-08 - 2022-09

GitLab CI/CD

DevOps Python Linux Shell Scripting Atlassian APIs ...
DevOps
  • Wartung und Erweiterung von Gitlab Pipelines, die eine Webanwendung bauen und deployen
  • Ansprechpartner für die Entwicklerteams bei Problemen mit Build und Deployment
Artifactory Gitlab CE Gitlab K8s Executor Atlassian JIRA Selenium
Python Linux Shell Scripting Atlassian APIs Linux Kubernetes Jira Confluence
remote
1 Jahr 1 Monat
2021-02 - 2022-02

Cloud Infrastructure Architecute and Automation - Health sector company

Senior DevOps Engineer
Senior DevOps Engineer

  • Create a high-available, auto-scaling backend platform for a mobile Health app in Amazon AWS based on ECS, ECR, RDS Postgres and ALB.
  • Create the next-generation central data storage and data processing platform in Amazon AWS and a private OpenStack-based cloud.
    Tech Stack: MongoDB relica set, AWS IAM/Organisations, AWS EKS,S3, CloudFront, Route53.
    Kubernetes: Ingress, Helm, ArgoCD, ArgoWorkflows, Tekton, Prometheus, Grafana.
    Terraform, Ansible, Ubuntu Linux
  • Help port to a pyhsician's software from an on-premise Windows solution to cloud based solution.
    Ubuntu Linux, VirtualBox, Ansible, Docker, K8s, Java, Springboot, Maven

10 Monate
2018-10 - 2019-07

Monitoring-Stack Provisioning Rewrite & Entkoppelung von Icinga2 Production und non-Production

VMWare CentOS 6/7 RedHat Enterprise Linux ...

Nach dem Umzug von non-root Servern in fremden Rechenzentren auf Hardware in eigenen RZ, kann der Monitoring-Stack per Package Manager installiert werden.
Das ist Voraussetzung für viele weitere Verbesserungen, z.B. Versions-Updates, Authentication und Authorization via Redhat IdentityManagement, Entkoppelung von Production- und non-Production Umgebung.

  • Sourcecode von Subversion nach git (Atlassian bitbucket) umziehen
  • Rewrite des Ansible Provisioning Codes von selbstkompilierten Anwendungen auf Installationen via Package Manager
  • Entkoppelung von Production- und non-Production Umgebung durch separate Icinga2 Distributed Cluster
  • Verschlankung der ausufernden Monitoring Konfiguration durch Vererbungskonzepte in Ansible
  • Icinga2 Authentication und Authorization über das firmenweite Redhat IdentityManagement
  • Rundeck als grafisches Frontend für Ansible Runs mit versionierter Rundeck Konfiguration in git
  • Tagesgeschäft mit Useranfragen, Troubleshooting und Ticketbearbeitung

Key Win:

  • Provisioning des kompletten Monitoring-Stacks via OS Package Manager inkl. Update auf aktuelle Versionen
  • Entkoppelung von Icinga2 Production- und non-Production Umgebung
  • Vereinfachung der Icinga2 Konfiguration und Routinearbeiten
VMWare CentOS 6/7 RedHat Enterprise Linux RedHat Identity Management Icinga2 Distributed Cluster IcingaWeb2 Icinga2 BusinessProcesses Canoo Webtest Graphite Grafana ELK Ansible Puppet Rundeck Shell Python Perl Atlassian Suite (Jira/ Bitbucket/ Confluence)
Payback
10 Monate
2017-05 - 2018-02

Automatisierung SAP Commerce Cloud Services

Site Reliability Engineer CentOS Linux Vagrant/Virtualbox Apache/mod_proxy ...
Site Reliability Engineer

Ich bin kommisarischer Teamlead eines neu gegründeten, internationalen SRE Teams mit Einheiten Europa, Nordamerika und Asien. Ziel ist das automatisierte Deployment von internen Applications, die beim Ausrollen und im Betrieb von Hybris Shoplösungen genutzt werden. Außerdem soll das Provisionieren der Server automatisiert werden, auf denen die internen Applications laufen.

  • Konzept einer automatisierten Serverprovisionierung mit Ansible.
  • Konzept und Architektur eines Build- und Deployment-Systems basierend auf Jenkins als Buildtool und Ansible als Deploymenttool.
  • Ich schreibe den Großteil des Deploymentcodes in Ansible
  • Um den Deploymentcode effizient zu Entwickeln und Testen, baue ich eine lokale, Vagrant/Virtualbox basierte Umgebung, die jedes Teammitglied nutzt.
  • Anpassung bestehender Java/Maven Applikationen auf automatisches Building und Deployment mit Jenkins und Ansible
  • Abstimmung mit anderen involvierten Teams, Dokumentation des neuen Build-/Deploymentsystem, Einführung neuer Teammitglieder ins Build-/Deploymentsystem
  • Support und Troubleshooting des Entwicklerteams in allen Linuxfragen

Key Win:

  • Automatisiertes Server-Provisioning
  • Continous Integration, automatisietes Deployment
CentOS Linux Vagrant/Virtualbox Apache/mod_proxy Java/Maven Maven Jenkins Rundeck Shell Python Atlassian Suite (Stash; Confluence; Jira)
Hybris AG
3 Monate
2017-02 - 2017-04

Konzept und Realsierung eines Docker Swarms und einer Deployment-Pipeline für den Swarm

Docker Swarm inkl. Deployment Pipeline CentOS Linux Docker Docker Swarm ...
Docker Swarm inkl. Deployment Pipeline

Ein internes Tool zur Programmgestaltung soll hochverfügbar und skalierbar gemacht werden. Die Entwickler nutzen bereits Docker, um ihren Code manuell auf Test- und Productionrechner zu deployen. Das Tool soll über automatisierte Build- und Deployment-Pipelines gebaut und deployed werden.

  • Konzept/Umsetzung eines Docker Swarms und einer Docker Custom Registry für die Server des Tools auf physikalischen Servern.
  • Konzeption und Programmierung einer Jenkins Deployment-Pipeline, die aus dem Code der Entwickler Docker Container baut, welche in einer custom Docker Registry veröffentlicht werden, von der aus sie von Jenkins via Ansible in den Docker Swarm deployed werden.
  • Ansible Roles und Plays erstellen für das Provisionieren aller Server und das Deployment der Docker Container im Docker Swarm

Key Win:

  • Das Tool läuft hochverfügbar, skalierbar und ausfallsicher
  • Manuell angestoßener Deploymentprozess in Staging- und Production-Umgebungen, automatisiertes Deployment für die Development Umgebung
CentOS Linux Docker Docker Swarm Docker Custom Registry Vagrant/Virtualbox (für lokales Testen) PostgreSQL Python NodeJS Jenkins/Jenkins Pipeline PlugIns (scripted mit Groovy) Ansible git/Github
Sat1/Pro7
10 Monate
2015-06 - 2016-03

Neue Monitoring Infrastruktur

Monitoring Infrastruktur RHEL Linux Ansible Vagrant ...
Monitoring Infrastruktur

Die Applikationen laufen auf hunderten von Servern in verschiedenen Rechenzentren weltweit. Am Stammsitz München werden Server- und Business-Metriken für alle Rechenzentren und Länder von einem zentralen Monitoringsystem erhoben und ausgewertet. Eine der Herausforderungen sind die strengen Sicherheitsrichtlinen der AMEX.

  • Technical Project Lead
  • Konzept und Realisierung eines automatisierten Builds und Deployments der Monitoring-Infrastruktur und -Konfiguration mit Ansible
  • Einrichten einer Vagrant-basierten Test- und Entwicklungsumgebung für das Deployment der Icinga2-Komponnenten mit Ansible
  • Planung und Umsetzung eines Icinga2 Distributed Cluster
  • Portierung der bestehenden Icinga1 Lösung auf dieses Cluster

Key Win:

  • Ein geordneter, versionierter und dokumentierter Build- und Deploymentprozess der Monitoring Komponenten führt zu einem wartbaren und leicht erweiterbaren Monitoring-System.
  • Icinga 1 durch dessen Nachfolger Icinga 2 ersetzt.
RHEL Linux Ansible Vagrant Icinga 1+2 Gearman Nagvis Business Process View Thruk Apache2 Graphite Grafana Postgres Python Shell Atlassian (Jira Confluence) Subversion
Payback
3 Jahre 6 Monate
2011-01 - 2014-06

verschiedene Projekte

Softwareentwicklung und Operations Debian Linux CentOS Vmware ...
Softwareentwicklung und Operations

Umbau der Applikation auf eine Service Orientierte Architektur

Nicht zuletzt für die mobilen gutefrage.net Apps wird die Kernapplikation neu geschrieben. Statt der vom PHP Framework vorgegebenen geschlossenen Architektur, wird eine modulare, service orientierte Architektur benötigt. Dazu werden große Teile der Applikation neu geschrieben, die nach und nach den bestehenden Code ersetzen. Außerdem können im Rahmen von Feature Switching Teile des Codes nach belieben an- und abgeschaltet, bzw. nur für bestimmte Nutzergruppen aktiviert werden. Als Sprache kommt Scala auf der Java Virtual Machine mit Finagle als Framework zum Einsatz.

  • Änderungen am Server-Provisioning in Chef
  • Monitoring für die Services
  • Tagesgeschäft mit Deployments, Troubleshooting und Tickets lösen

Key Win:

  • gemeinsame Code- und Infrastrukturbasis für Web- und Mobile App
  • Continous Deployment
  • Feature Switching

Technology Stack Umbau und Rechenzentrumsumzug Gutefrage.net

Nach der Entscheidung sich vom bisherigen Hoster/ Operationsdienstleister zu trennen, um die die komplette Infrastrutur in Eigenregie zu verwalten, wid ein 4-köpfiges, Operations Team gegründet, um

  • den Umzug in ein neues Rechenzentrum zu planen und durch zu führen, inkl Rechenzentrums- und Hardwareauswahl
  • die Provisionierung der initial ca. 80 Server und ca. 12 Servertypen zu automatisieren
  • auf die rasant wachsenden Zugriffszahlen zu reagieren durch radikalen Umbau des Technology Stacks auf leistungfähige, skalierbare, ausfallsichere Technologien
  • den Deploymentprozesses zu revolutionieren; von einem SCM Checkout hin zu einer gescripteten Variante mit Capistrano inkl. Canary-Testing und Cache Warmup.
    • automatisiertes Server-Provisioning der ca. 80 Server und ca. 12 Serverrollen mit Chef
    • Accesslogfiletransport und -processing ins/im Hadoop-Cluster
    • Canary-Deployments via Capistrano schreiben und ausführen
    • Setup & Configure Monitoring via Icinga2, OpenTSDB und PagerDuty

Key Win:

  • Zentralisierung des Konfigurationsmanagments, vollautomatisches Provisionieren von Servern in jede gewünschte Rolle „auf Knopfdruck“
  • Das neue RZ erfüllt die gesteigerten Bedürfnisse der gutefrage.net in Sachen Bandwidth, DDOS Prevention, Mass Emailing, etc.
  • Das gescriptete Deployment automatisiert und dokumentiert ehemals manuelle Schritte
  • Dank Canary-Deployment und exzessivem Monitoring werden Fehler schnell sichtbar
  • Der neue Stack ist leistungfähig, skalierbar und ausfallsicher

Relaunch Gutefrage.net & Logfile Analyse Tool

Ich kam zur Laufzeit des Projektes an Bord. Meine Arbeit war im Backendbereich angesiedelt mit Ziel der Optimierung von Datenbankstruktur und -abfragen. Desweiteren programmierte ich das Logfile Analyse Tool, das Daten der Accesslogs aller Applikatonsserver in einer SQL Datenbank speichert. Über ein Webfrontend können verschiedene Abfragen auf die Daten gefahren werden.

  • SQL-Query-Optimierung
  • Entwurf, Test und Durchführung der Datenbankmigration zum Relaunchtermin
  • Logfile Analyse Tool zum Vorhersagen zukünftiger Trafficentwicklungen

Key Win:

  • Facelift
  • Speed-Up der Applikation
  • Vorhersagetool zukünftiger Trafficentwicklungen für die vielen gutefrage.net Teilbereiche
Debian Linux CentOS Vmware Mesos (Marathon/ Chronos) Chef Varnish HAProxy Apache/fpm nginx memcached Redis Solr postfix Nagios/Icinga MySQL XtraDB Cluster Cloudera Hadoop Cluster mit Flume Hive Hbase openTSDB Myrixx etc. Ruby Python SQL Shell Scripting Scala/Finagle git Atlassian Suite (Jira/ Confluence/ Crucible) Scrum und Kanban Test Driven Development Pair Programming PHP5/Symfony
gutefrage.net
5 Monate
2013-04 - 2013-08

Speziesübergreifende Strahlensyndrom-Datenbank

Windows Java Tableau ...

Aufbau einer relationalen Datenbank mit Wissenschaftsdaten

Planung und Realisierung einer internen relationalen Datenbank mit medizinischen Werten humaner und non-humaner Opfer des akuten Strahlensyndroms. Zugriffskontrolle auf die Daten.

  • Datenbankdesign und Implementierung in MySQL.
  • Definition des Dateneingangsformats für non-human Data in Zusamenarbeit mit der University of Maryland.
  • OOP-PHP basierter Parser und Validator für die Eingangsdaten.
  • PHP/HTML/jQuery Webfrontend für Parser/Validator.
  • Datenimport von Humandaten aus der bestehenden SEARCH Datenbank (System for Evaluation and Archiving of Radiation Accidents Based on Victim Histories).

 

Key Win:

  • Direkte Vergleichbarkeit von humanen und non-humanen Krankheitsverläufen.
  • Fein abgestufte Zugangskontrolle auf die Daten.

Portierung der bestehenden MS Access SEARCH Datenbank auf MySQL

Die bestehende Datebank soll auf MySQL protiert werden, die existierenden Java- und MS Access Clients müssen lauffähig bleiben.

  • Portierung auf MySQL, Einziehen des Rechtemanagements, Erweiterng der Datenbank um eine Edit-History
  • Evaluierung der BI-Software Tableau als grafisches Frontend.

Key Win:

  • Zugangskontrolle auf die Daten.
  • Robuste, zukunfssichere, quelloffene Datenbanktechnik mit weitreichenden Zugriffskontrollfuntionen
Windows Java Tableau MySQL 5.5 mit Views Triggern und Stored Procedures MS Access PHP5 HTML jQuery MS Excel
Institut für Radiobiologie der Bundeswehr
6 Monate
2009-10 - 2010-03

Neuentwicklung eines Wall-Tattoo Internetshops

Linux PHP Backend XHTML/jQuery Frontend ...

Die Evaluierung der Shopsysteme legte eine Eigenentwicklung nahe, da die speziellen Produkte des Shops nicht der gängigen Artikel-Logik folgen. Jedes Produkt besitzt ein sehr hohe Anzahl an Variationen, die sich nicht im Vornherein fest legen lassen.
Zudem müssen neue Artikel jederzeit on-the-fly generiert werden können. Eine „Walltattoo-Engine“ erstellt aus einem beliebigen, von Kunden hochladbaren Rasterbild eine Vektorgrafik. Der Plot der Vektorgrafik durch einen Vinylcutplotter wird über den Shop verkauft.

  • Evaluierung verschiedener freier und kommerzieller Shopsysteme.
  • Entwicklung einer webbasierten Walltattoo-Engine mit jQuery, Inkscape, ImageMagick und anderen Open-Source Grafiktools

Key Win:

  • webbasierte Raster-2-Vektor App mit Editor
Linux PHP Backend XHTML/jQuery Frontend MySQL Shell Python
2 Monate
2009-11 - 2009-12

Zusammenlegung der Nähcommunities burdastyle.de und burdafashion.com

Linux CMS/Shopsystem Chameleon (PHP) Ruby on Rails ...

Beide Seiten sind technisch und inhaltlich vollständig getrennt.
Innerhalb eines ambitionierten Zeitplans müssen Userprofile, Usercontent, Shop und redaktioneller Conent beider Seiten in einer neuen Plattform zusammen geführt werden.

  • PHP Entwicklung innerhalb Chameleon
  • Frontendprogrammierung in XHTML, jQuery, CSS
  • Planung, Projektierung und Realisierung der Schnittstellen zu Burda-internen Bestellabwicklungs- und Warenwirtschaftssystemen.

Key Win:

  • eine neue, große Nähcommunity mit einem gemeinsamen Technologiestack
Linux CMS/Shopsystem Chameleon (PHP) Ruby on Rails Shell Python
4 Jahre 3 Monate
2005-04 - 2009-06

verschiedene Projekte

FreeBSD 4.x und 6.x RedHat Enterprise Linux 4 und 5 VMware ...

Neuentwicklung des Kernproduktes Yahoo Finance unter Nutzung der neuen Yahoo Publishing Suite

Finance soll das erste globale Media Produkt werden, das die vielen verschiedenen, individuellen Länderprodukte ablösen kann, ohne die marktführende Stellung des Produktes Yahoo Finance zu gefährden. Entwickelt wird in USA, Indien und Europa auf Grundlage der company-weiten, selbst entwickelten Publishing Suite (PHP5, XML, XSLT, RDF und verwandte Tools des W3C Semantic Web)

  • OO PHP5 Programmierung
  • Caching Strategien
  • Schnittstellen für den Import externer Daten

Key Win:

  • globale Platform statt regionaler Länderseiten, Ressourcenoptimierung, Möglichkeit von globalen Marketingkampagnen, Vergleichbarkeit von Marktdaten unterschiedlicher Länder, etc.

OO Perl Upload-Interface für Yahoos Video Streaming Platform

Meine Schnittstelle wird von internem Code benutzt, der Video Streams und dazu gehörige Video Metadaten unserer Lieferanten entgegen nimmt, um diese in das Yahoo Publishing System einzubinden, welches die Videos dann europaweit veröffentlicht.

  • Konzept und Progarmmierung eins Interface, das sich in die bestehende Architektur des europäischen Publishing Systems einfügt und die zentrale Schnittstelle für den Video-Upload auf die neue interne Video Streaming Platform per REST API realisiert.

Key Win:

  • Vereinheitlichung von zahlreichen unwartbaren, z.T. unperformanten Insellösungen zu Gunsten einer zentralen, europaweiten, robusten, modularen Schnittstelle inklusive high-performance Dublettenerkennungsmechnismus.

Entwicklung einer generischen PHP Frontend Caching-Lösung

Bestimmte Teile einer PHP generierten Seite sollen gecached werden, andere nicht. Ziel ist es, die Runtime-Performance unterschiedlicher Anwendungen stark zu steigern, ohne Funktionalitäten wie Werbung oder personalisierte Inhalte durch seitenweises Caching zu beschneiden. Derzeit wird mein Frontend Cache von den EU Kernprodukten Movies, TV und News benutzt.

  • Entwurf, Programmierung und Implementierung einer Schnittelle zu einem distribuierten In-Memory Cache als Storage Engine

 

Key Win:

  • Meine Lösung konnte die Performance mancher Applikationen signifikant (bis zu 4x) steigern. Sie hat sich auf Seiten mit hohem Traffic bewährt (Movies durchschnittlich 1 Mio Pageviews pro Tag, Peaks bis 10 Mio PV/Tag) und als stabil erwiesen.

Neufassung der europäischen Movies Plattform

Die europäischen Movies-Seiten, sollen SEO freundlicher werden. Der Zugriff auf die Movies Daten soll zentralisiert und vereinheitlicht werden.

  • Entwicklung einer PHP API als Schnittstelle zwischen der Kino-Datenbank () und den PHP-Seiten des Frontends.
  • Implementierung der Vorgaben für suchmaschinenoptimierte URLs mittels o.a. API und Apaches mod_rewrite.
  • Betreuung der Site nach ihrem Launch im März 2006 durch Bugfixes und punktuelle Verbesserungen.

 

Key Win:

  • Zugriff auf die europaweite Yahoo Movies Datenbank über eine einzige definierte Schnittstelle.
  • Steigerung der Pageviews und unique Users durch Suchmaschinenoptimierung.
FreeBSD 4.x und 6.x RedHat Enterprise Linux 4 und 5 VMware Apache Squid RESTful WebServices & ein reichhaltiges Inventar an Yahoo-internen Frameworks Tools und Libraries die auf OpenSource Technologien auf bauen für Package Management Security Scanning Monitoring- Logging- und Reporting- Tools Virtualisierungstools Anti-Abuse Libraries Input-Validation und -Filtering distributed Caching Profiling Software XML XSL/XSLT Semantic Web (RDF RDFS OWL) HTML CSS JavaScript Memory-Caching OOP Perl Shell Scripting SQL CVS Bugzilla TWiki agile Entwicklungsmethoden vornehmlich Scrum objektorientiertes Perl Perl REST PHP MySQL Shell

Aus- und Weiterbildung

Aus- und Weiterbildung

Self-tought, learning by doing, learning from others

Position

Position

Senior DevOps Engineer, Site Reliability Engineer
Open Source Stacks / Linux

Kompetenzen

Kompetenzen

Top-Skills

DevOps Linux Container

Produkte / Standards / Erfahrungen / Methoden

Linux
Experte
Ansible
Experte
Docker
Experte
Shell Scripting
Experte
Amazon AWS
Fortgeschritten
Kubernetes
Fortgeschritten

OS, Cloud, Container

  • Linux

  • Amazon AWS

  • Docker

  • Kubernetes

  • VirtualBox

Infrastructure as Code

  • Ansible

  • Terraform

Build- & Deployment-Pipelines, CI/CD

  • git, GitLab, GitHub, Gitea, Bitbucket

  • Jenkins

  • Artifactory

  • ArgoCD

  • Rundeck

  • Maven

Monitoring, Logs, Alerting, Metric-/ KPI-/ Data-Visualisation

  • Prometheus

  • ELK Stack

  • Grafana

  • Loki Stack

  • InfluxDB

  • Grafana

Data, Databases

  • MySQL, MariaDB

  • Postgres

  • MongoDB

  • InfluxDB

  • Redis

Methodik

  • Scrum

  • Kanban

  • Test Driven Development, ...

Profil

In den vergangenen 20+ Jahren habe ich sowohl in großen internationalen Teams gearbeitet, als auch Projekte in Eigenregie gestemmt.
Ich habe an komplexen, Microservice basierten, high-traffic Stacks gearbeitet und an einfachen, überschaubaren Apps.
Immer im Team und immer auf dem aktuellen Stand der Technik.
Es macht mir Spaß, mich in aktuelle Technologien ein zu arbeiten und bestehendes Wissen zu erweitern.

  • über 20 Jahre IT-Erfahrung

  • Teamplayer & Mensch

  • sehr gutes Englisch in Wort & Schrift

Betriebssysteme

Unix
Experte
Kubernetes
Fortgeschritten
Amazon AWS
Fortgeschritten
Docker
Fortgeschritten

Programmiersprachen

JavaScript
Experte
Python
Fortgeschritten
Shell
Experte

Datenbanken

MySQL
Experte
Postgres
Fortgeschritten
Redis
Experte
MaongoDB
Basics

Branchen

Branchen

Finance
Health
International companies
Internetportale
Sondermaschinenbau: Industrielle Lasermarkersysteme

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.