Professional developer since 2001.
Take ownership of projects, problems and solutions.
Build great tooling. Bash hero, Makefile ninja.
Python is the scripting language of my choice – I avoid using scripting languages.
Go is my preferred language.
Can lead, want to code.
I do the full stack:
- Application / Service / Microservice design
- Front- and backend development
- DB schema design – PostgreSQL, MySQL
- Observability – Metrics, logging, tracing
- Server administration / management & virtualization
- Containers – for development, testing, CI and prod
- Infrastructure as code – Terraform, CloudFormation
- CI/CD – DotCI, Jenkins pipeline
As important as code is documentation: My code ships with Owner’s and/or User’s manual.
Plenty of experience working in widely distributed teams. Working remotely since 2013.
Familiar with many collaboration tools such as GitHub, Slack, HipChat, Zoom, Fuze, Jira, Asana, Trello, Confluence, MediaWiki…
Not ashamed to admit: I’m using Stack Overflow a lot – but I also give back: #2 contributor for Ansible. 35k reputation, in list of top 5% answerers for git, Docker, ssh, Jinja2,…
Enjoy to contribute to open source. Maintainer of Ansible Silo - https://groupon.github.io/ansible-silo/
Technologies I want to work with: Go, AWS, Serverless, Bash, Automation, Docker, Python, Chef
Things I don’t want to go back to: Ruby, Java, PHP, .NET
- Managing all company AWS accounts and baseline configuration via Terraform/Terragrunt
- Established a modular, extendable tooling framework based on Terragrunt, aws-okta, tfenv, Terraform Landscape and a lot of Makefile, to get teams started quickly with robust, secure and reliable multi-account IaC
- Designed and built multi-account/multi-environment Terraform CI/CD system based on AWS API Gateway, Lambda, Fargate, DynamoDB and S3
- VM provisioning, management and user support (KVM/QEMU/Virsh)
- Developed Golang microservice “application” for managing complete lifecycle of VMs (request, approve, allocation, deployment, migration, deletion) – based on libvirt, Go kit, GORM, PostgreSQL
- VM console tool written in Golang: Automatically creating SSH tunnels to VM hosts, connecting to VNC port for troubleshooting VMs without SSH connection
- Manually migrated and enhanced graphs and dashboards for 23 services from legacy in-house graphing tool to VMware Wavefront
- Created system to cache external package repositories
- Support for Debian and FreeBSD packages but focus on CentOS/RPM. (e.g. EPEL, ELRepo)
- Snapshot tagging for reproducible installations, “Infrastructure Versioning”
- Automated upstream syncing
- ZFS Replication across 3 data-centers
- Functionality to upload custom packages
- Based on mrepo, FreeNAS, custom Python tooling and Ansible for standard operations
- Containerization of applications to improve reliability/speed of building, testing and deployment (Docker, Docker service)
- Automated container building via Jenkins, DotCI
- Invented Ansible Silo (Open Source) - 100% self-contained drop-in replacement for Ansible, Ansible Version Manager, Playbook Bundler - https://groupon.github.io/ansible-silo/
- Built “Redis as a Service”, large scale high available Redis clusters with configurable number of shards and replication rings.
- Rack-aware to avoid SPOF
- Based on Redis Sentinel, twemproxy/nutcracker (by Twitter)
- Standard operations and lifecycle management via Ansible
- Created tooling/framework for Ansible >= 1.3 which provided some essential features only introduced with Ansible 2, including Galaxy-like role distribution with support for Ansible plugins
- Set up internal Ansible Galaxy hub and created a complete set of roles for managing whole CentOS 6⁄7 systems including:
- DNS resolvers and Named local server configuration
- NTP configuration
- sshd configuration
- Network interface configuration incl. bonding and bridges
- User management
- Kernel settings
- Automatic (+configurable) log rotation
- Automatic (+configurable) log forwarding to Splunk
- Automatic (+configurable) metrics forwarding to Nagios
- Ansible callback plugins for sending events to Nagios, automatic downtime, HipChat notifications
- Serverspec tests for testing Ansible roles
- Managed global Splunk infrastructure with ~200 indexers and 20+ TB daily indexing volume
- Splunk user support for scheduled searches and dashboards, review and optimization
- Writing custom Ruby plugins for Splunk searches
- Managing updates and custom app distribution through Splunk Deployment Server
- Responsible for building and leading a PHP development team from scratch with up to 35 developers
- Designed and built PHP applications based on Zend Framework for the high traffic system of the Groupon network
- Technical lead for GrouponShop, Job-, Blog- and premium-partner-systems as well as all Online Marketing applications, e.g. Landingpages, Adwords realtime bidding, Newsletter-, Tracking and Ad-Systems
- Created websites for various customers, mostly based on webEdition and Drupal.
- Installed, configured and themed various Forum-, Blog- and Shop-systems.
- Development of PHP applications and modules for various systems (Drupal, webEdition, Magento).
- Created HTML/CSS-Templates based on PSD drafts.
- Created HTML/CSS-Templates based on PSD drafts.
- Apprenticeship “FIAE” (Fachinformatiker Anwendungsentwicklung - IT application development specialist)
- Built websites based on content management systems (eZ Publish, Imperia 5)
- Took care of children and youngsters in the cybercafe “Globales Lokal”
- Administrated SuSE Linux clients
- First contact with HTML and PHP by maintaining the website of “Globales Lokal”
- Gave beginners HTML courses to interested kids