Devopsroadmapupdated
Devopsroadmapupdated
ROADMAP
by [Link]
Table of content
Chapter 8: Certifications
◦ Different types of certs (hands-on or MCQ based)
◦ Recommended certs (Cloud, K8s, Linux and more)
◦ How to study for certifications
I aim to address, in-depth, a common question: “How can I break into the
booming field of DevOps if I don’t have experience or a degree?”
First and foremost, I am grateful to Allah for providing me with this opportunity
to share my knowledge and experiences for the benefit of others.
“It is said that a wise person learns from his mistakes. A wiser person learns
from others’ mistakes. But the wisest person of all learns from others’
successes.”
Chapter 2
Why am I writing this?
Many individuals, from many different backgrounds, have asked me how
I got into DevOps. Inspired by their curiosity and the desire to help others, I
decided to write this article as a resource for anyone looking to embark on a
journey in the tech industry. For many, the idea of entering this field can be
daunting, considering the vast amount of knowledge to acquire. However, I
assure you that with focused dedication over 3-6 months, you can land a solid
entry-level, junior, or graduate position as a DevOps, Cloud, or Infrastructure
Engineer.
To clarify, there are various methods to pursue a tech role. Here, I will be
sharing my experience and providing one of the fastest and most effective
pathways to secure a good DevOps role. This roadmap has been tried and
tested by many individuals, and I have included testimonials from those who
have successfully followed this approach.
While boot camps, degree programs, internships, self-study, and other methods
are available, this pathway combines the easiest and most well-structured
approach to get you started.
By following this pathway, you will not only gain technical knowledge but also
develop essential qualities such as:
▪ Self-motivation
▪ Discipline
▪ Time management
▪ Curiosity
▪ Eagerness to learn
▪ Persistence and resilience
▪ Adaptability and flexibility
Remember, many others have successfully navigated this path before you, so
do not doubt yourself or give up too early. Keep pushing forward, and if you
have any questions, feel free to reach out!
Chapter 3
Testimonials
I am incredibly grateful to the individuals who generously shared their testimo-
nials about their experiences with the DevOps pathway.
e De
e an as
le pl
od
Re
oy
on
e
st
M
il d
at
u
Te to
pe
Developers focus on delivering new features to meet user demands and stay
ahead in the competitive market. They may not always consider the potential
impact on the infrastructure or the operational challenges that could arise from
frequent changes.
However, some will argue and say that “DevOps Engineer” is not a thing and
say that “DevOps is a way of working”. Technically, they are correct but the
term has developed and is now often used freely by many large organisations.
While not everyone is solely motivated by salary, job stability, and long-term
career progression can be strong driving factors. Amid the pandemic, many
people experienced job scarcity, increased competition, and the realisation
that holding a degree alone might not be enough to stand out in the crowd.
Discovering the field of DevOps and its potential opened doors to a better
livelihood for many individuals. The attractive salaries associated with this
field serve as an additional source of motivation.
Here are the approximate salary ranges for DevOps Engineers in the UK:
While salary is not the sole measure of success, it is an aspect worth consid-
ering in your career journey. Remember, the salary figures mentioned here are
intended to provide a general idea and should not be considered definitive or
current. Focus on your passion, continuous learning, and honing your skills,
and the financial rewards will follow.
Now, let's delve into the upcoming chapters, where we will explore practical
steps and valuable insights to kick-start your career in DevOps!
Chapter 6
Prerequisites & clarifications
Now, let's dive straight into the roadmap to follow! But before we begin, there
are a few important prerequisites and clarifications to keep in mind:
Important pre-requisite
It is best to follow the order of levels, starting from Level 1 and progressing
upwards. Level 1 covers the most fundamental concepts, which is essential
knowledge for every Engineer. Not familiarising yourself with these concepts
will make it challenging to perform your daily DevOps work effectively.
Once you have completed Levels 1 and 2, you can confidently start applying
for your first role. After completing these two levels, engage in practical
projects and proceed to Level 5.
Levels 3, 4, and 5 are included for those who wish to pursue additional
learning and expand their skills after securing their first job. However, there is no
pressure to complete Levels 3-5 before landing your first role. Levels 1 and 2
provide a solid foundation to get started.
Chapter 7
The Pathway
Level 1 (Fundamentals)
Linux
- Basics of Linux Command Line
- Navigating directories & manipulation (ls, cd, mv, cp, mkdir, touch, echo)
- Process monitoring (ps, top, lsof)
- Package management (apt, yum, dnf)
- User and group management (useradd, usermod)
- User/group permissions (chmod, chown, chgrp)
- Text editors: Vim, nano (move around vim and how to exit vim)
- Networking & Troubleshooting tools (netstat, ps aux, ping, dig, traceroute,
nslookup)
- Text processing (grep, awk, sed)
- Setup your own local Linux VM using VirtualBox/Vagrant or in the cloud
Git
- Basics (cloning, ssh setups etc)
- Commits
- Branching
- Merging
- Pull/Merge Requests
- Resolving merge conflicts
- Rebasing
Networking
- OSI Model (Layers 1 to 7)
- IP/TCP/UDP
- DNS
- Firewalls (stateless/stateful)
- CIDR/Subnetting
- HTTP/HTTPS/SSL/TTL
- Forward vs Reverse Proxy (Load Balancers)
At this level, you now have a good understanding of the fundamentals. You are
now ready to progress to Level 2!!
Terraform
- IaC basics
- Terraform state
- Terraform backend & state locking
- Vars and modules Using TF with common providers
- Terraform commands (tf init, plan, apply, fmt, validate, destroy, import, re
fresh)
- Terraform workflow
- Create your own Terraform module and use it in different environments
(prod, staging, dev etc) - Project
CI/CD
- What is CICD
- How CICD fits into DevOps
- Using CICD to automate processes
- Writing pipeline YAML/Jenkins files etc
- Using CICD for building, testing and deploying apps
- GitHub Actions
- GitLab CICD
Chapter 7
Docker
- What are containers. Containers vs VMs.
- Container Images
- Writing Dockerfiles (FROM, COPY, RUN, ADD, CMD)
- Container volumes
- Docker commands (docker build/run/tag/push/pull/inspect/ps etc)
- Docker compose (multiple containers)
- Advanced Docker (security in Dockerfiles - image size, user perms, fewer
layers etc)
Kubernetes
- What is K8s
- How is it different to Containers
- Understand K8s architecture and components (kube-api, scheduler,
nodes, etcd etc)
- Understanding K8s resources (pods, deployments, services, network
policy, rbac, namespaces, PVCs, ingress etc)
- Scaling, rolling updates
- Canary & Blue-Green deployments
- The CKA/CKAD exam (A big bonus!)
- K8s in the Cloud (EKS/AKS/GKE)
After this stage, I would highly recommend you prepare your CV, set up a
LinkedIn profile, and GitHub profile filled with projects, apply for jobs, and
practice mock interviews.
Learn 1 language. I would recommend you start with Python. Once you get
good at Python, look into Golang.
Helm
- What is Helm. How does it link to K8s.
- Managing deployments and K8s resources using Helm
- Common helm commands (helm install, upgrade, rollback, repo add/up
date/list, list, env, plugin, create, lint, pull)
- Creating Helm charts from scratch and customising them
- Look into Kustomize (alternative for Helm)
Ansible
- What is Config management? Different types? How is it different to Terra
form/IaC?
- Creating playbooks
- Creating roles
- Using Ansible galaxy
- Using environment variables
- Automating server update/config with Ansible
- Integration with other providers
- Ansible testing (molecule framework) - Advanced
SRE
- SLI/SLO/SLAs
- Post-mortems and documentation
- Incident response & incident management
- Runbooks
- Reducing TOIL
- Error budgets, service monitoring and alerting
- Chaos Engineering
- SRE at Google
Security
- Automated security testing
- Vulnerability testing
- Static scanning (Checkov, Trivy)
- Security monitoring
Serverless
- AWS Lambdas
- Azure Functions
- GCP Cloud Functions
- OpenFaaS
Chaos Engineering
- Chaos Monkey
- Gremlin
- Chaos Toolkit
Advanced Monitoring
- Distributed Tracing (Jaeger, Zpikin)
- Advanced log management: ELK (Elasticsearch, Logstash, Kibana),
Splunk, Graylog
- Time Series Databases: InfluxDB, Prometheus
- APM (Application Performance Monitoring): New Relic, Dynatrace, AppDy
namics
Chapter 7
System Design
- Scaling, Availability
- Forward/Reverse proxies, load balancing
- CDN/Caching
- Messaging Queues
- Databases & DB architecture (replication, sharding, indexing etc)
- Pub/Sub, Event-driven architecture
- API Gateways
Level 5 is endless and I can keep going! Tech is an ever-evolving field. You
are not expected to know everything but you are expected to be ready to learn
new things every day.
Continuous learning and staying up-to-date with industry trends are essential
for a successful DevOps career.
Chapter 8
Certifications
Certifications combined with hands-on learning are crucial for a successful
career in DevOps. You can’t do certifications without any projects, otherwise,
it’s just like graduating from university without work experience. I am a big fan
of certifications as they provide structured learning and allow you to explore
services or tools you may never come across daily. They offer a valuable
framework to deepen your understanding and demonstrate your commitment to
professional growth.
Studying for certifications with hands-on projects helps you gain practical ex-
perience and enhance your marketability. This comprehensive approach allows
you to showcase your skills, solve real-world problems and stand out among
other candidates.
A few years back, I began collecting a list of all the certifications that I believe
are worthwhile.
Below are some of the top 5 list of certifications one should aim to do (espe- cially
if you are new to the career of DevOps:
How to study for these cloud certifications and pass the exams?
Note: I have recommended specific resources and individuals. Note that I am not
sponsored or paid to recommend rather they are recommendations based off my
personal experience and quality of the courses.
Feel free to adjust your study patterns to suit your needs. Some of these steps
I like to follow that have assisted me:
1. Pick an instructor. based on your goals. There are currently quite a lot out
there: Stéphane Maarek (DataCumulus & Udemy instructor), Adrian Cantrill
([Link]), and Andrew Brown (from freeCodeCamp & Exam Pro). They
are all good instructors for AWS but with different teaching styles. If you are
looking for an in-depth course, Adrian Cantrill’s course is very good. If you are
looking to pass the exam with just enough knowledge, then Stéphane Maarek
is your go-to instructor. Just a note, some of these courses are PAID. Towards the
end of the article, I have recommended a few courses which are FREE and can be
found on YouTube.
2. Once you’ve picked an instructor, choose the correct course and watch the
whole course from beginning to end. Make sure to attempt ALL labs within the
course especially the ones you don’t understand and do further reading on
those.
6. Make sure to not attempt the same mock exam more than twice otherwise
you will just memorise answers.
7. Once you can score past 70/80% consistently in exams, book the real
exams. The pass rate for most of them is in the range of 70–75%.
Note: These exams can be done at home. The prices vary based on the hierar- chy
(the foundational ones being the cheapest and vice-versa). Once you have
completed the exam, you will receive a badge and a certificate usually within
24 hours, which you may share on your socials.
DISCLAIMER: The certificates alone will not land you a role. You must com-
plete extra work like cloud projects, extra self-learning, and practice inter-
views. Remember, your technical skills are as important as your soft skills. The
certificates do, however, open MANY doors and land you interviews!
Once you have completed one or two cloud certifications, don’t overdo it.
Focus on learning the skills that are most vital in your current/future role.
Once you have completed Levels 1 and 2, you are ready to showcase your
skills and apply for jobs. You are nearly at your goal now! This is the last
hurdle between you and a DevOps role!
Prepare your CV
▪ For example, consider creating your own cloud project, developing your Ter-
raform modules, and testing them. Build your Kubernetes cluster using
ArgoCD and implement monitoring. The possibilities are endless.
Chapter 9
Here are some examples of impactful DevOps projects you can attempt:
5. Implement Service Mesh for K8s: Setup a service mesh like Istio or Linkerd on
Kubernetes to manage traffic between microservices, ensure security and
observability .
Chapter 9
▪ Large DevOps Project for the CV (AWS, Terraform, Git, Linux, CICD)
◦ Create 2 modules in Terraform that can create a Web App that runs
nginx (on an EC2 instance) and a module for a VPC (add all required
parts
such as NATGW, route tables and everything else). Using AWS. Using cor-
rect folder/directory strategy. Make sure you can access the site after
(figure out how to do this)
◦ Make sure the modules work and you can run on 3 different environments
like prod, dev and staging.
◦ Create a CICD pipeline to run your Terraform workflow (ideally with
GitHub Actions) but you can use GitLab pipelines or even Jenkins if you
want.
◦ Make sure you use env vars for any credentials. I don't want to see any
hardcoding of credentials.
▪ Bonus:
◦ Write Terratests for your modules (this is in Golang) or you can do unit
tests in Python. Whichever you like but I recommend Terratests as it's a
well known industry standard.
◦ Create a a nice README markdown documenting all your work so that an-
other user can run it.
◦ Put all your work in a GitHub repo and commit it there. Use what is nec-
essary like gitignore and pre commit configs. And anything else you deem
useful and secure for the project.
Note: You can use chatGPT but make sure you understand what you’re writing
and creating and can explain in an interview. I want to see your thinking and
how you go about it. So that if someone asks in an interview, you can explain.
Create a personal GitHub account and showcase all the projects you have
worked on. This allows you to manage your code effectively and demonstrate
your skills to potential employers.
Job application
One advice, expect many rejections as this will be your first role, this is
normal. Keep applying and be patient. This is the final hurdle. Keep pushing till
you get that offer!
Interview prep
Technical Questions
10. What job titles should I look for when searching for a DevOps role?
• DevOps Engineer, Cloud Engineer, Systems Engineer, Infrastructure Engi-
neer, Platform Engineer.
19. What does a typical day look like for a DevOps Engineer?
• It varies, but expect to code, attend meetings, and solve problems or tick-
ets that come up.
• General day (from start to end): Standup » Meetings » Pair Programming
sessions » Individual session » More meetings » More coding » Watercool-
ers » End of Day
Zoheb Ishfaq,
DevOps Engineer @ Microsoft
[Link]
hfaq/
“This is an awesome guide
to getting started in technol-
ogy in a DevOps environ-
ment. I wish I'd had such a
clear roadmap of skills to
learn when I started soft-
ware engineering!“
John Crickett
Software Engineering Manager, “Mohamed and I overlapped
[Link] while working at Trainline,
ckett/ however, I actually became
familiar with his work
through LinkedIn rather than
the office. Although I hav-
en’t tried the levels in his
pathway myself, I have read
the full article from start to
finish, and I think it is abso-
lutely fantastic!
I can imagine the levels he
describes in Chapter 7
being extremely useful to
many people. I love that he
includes not only what you
“If you're looking to break need to learn _before_ get-
into DevOps, this learning ting a job, but also what you
pathway is a solid bet. De- can learn after that, to con-
signed by a seasoned tinue advancing your career. I
DevOps engineer, it's thor- really appreciate his expla-
ough, user-friendly and has nation of the term “DevOps”.
already helped plenty of I have always struggled to
people get their start in the understand this term, and
field. It's not just about the now I feel like I finally get it.
theory - it packs in practical Most of all, I admire and re-
tips that you can really use. spect Mohamed’s attitude of
No matter what stage you're generous knowledge-shar-
at, this guide can help you ing. I think the creation of
level up. Give it a go and this free curriculum guide,
you won't be let down.“ this pathway, is such a great
idea. And it’s the first time
Adil Ul-Islam, I’ve seen something like it!
Senior Cloud Labs Developer With this pathway, he is
[Link] making the field of software
ulislam/ development more accessi-
ble - and thus, undoubtedly,
making the world a better
place.“
Erin Hamalainen
Software Engineer @ ex-Google & Trainline
[Link]
Pathway backed by:
We have released a full DevOps bootcamp which aims to help and prepare
people for a DevOps role. The bootcamp is all-inclusive meaning that you will
get both technical and non-technical support from a vibrant community.
[Link]
What next?
Congratulations on reaching this point! The learning journey in DevOps is
never truly complete and the key is to keep learning and growing. Having a
solid foundation in fundamental skills will undoubtedly increase your chances
of landing a junior role. Now, imagine the multitude of opportunities that await
when you have a strong grounding in more advanced tools and concepts.
I sincerely hope that this guide has been beneficial to you. If you have found
value in it, please consider sharing it with others who may also benefit.
Once again, congratulations on making it this far! Your commitment and dedi-
cation to learning are commendable. Keep pushing forward and never stop
learning in your DevOps journey.
If you have any questions or simply want to connect, feel free to reach out to
me on LinkedIn. I would be more than happy to assist or even just have a
friendly conversation :)
Thank you for reading and all the best on your learning journey!