DEV Community

loading...
Cover image for The complete DevOps roadmap  πŸš€

The complete DevOps roadmap πŸš€

Ankit Anand ✨
Your friendly content curator on DevOps, open-source projects, application performance monitoring & cloud native technologies πŸ‘¨πŸ½β€πŸ’»
・Updated on ・3 min read

Hi there,

This is Ankit, your friendly DevOps content curator. I read a lot of articles about DevOps, distributed systems, performance monitoring, etc. and then share key takeaways from those articles so that you can stay updated and learn a few things quickly.πŸ™‚

DevOps for any organization is a cultural shift. It's not just about tools and technologies but a continuous practice needed for building and maintaining scalable web applications.

Today I want to share an amazing resource useful for anyone in the journey of becoming an Ops Engineer. This Github project has 163k stars, showing how popular it is. It has roadmaps on becoming a frontend, backend & DevOps engineer.

Link to the GitHub repoπŸ‘‡
Developer roadmaps

The 2021 DevOps roadmap

DevOps roadmap
Click to enlarge

Now let's go through the steps of the roadmap one by one.

1. Learning a programming language

You need to get a good grasp of a programming language. It doesn't matter which one, but it's needed for writing automation code. Automation is a key part of DevOps. You can learn Python, Java, Ruby, Golang etc.

2. Understand different OS concepts

As suggested in the roadmap, you need to learn about process management, threads & concurrency, sockets, I/O management, virtualization, memory system, etc.

3. Learn to Live in terminal

Terminal commands are essential for a DevOps engineer, especially if you are working on linux. You need to learn commands for process monitoring, text manipulation, system performance, etc. When you practice these commands, you can become a master at shell scripting.

4. Network, Security & Protocols

You need to be familiar with various types of protocols which play a major role in communicating with different devices across the network like TCP/IP, HTTP, HTTPS, SMTP, FTP etc.

5. What is and how to setup

In general, a DevOps engineer should know how to set up a web server like IIS, Nginx, Apache and Tomcat. They should also know about Caching Server, Load balancer, Reverse Proxy, and Firewall, etc.

6. Learn Infrastructure as code

This is one of the most critical component in the learning path of a DevOps engineer. You need to learn about app containerization and have thorough understand of container tools like Docker and Kubernetes. Configuration management tools like Ansible, Chef, Salt & Puppet. Other areas include container orchestration and infrastructure provisioning.

7. Learn some Continuous Integration and Delivery (CI/CD) tools

Continuous Integration/Continuous Deployment is now a core part of setting a DevOps culture. So you should get familiar with CI/CD tools like Gitlab, Jenkins, Github actions etc.

8. Learn to monitor software and infrastructure

When you have thousands of services running, it's important to make sure that the system is running in fine health. Both your infrastructure and application should be continuously monitored. Tools like SigNoz can help you in setting up a robust monitoring system for your applications.

9. Learn about Cloud Providers

Most of the apps today are built as cloud-native. So you need to make yourself familiar with major cloud providers. AWS, Azure and Google Cloud are the leading players and they provide free courses about their tools too.


There is lot to learn in this field with constantly changing landscape. But with a good foundation and practice, you can build a solid career in this field which is growing very quickly.


Currently building SigNoz - an open-source APM & observability tool πŸ’™

GitHub logo SigNoz / signoz

SigNoz helps developers monitor their applications & troubleshoot problems, an open-source alternative to DataDog, NewRelic, etc. πŸ”₯ πŸ–₯

SigNoz-logo

Monitor your applications and troubleshoot problems in your deployed applications, an open-source alternative to DataDog, New Relic, etc.

License Downloads GitHub issues tweet

SigNoz helps developers monitor applications and troubleshoot problems in their deployed applications. SigNoz uses distributed tracing to gain visibility into your software stack.

πŸ‘‰ You can see metrics like p99 latency, error rates for your services, external API calls and individual end points.

πŸ‘‰ You can find the root cause of the problem by going to the exact traces which are causing the problem and see detailed flamegraphs of individual request traces.

SigNoz Feature

πŸ‘‡ Features:

  • Application overview metrics like RPS, 50th/90th/99th Percentile latencies, and Error Rate
  • Slowest endpoints in your application
  • See exact request trace to figure out issues in downstream services, slow DB queries, call to 3rd party services like payment gateways, etc
  • Filter traces by service name, operation, latency, error, tags/annotations.
  • Aggregate metrics on filtered traces. Eg, you can get error…




Discussion (5)

Collapse
qasius profile image
Qasius

I already know that many business processes can be greatly improved and optimized with devops. However, many business owners complain that they have not been able to build it properly and use it effectively. That is why I personally recommend to turn to the experts, there is devops professional services , which will help just with this. I went here for help and luckily I was very helpful. I hope I was able to help someone. Good Luck!

Collapse
crazyuploader profile image
Jugal Kishore

Very good post, thanks for sharing!

Collapse
stevenmcgown profile image
StevenMcGown

Thanks Ankit, very concise and informative.

Collapse
ibrocast profile image
ibrocast

Good stuff. Thanks for the input

Collapse
amsal profile image
Amsal Khan

Awesome roadmap, thanks for posting this. Will follow this while learning DevOps