The Story of CKAD and Me (How I got through the certification)

Ganesh Narasimhadevara
5 min readFeb 7, 2020

Those were the days when I recently moved into the town of DevOps and started making friends with Mr.Jenkins, Mr.Docker and few others.

Mr.Docker and I discussing DevOps over a Coffee
Mr.K8s — The cool guy in the town!

Soon after a few months, I heard about this new lad in town, Mr.K8S, who is super cool and everyone wants to be friends with him. I also heard Mr.K8S is a very good friend of Mr.Docker at work.

I wanted to join Mr.K8S’s clan too and become good friends with him.

And then I met Mr.Richard (from Udemy) and Mr.Mumshad (from KodeKloud), who personally knew Mr.K8S and introduced me to him.

Now, it is up to me to gain the trust and get Mr.K8S to accept me as his friend.

Stories apart:

CKAD (Certified Kubernetes Application Developer) — a badge that every K8S fan would love to get. As a DevOps enthusiast, I started training for the certification with a slight change in my daily routine and with selected sources of preparation.

Timeline:

  • The training started 6 weeks before the exam for 3 hours a day — 1.5 hrs in the morning and 1.5 hrs before I hit the bed.

Sources:

Course by Richard Chesterwood on Udemy for initial learning: https://www.udemy.com/course/kubernetes-microservices/

  • Well organized course starting from the very basics until you gain expertise in building your own cluster. The incremental way of elaborating K8S concepts clears the K8S-is-very-complex thought from your mind. The course does not focus on the certification exam but helps you understand K8S concepts.

Course by Mumshad Mannambeth on KodeKloud as preparation for the certification exam: https://www.udemy.com/course/certified-kubernetes-application-developer/

  • Fantastic course mainly focusing on the certification exam. Interim tests after every concept and Mock tests towards the end of the course gives you great confidence in the overall system. Adding to these, the examples used by Mumshad are exceptionally good and simplifies the concepts. The challenge exercise towards the end of the course tests your learnings. The best part — all practice tests are very interactive with guidance. You don’t have to set up an environment for practicing.

Every Single exercise at https://github.com/dgkanatsios/CKAD-exercises

  • Very helpful and consolidated examples from the CNCF syllabus. Practicing these multiple times increases your chances of clearing the exam

First Exam Experience:

  • The exam was nowhere like what I expected. Probably my expectations were biased with the other certification exams I took part in.
  • The exam was for 19 questions. All exercises and NO multiple-choice questions
  • Covers multiple concepts at the varying weightage — Core Concepts, Multi-Container Pods, POD Design, Configuration, Observability, Services and Networking, State Persistence
  • You are strictly instructed to have only one tab open on the browser (I recommend Chrome). You can have another tab of K8S official documentation, but only after the proctor says so
  • No bright lights behind you
  • No other people in the room
  • No writings on the table, walls or boards
  • Nothing on the table
  • No looking away from the screen for more than 5 secs (I was asked not to)
  • No loud or lip reading of the questions
  • With all these, I started writing my exam. While I was quite quick at solving the first few questions, towards the 10th question the questions started getting tougher and I had to attempt a few questions multiple times.
  • By the end of the designated duration, I was left with 3 questions not even attempted and 4 questions attempted at low confidence

Mistakes:

  • Did not read all the questions before starting
  • Tried attempting the questions again and again, with simple syntax mistakes as I got anxious about the time
  • Did not maintain tracking of the questions I left unattempted
  • Did not look for the weightage before attempting a question

I FAILED!!! Scorecard — 65% (expected 66%)

Second Exam Exp:

  • While I understood all my mistakes from the previous exam attempt, here is what I additionally did as preparation for my second attempt
  • Continued to practice, practice and practice, especially a lot of shortcuts. For example:
  • Use alias
k=kubectl 

at the very beginning of the test. Helps you use k get po instead of kubectl get po (I know it’s not a lot of effort to type 7 letters, but helps!)

  • Commands to create pods/deployments/jobs the imperative way
  • Create POD:
kubectl run --generator=run-pod/v1 foobar --image=nginx
  • Create Deployment:
kubectl run foobar --image=nginx
  • Create Deployment with replicas:
kubectl run --generator=run-pod/v1 foobar --image=nginx --replicas=3
  • Create Job:
kubectl run foobar --image=nginx --restart=OnFailure -- <command>
  • Create CronJob:
kubectl run foobar --image=nginx --restart=OnFailure --schedule=“*/1 * * * *” -- <command>
  • Super important — USE THE DAMN NOTEPAD THING! It is impossible for you to keep a track of questions that you haven’t attempted or the ones you are doubtful about. Used the notepad to track
  • Attempt the ones with higher weightage first and then go to low weightage questions. Use notepad to sort the questions as per weightage. My notepad looked something like this. TO do this you need to look through all the questions, at least the weightage for each one.
  • If you fail at one question twice — skip it — attempt it later

Output:

  • Walked out to the room with high confidence that I cleared the exam
  • What did the result show after a day? Score — 86% !!!
And …. we are friends!

I hope this helps your exam readiness. Good luck!!

And we are looking for Rockstar DevOps engineers at ZestMoney. Send your profile to careers@zestmoney.in

Thanks for the illustrations - Krishna Gayatri

--

--

Ganesh Narasimhadevara

Director — DevSecOps @ ZestMoney | Certified K8S App Dev | Hiring DevOps Rockstars | Performance Aficionado | Ex-Sapient