My CKAD experience - 2023
Tags: devops, kubernetes, cloud, cncf
Published: 2023-03-26 13:12:58

I have passed my CKAD certification, and here is my [CKAD badge](https://www.credly.com/badges/a0899223-376a-4628-ae47-e62d946f72b7/public_url).

## Why Choose to Take the CKAD Exam?

I think it's an important question one should ask before opting in to any exam, not only CKAD. In what way will it benefit you in your career growth?

My reason for taking the CKAD exam is that I was already working on Kubernetes and digging more into it. I stumbled upon this exam, which was recommended by my colleagues, and it felt interesting and different from other exams where I could actually showcase my skills without any kind of separate preparation.

Unlike other exams, this one is different. How is it different?

1. It's a performance-based exam where you need to perform tasks inside a VM on a Linux terminal with access to only certain URLs in a browser.
2. It doesn't contain any MCQ type questions similar to AWS certs. All questions are practical, and you need to implement them.
3. It tests your critical thinking ability. Time is a big constraint here, and questions are decent, but how quickly you understand and respond (terminal skills 🪄) is the key. There might be multiple ways to solve the questions, but you need to solve them in fewer steps. Hence, adopt an imperative way (using k8s commands) to solve questions if applicable.

When I researched the CKAD exam and joined some communities, I learned that the exam is taken by two types of individuals:

1. Individual X, who are familiar with k8s and are currently using it and also have better hands-on experience on the terminal (Linux/Unix).
2. Individual Y, who have limited knowledge of k8s but are interested in learning and then eventually take the exam.

For individual X, CKAD exam preparation should not take more than 3 weeks - Why?

> They are already using k8s (i.e., familiar with k8s architecture and kubectl commands) and are good with the terminal (vim, bash, Linux commands, etc.). These are the only skills required to pass the CKAD exam, frankly speaking :)
> 

So, the point is, if you are an individual X, don't try to over-prepare just because you see people preparing extensively for it. Most of them are type Y, and you have already been preparing for it every day 😁 - This is what I felt, and it stood correct after giving my exam.

