How to become a Certified Kubernetes Application Developer in 2020

by | 18.11.2020 | Engineering, Personal Development

In this article, I will be describing my experience preparing for and taking the CKAD exam. A little bit about my background to relate with if you’re also on the same boat as I was: I am primarily a Software Developer; I’ve used mostly Python and Go. I have some experience in shell scripting and nearly negligible experience in DevOps.

First, we’ll spell out what the Certified Kubernetes Application Developer exam is. According to the CNCF website:

“The Certified Kubernetes Application Developer exam certifies that users can design, build, configure, and expose cloud-native applications for Kubernetes.”

CNCF

I recommend going through the CNCF website to understand the curriculum, exam tips, and other FAQs.

We’ll now dig into what it took me, an absolute beginner to DevOps, to prepare for the CKAD exam.

There are a few fundamental prerequisites such as Linux know-how, YAML configuration, Docker, etc., that one must know before proceeding to the Kubernetes world. I find the learning path recommended on the KodeKloud website to be especially helpful to plan the order of learning the prerequisites.

Certified Kubernetes Application Developer materials and courses

Certified Kubernetes Application Developer
Certified Kubernetes Application Developer at KodeKloud

I did the following courses offered by KodeKloud (this is most definitely not a plug for KodeKloud, you may learn all of these from other sources if you wish) in the order listed below.

Linux The Linux Basics Course. This course might not be necessary for everyone. If you’re familiar with the Linux terminal, basic commands, and comfortable using the Linux terminal, then you’re good to go.

AutomationAnsible for Beginners. It is essential to understand how the YAML configuration works and know the data structures used in a YAML file. This course explains all of this and provides exercises for hands-on practising, among other topics.

Docker – Docker for Absolute Beginners, Docker – SWARM | SERVICES | STACKS. Before jumping directly to Kubernetes, I think it is essential to understand the fundamentals of containers and container-based systems. Learning about the Docker platform is a great way to start with it. Once you are familiar with the basics of Docker, proceed further to learn advanced topics such as Docker Swarm, Services, etc., These courses should provide you with a pretty strong foundation to being learning Kubernetes.

Kubernetes – Kubernetes for the Absolute Beginners, Certified Kubernetes Application Developer. These courses explain the core concepts in Kubernetes very well. The content of the CKAD course is tailor-made to fit the CKAD exam curriculum. Working through these courses, their practice materials, and mock exam should give one enough idea about the actual exam. I would also like to add that only these courses might not be sufficient to excel in the exam. Find more resources to help you practice.

What I find noteworthy about these courses is that KodeKloud provides a virtual lab to practice what you have learnt right away. Personally, for me, this is a huge plus. If you have only been watching a bunch of videos without getting your hands dirty, then it is not going to be of much use.

Other helpful resources to prepare for the exam:

  1. https://github.com/dgkanatsios/CKAD-exercises – This is extremely helpful for more practice questions.
  2. Even more practice – https://medium.com/bb-tutorials-and-thoughts/practice-enough-with-these-questions-for-the-ckad-exam-2f42d1228552

Tips for pulling off the Certified Kubernetes Application Developer exam

There are a few key aspects that will help you with the exam.

  1. Familiarity – Familiarize yourself with the exam curriculum, the kubectl command, exporting to a yaml definition file (instead of writing one from scratch), and editing it as needed.
  2. Practice – The more you practice, the more familiar you are with the commands and shortcuts you learn along the way. Practising will also help you respond faster.
  3. Speed – Speed is particularly crucial to ace the exam. You have about 2 hours to answer 19 questions. And each of these questions may have sub-tasks. Again, at the cost of repeating myself, practice, practice, keep practising!
  4. Helpful resources during the exam – You do not have to remember definitions of all the Kubernetes resources. You have access to Kubernetes documentation during the exam to look up any information you want. Besides documentation, you can also use the ‘kubectl explain’ command to look up any resource. Learn how to use the ‘kubectl explain’ command to your advantage, as this will save you a lot of time.
  5. Time awareness – Be aware of the amount of time you spend on each question. Some might require only a couple of minutes, while others require more. Skim through all the questions quickly, make a mental estimate of the time you will have to spend on each of them.
  6. WiFi – Ensure that you have seamless internet connectivity to avoid disruptions during your exam.
  7. Be physically and mentally prepared to sit through the exam for about 2 hours with no break. I know you could take breaks in between, but that will cost you time. So, be prepared.

Ensure that you’re well-rested. Do not stress yourself about the exam as it will only hinder your performance. Even if you do not pass the exam on your first try, you can retake the exam once more. You will have gained insight into the exam expectations, which will surely help you prepare well for your next try. Keep calm and give your best ?

CommunityNew

The DevOps Awareness Program

Subscribe to the newsletter

Join 100+ cloud native ethusiasts

#wearep3r

Join the community Slack

Discuss all things Kubernetes, DevOps and Cloud Native

Related articles6

Startup speed, enterprise quality

Startup speed, enterprise quality

Liebe Kunden, Partner und Kollegen,2021 ist vorbei und uns alle erwarten neue Herausforderungen und Ziele in 2022.In den letzten 3 Jahren hat sich p3r von einer One-Man-Show zu einer festen Größe im deutschen Cloud-Sektor entwickelt. Mit inzwischen 11...

Introduction to GitOps

Introduction to GitOps

GitOps serves to make the process of development and operations more developer-centric. It applies DevOps practices with Git as a single source of truth for infrastructure automation and deployment, hence the name “Git Ops.” But before getting deeper into what is...

Kaniko: How Users Can Make The Best Use of Docker

Kaniko: How Users Can Make The Best Use of Docker

Whether you love or hate containers, there are only a handful of ways to work with them properly that ensures proper application use with Docker. While there do exist a handful of solutions on the web and on the cloud to deal with all the needs that come with running...

Cilium: A Beginner’s Guide To Improve Security

Cilium: A Beginner’s Guide To Improve Security

A continuation from the previous series on eBPF and security concerns; it cannot be reiterated enough number of times how important it is for developers to ensure the safety and security of their applications. With the ever expanding reach of cloud and software...

How to clean up disk space occupied by Docker images?

How to clean up disk space occupied by Docker images?

Docker has revolutionised containers even if they weren't the first to walk the path of containerisation. The ease and agility docker provide makes it the preferred engine to explore for any beginner or enterprise looking towards containers. The one problem most of...

Parsing Packages with Porter

Parsing Packages with Porter

Porter works as a containerized tool that helps users to package the elements of any existing application or codebase along with client tools, configuration resources and deployment logic in a single bundle. This bundle can be further moved, exported, shared and distributed with just simple commands.