Engineering the Future of Software
Feb 3–4, 2019: Training
Feb 4–6, 2019: Tutorials & Conference
New York, NY

Understanding Kubernetes

Jonathan Johnson (Dijure LLC)
9:00am–12:30pm Monday, February 4, 2019
Secondary topics:  Hands-on
Average rating: ****.
(4.14, 7 ratings)

Who is this presentation for?

  • Software engineers



Prerequisite knowledge

  • A basic understanding of how to build and publish Docker containers

Materials or downloads needed in advance

  • The workshop details can all be accomplished online using so just a laptop with a browser is needed. However, if you wish to run the exercises locally on your laptop (Windows, Mac or Linux) feel free to install the latest versions of VirtualBox, Minikube, kubectl, and Helm.

What you'll learn

  • Gain a working knowledge of tools used to deploy and run applications on Kubernetes


Distributed application architectures are hard. Building containers and designing microservices to work and coordinate together across a network is complex. Given limitations on resources, failing networks, defective software, and fluctuating traffic, you need an orchestrator to handle these variants. Kubernetes is designed to handle these complexities, so you don’t have to. It’s essentially a distributed operating system across your data center. You give Kubernetes containers, and it will ensure they remain available.

Jonathan Johnson walks you through a series of building blocks to demonstrate how Kubernetes actually works. You’ll grasp the essence of Kubernetes as an application container manager as you learn fundamental concepts like deploying, pods, services, ingression, volumes, secrets, and monitoring. Along the way, you’ll see how simple containers are quickly started using a declarative syntax and build on this with a coordinated cluster of containers to make an application. You’ll also learn how to use Helm to manage more complex collections of containers and play chaos monkey and mess with some vital services to observe how Kubernetes self-heals back to the expected state. Finally, you’ll observe performance metrics and see how nodes and containers are scaled.

Join in to learn how to deploy and manage your containerized application. On the way, you’ll see how Kubernetes effectively schedules your application across its resources.

Photo of Jonathan Johnson

Jonathan Johnson

Dijure LLC

Jonathan Johnson is a platform architect at Intelligent Artifacts, working on the symbiosis of an artificial general intelligence (AGI) platform with the Kubernetes ecosystem, and a software architect at Dijure LLC.

Jonathan is halfway into his second score of engineering commercial software, driven by his desire to design helpful software to move us forward. His applications began with laboratory instrument software and managing its data. Jonathan was enticed by the advent of object-oriented design to develop personal banking software. Banking soon turned to the internet, and enterprise applications took off. Java exploded onto the scene, and since then he has inhabited that ecosystem. At 454 Life Sciences and Roche Diagnostics, Jonathan returned to laboratory software and leveraged Java-based state machines and enterprise services to manage the terabytes of data flowing out of DNA sequencing instruments. Then as a hands-on architect at Thermo Fisher Scientific, he applied the advantages of microservices, containers, and Kubernetes to their laboratory management platform. Jonathan enjoys comparing and sharing his adventures with peers. He shares ways to modernize application architectures while adhering to the fundamentals of high modularity and low coupling. A longtime resident of Connecticut, he discusses his experiences with technical groups and meetups.

Comments on this page are now closed.


Picture of Jonathan Johnson
02/04/2019 9:01am EST

Thank you all for attending!

My presentation PDF was too large for the O’Reilly site. Instead, the presentation can be referenced here:

Or, email me at and I can send the PDF as well.