Selected Talks

From time to time, I want to say something.

Hot Topics

Currently, I’d be particularly happy to speak about the following topics:

  • AWS in general and
  • AWS networking in particular
  • Feature Management
  • Jenkins Pipelines
  • Monitoring

Past Talks

Building an IoT SuperNetwork on top of the AWS Global Infrastructure (June 2023)

When ‘allow all from 0.0.0.0’ didn’t help - troubleshooting network connectivity in AWS (May 2023)

AWS This is My Architecture (Feb 2023)

I was invited to present during an episode of the This is My Architecture series by AWS.

[German] Wenn selbst ‘erlaube allen Verkehr von 0.0.0.0/0’ nicht hilft - Verbindungsprobleme in AWS lösen (Oct 2022)

Was tun, wenn die Netzverbindung zwischen zwei AWS-Diensten will einfach nicht zu Stande kommen will - obwohl schon alle Security Groups weit offen wie Scheunentore sind?

Feature Management Platforms (June & Sept 2022)

The idea of Feature Toggles exists since more than a decade and is a corner stone of Continuous Delivery. However, few people seem to exploit the potential that this brings. Decoupling release from deployment brings greater flexibility. Gradual rollouts - percentage-based or for specific beta users and customers - increase safety as well as help to gather feedback early in the development cycle.

Industrial Point of View on 5G and Beyond (July 2022)

Discussion session with academic and industrial researchers on the influence of 5G on IoT connectivity.

Three Main Challenges for Securely Scaling Connected Devices (Apr 2022)

IoT security starts with the device. If the initial device isn’t secure when it scales it will become a cybersecurity nightmare.

IoT for All webinar, with Jeff Stahlnecker

Serverless Networking - How We Provide Cloud-Native Connectivity for IoT Devices (Nov 2020)

In serverless, the network is taken for granted. But what if the network is the product? Is there a routerless? Does it still have a CLI?

How our Cloudy Mindsets Approached Physical Routers (or: SNMP was not an option) (Nov 2020)

After the latest project, EMnify became a 99% only cloud company. To meet growing scalability and reliability requirements of the interconnection between our AWS-based deployments and multiple carriers, BGP peerings had to be moved out of AWS. Therefore, a pair of Juniper routers were put into place. For a company fully relying on cloud services so far, this alien technology resulted in several challenges. We want to share, how we solved the integration puzzle of this physical equipment into our existing workflows and tools.

[German] Mobilfunknetz in der AWS-Cloud (Oct 2020)

How EMnify runs a fully virtualized mobile core network on AWS.

Jenkins vs. CodePipeline (Sep 2019)

Who has not used Jenkins? Who does not have a love-hate relationship with it?
At EMnify, we are heavy Jenkins users, but we re also always considering alternatives where hosted services could make our life easier.
Therefore, we recently - once again - looked at AWS CodePipeline and its friends CodeCommit, CodeBuild, and CodeDeploy. In this talk, we will compare the current state of the two ecosystems regarding their simplicity and flexibility for implementing both trivial as well as complex pipelines. Further, we cover topics like: deployment, maintenance, security, costs, and usability.

Networking in Amazon Web Services (Oct 2018)

Monitoring Akka with Kamon 1.0 (Apr 2018)

Insights into the inner workings of an application become crucial latest when performance and scalability issues are encountered. This becomes especially challenging in distributed systems, like when using Akka cluster. A popular open-source solution for monitoring on the JVM in general, and Akka in particular, is Kamon. With its recently reached 1.0 milestone, it features means for both metrics collection and tracing of Akka applications, running both standalone or distributed. This talk gives an introduction to Kamon 1.0 with a focus on its metrics features. The basic setup using Prometheus and Grafana will be described, as well as an overview over the different modules and its APIs for implementing custom metrics. The resulting setup allows to record both, automatically exposed metrics about Akka’s actor systems, as well as metrics tailored to the monitored application’s domain and service level indicators. Finally, learnings from a first-time user experience of getting started with Kamon will be reported. The example of adding instrumentation to EMnify’s mobile core application will illustrate, how easy it is to get started and how to kill the Prometheus on a daily basis.

HTTP/2, QUIC, and Multipath-TCP (Mar 2017)

How new protocols are modernizing the web.

  • Event: adidas Tech Talks, Herzogenaurach

