Certified Kubernetes Application Developer

TL;DR: In late 2018 I passed the Certified Kubernetes Application Developer (CKAD) certification. In this post I’m sharing a few tips on what to expect and how to prepare.

A few people approached me asking various questions about CKAD, so I thought I’d summarise some of my learnings, making sure to not overstep the line between ‘being helpful’ and ‘sharing too much’. As with everything, the exam itself, its format and content are continuously evolving; if you dig up this story in 2021, please keep in mind it was written in early 2019.

The CNCF-managed CKAD certification is for —…


Eternal Orchestrators in Durable Functions on Azure

TL;DR. I continue this mini-series on scheduling recurring serverless activities using Azure Functions. In my previous post I explored timer-triggered Functions, in this little write-up I talk about setting up a recurring job using Eternal Orchestrators in Durable Functions on Azure, highlighting some scheduling nuances along the way.

Durable Functions is a framework on top of Azure Functions that lets you design stateful serverless functions. The framework manages execution state, checkpointing and restarts transparently. At the time of writing, C#, JavaScript and F# are supported. The three components of a Durable Function are: Orchestrator, Starter Function and an actual Activity…


Serverless cron jobs in Azure

TL;DR. I discuss a couple of ways to schedule your Azure Function via a timer trigger and a Logic App. I also touch on Durable Function and talk about the nuances of each approach and some usage scenarios

Scheduling can be a tricky business. I was working on a project that, among other things, required me to rearchitect a simple cron job that used to run every minute on a Linux box. The job was written in node.js, was small, stateless, without external dependencies and therefore was a good fit for Azure Functions. Or so I thought…

To begin with…


…or the power of parallel consumers and host.json

TL;DR. I take a fairly standard serverless event processing scenario — an Azure Function triggered by messages in an Event Hub — and talk about how how to optimise this system for throughput through:
a) overall architecture
b) EH partitioning, and
c) tweaking the Event Hub trigger host.json settings: maxBatchSize, prefetchCount and batchCheckpointFrequency. I doubt anyone would be interested in reading a yet another theoretical opus, so for my reader’s benefit I ran a series of experiments which involved testing multiple combinations of Event Hub partition counts and host.json settings, and observing the impact on latency and throughput. …

Igor Izotov

Enterprise Solutions Architect @ AWS. Opinions shared are my own.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store