If you are an individual Y who wants to learn and prepare for the CKAD exam, enrolling in the `KodeKloud` course by `Mumshad Mannambeth` is a great choice. Personally, I follow this person and his YouTube channel, and I can confidently say that his course is better than any other you will find. You can access the course at [https://kodekloud.com/courses/certified-kubernetes-application-developer-ckad/](https://kodekloud.com/courses/certified-kubernetes-application-developer-ckad/).

> PS: I have not taken the above CKAD course since I didn't feel it was required for me, but yes, if anyone wants to, it's worth it!!
> 

Before starting anything, just take a look inside CKAD syllabus and its topics so that you can prepare properly → [https://training.linuxfoundation.org/certification/certified-kubernetes-application-developer-ckad/](https://training.linuxfoundation.org/certification/certified-kubernetes-application-developer-ckad/)

- The above page will provide you with answers to "why you should take CKAD" and "who should take CKAD," which are important :)
- Check out the **Domains & Competencies** section for topic-wise weightage.
- Also, please refer to the **Exam Tips** and **FAQs** section under **Exam Details & Resources**, which will give you an overview of how your exam will be held online and what the prerequisites are before starting your exam.
- I would have loved to summarize the details, but things keep changing around the exam 😅, so it's better to always refer to the actual documentation and resources, which is what I did.

## Changes from Last Year - 2022

So, there have been a few changes around the exam environment.

1. Exam changed from terminal to PSI bridge secure browser, which provides VNC connection to your remote Ubuntu XFCE desktop interface aka your playground.
What actually changed for you?
    - Well, you cannot use your personal bookmarks that most of the people curated for k8s exam.
    - No dual monitor setup allowed (Major one for me!)
    <img width="100%" style="width:100%" src="https://media.giphy.com/media/U4VXRfcY3zxTi/giphy.gif">
2. Also, along with new Kubernetes version releases, the exam is updated to use the latest version. (I gave my exam on k8s version v1.26).

To test the new remote desktop UI, you can try this [killercoda playground](https://killercoda.com/kimwuestkamp/scenario/cks-cka-ckad-remote-desktop). I was using it most of the time to get used to the exam-like environment for solving questions.

## Resources That I Have Referred to for Practicing CKAD Exam

1. [https://github.com/dgkanatsios/CKAD-exercises](https://github.com/dgkanatsios/CKAD-exercises) - This is one of the popular resources and will cover all aspects of CKAD syllabus. Practicing 2-3 times will make you confident!
2. [https://github.com/bmuschko/ckad-crash-course#additional-resources](https://github.com/bmuschko/ckad-crash-course#additional-resources) - In case you want more overview or practice a different set of questions, you can refer to this one too.

<aside>
🚨 Lastly, don't forget that you get 2 free sessions on [killer.sh](http://killer.sh/) when you purchase CKAD exam from CNCF. It sets an environment similar to a real CKAD exam, but questions are tougher than CKAD exam, which will prepare you in the right way (You can claim that from your Linux foundation portal.)
</aside>

> One thing to note for killer.sh is questions will be very much the same for CKAD|CKA|CKS simulator irrespective of different sessions.
Source: https://killer.sh/faq
> 

If this truly is the case, then it is missing questions on some topics below.

1. Deprecated API versions
2. Admission controller
3. RBAC
4. Ingress

Due to which real exam was actually a bit tough than [killer.sh](http://killer.sh/) exam since I got questions from above topics.

<img width="100%" style="width:100%" src="https://media.giphy.com/media/3ohjV5uukLAvnhS7vy/giphy.gif">

## Exam Experience

### Before Attending Exam

1. There will be an inspection of your place where you intend to give CKAD exam, so remove anything that categorizes as a non-decorative item like a notebook, phone, tablet, etc.
2. Make sure you check your rig is compatible with PSI bridge standards - Run your test here [https://syscheck.bridge.psiexams.com/](https://syscheck.bridge.psiexams.com/) (source: [https://docs.linuxfoundation.org/tc-docs/certification/tips-cka-and-ckad](https://docs.linuxfoundation.org/tc-docs/certification/tips-cka-and-ckad))
3. Be ready with your government IDs or passport for your verification.
4. No one needs to be there in the room where you are giving the exam; otherwise, the supervisor might not allow you to give the exam.
5. Internet connection should be good; otherwise, it can be a laggy experience and can cause connection retries in-between. Keep your mobile data hotspot handy in case your WIFI is down.
6. Lastly, if you are using an external monitor with a laptop setup, make sure your laptop lid is closed; otherwise, the exam environment will detect it, and you cannot proceed unless you close it.
    1. And you need an external webcam in this case, make sure your webcam quality is good enough to show a clear face of yours and government IDs aka verification proof docs.

For me, point 5 didn't go as expected. I was prepared and planned to give the exam with an external monitor with an external webcam, but my webcam quality was grainy inside the exam environment due to which my verification docs (you need to show it to your camera) and face were not coming clear. Hence, the supervisor told me to change the setup immediately 💔 😔

> PS: switched to my laptop camera, and it went fine. Still not sure if it's the exam environment throttling the quality of the webcam since my webcam is a 1080p FHD.
For folks interested/curious, I am using this [webcam](https://amzn.eu/d/01CjVnm).
> 

### During Exam

<img width="100%" style="width:100%" src="https://media.giphy.com/media/kz6cm1kKle2MYkHtJF/giphy.gif">

1. My exam started well with no issues or lag inside the virtual machine, but in-between of my exam, my remote desktop froze, and it was not taking any inputs.
2. What I did was quickly clicked on `reset desktop`, which actually will restart your VM (your data is persistent, so chill!) but only concern is my crucial time was draining since the timer is on 💣 - After 2 rounds (in the 1st round, it was still stuck, didn't work) of clicking `reset desktop`, it started to work 😌 but then I was a little bit behind my planned schedule.
3. The supervisor is continuously monitoring everything - audio, video, screen sharing and make sure you don't cover your face, whisper, or do any kind of actions else a ping from the supervisor will pop up to ruin your focus mode 🙂 (I got some pings 🔔 for external sounds and actions)
4. A simple but important thing, make sure you are switching to the current context and namespaces for each question. In case you didn't, even if you solved the question correctly, you lose marks 🙀
5. Some questions on which my confidence was a bit low summoned to trouble me like Ingress, RBAC, Service Accounts. Apart from these topics, I was prepared for everything, but finally, I was able to partially solve questions on those topics (sigh…)

## Conclusion

To clear the CKAD exam with more than 80 or 90 percent, it is important to be proficient with all the tips, tricks, and commands that you have learned, and to practice a lot around each topic.

You don't need to have fast typing speed. Instead, type steadily with decent speed and use command aliases for `kubectl`, which will save time.

Despite a few setbacks, the overall experience of taking the exam was good, especially since it was my first certification exam.

Best of luck 🍀 to those who are planning and preparing for the CKAD exam!

Also, please share your interesting experiences in the comments section. 😈
<img width="100%" style="width:100%" src="https://media.giphy.com/media/ntl8yJ3ctzYHdJPm02/giphy.gif">