(Declarative) Jenkins Pipelines (Mar 2017)

An updated version of the Jenkins Pipelines talk below, this time with the introduction focussing on declarative pipelines.

An Open-Source Chef Cookbook CI/CD Implementation Using Jenkins Pipelines (Feb 2017)

Infrastructure is code and code should be tested. For Chef cookbooks, it is however up to the user to establish such testing and release workflows, at least when relying solely on non-commercial tooling. This talk introduces the - still far from perfect - implementation of a Chef cookbook CI/CD pipeline used in the TYPO3 open source project, publicly available at chef-ci.typo3.org. The complete setup can be instantiated using a publicly available cookbook and is self-contained, i.e., the cookbook passes itself through its pipeline.

This implementation makes use of the novel Jenkins Pipeline plugins, which allow to define pipelines as code.

By pointing to a GitHub organization, any code changes in its cookbook repos trigger a pipeline execution. After passing successfully through the different test stages, including parallelized test-kitchen runs, the upload to the Chef Server terminates the pipeline.

Build it, ship it, run it - here and there (Nov 2016)

Kubernetes as cloud infrastructure solution offering cross-platfrom container orchestration for small and big clusters.

  • Event: Datev TrendScout, Nuremberg

Continuous Delivery (Nov 2016)

An introduction to continuous delivery.

Jenkins Pipelines (Oct 2016)

Pipelines are a central element of Continuous Delivery and break the delivery process down into multiple stages. By visualizing the flow through the pipeline, the delivery team receives feedback about the status of a change made to the delivered software project.

The implementation of such pipelines using the popular Jenkins CI software has been pretty rough until the public release of a whole set of plugins earlier this year. These pipeline plugins are under very active development and now bring decent support for both pipeline visualization as well as configuration using an own domain specific language.

The talk will give an overview over Jenkins’ new pipeline plugins, as well as different ways to define pipelines as code, i.e., manually, by scanning all repos of a Github organization, and via the shared library. By describing a setup for automated testing and releasing of Chef cookbooks, some of the features offered by Jenkins pipelines will be demonstrated.

Let’s go HTTPS-only! (May 2016)

We are really overdue with encrypting all the things! During this talk, I discussed that setting up HTTPS is more than just buying a certificate - for the good and for the bad. On the one hand, one doesn’t even have to buy one, when Let’s Encrypt is an option. On the other hand, there are bunch of options that should be undertaken to make the setup really secure. This includes HTTP Strict Transport Security headers, correct ciphers, and many more.

Cleaning up the Dirt of the Ninetees (May 2016)

How new protocols (HTTP/2, QUIC, Multipath TCP) change the web and data transport.

[German] 7x7 = Feiner Sand - Architekturalternativen für moderne Anwendungen - Docker, Microservices & PaaS (May 2015)

SDN Interfaces and Performance Analysis of SDN Components (Sep 2014)

[German] DevOps und Continuous Delivery (July 2014)

  • Event: Datev TrendScout, Nuremberg

The Development Infrastructure of the TYPO3 Project (Feb. 2013)

What tools are needed to run an open-source project? This talk gives the answer from a TYPO3 perspective and presents the toolchain.

Using Gerrit Code Review in an Open-Source Project (Feb. 2013)

How the TYPO3 project ensures code quality through peer-reviews using “Gerrit Code Review” This talk presents Gerrit itself and the workflow and lessons learned in a big, community-driven open-source project: the TYPO3 project. Gerrit is used here for all top-level projects (TYPO3 CMS, TYPO3 Flow, TYPO3 Neos) since two years to handle every single code change. In addition to human reviews, automatic tests in Jenkins and TravisCI are executed. Gerrit brings transparency into our community-driven project and allows everybody to participate by pushing patches and voting for/against any change.

Official typo3.org Infrastructure &
 the TYPO3 Server Admin Team (Nov. 2012)

About the TYPO3 open source project’s infrastructure and how we (the Server Admin Team) maintain it.

[German] Neuigkeiten aus dem TYPO3-Projekt (Oct. 2012)

News from the TYPO3 project. The current status of TYPO3 CMS 6.0, TYPO3 Neos and TYPO3 Flow.

Making of TYPO3 (Dec. 2011)

How TYPO3 is developed.