What things to learn for Devops? – Devops Career Roadmap
A Career Roadmap to become Devops practioner
Devops has become a trending word in recent times and many are interested in catching up with the devops practice. The Devops career path is not only one of the most profitable, but also one of the most personally satisfying among the many career branches of IT today. Companies are ready to pay whatever you quote for if you have good Devops experience or knowledge. Devops career roadmap is for those who are in need to get a roadmap on what they should know and how they can learn to become a Devops practioner.
What is Devops ?
Firstly you need to understand, Devops is not a technology. It is a culture which combines various tools and technologies for faster delivery of software and feedback loop through Continuous Integration / Continuous Deployment, Continuous Testing and Continuous Monitoring.
For achieving CI/CD, Continuous Testing and Continuous Monitoring, a good number of tools and technologies will be used. Having a good knowledge and hands on experience in these tool chains and understanding the devops culture is what is required to be a good Devops practioner ( Devops Engineer )
Below are list of tools/technologies which you need to know at minimum to become a proper devops practioner. For each roadmap stage, you’ll be provided with online courses which you can make use of to learn and gain knowledge. Most of the courses are paid one but they are worth spending for to sharpen your skill set. You might be rewarded later on in you career for what you are investing now for your learning. Remember, No good thing comes without a price.
Devops Career Roadmap – Stage 1: Knowledge about OS ( Linux )
This is the most basic and important skill which you need to possess. Without this, you cannot go any further in the devops roadmap. An intermediate level of administration knowledge is required specifically in Linux Distributions, since you’ll be working on Linux servers that runs the application and other components day in and day out.
If you feel you need to improve on your Linux skills, then you can enroll for the below course list that will sharpen your Linux knowledge
- Linux Administration Bootcamp: Go from Beginner to Advanced
- Linux Administration Certification Training
Devops Career Roadmap – Stage 2 – Scripting knowledge
Having a good scripting knowledge to automate things is required. Scripting language can be of any preference, however bash scripting most times will be a common one. If you are good with scripting in any of bash, python or perl will be more than sufficient.
Some course list to help you out in scripting.
- Complete Python Bootcamp: Go from zero to hero in Python
- Team Treehouse – Python course
- Bash Scripting and Shell Programming (Linux Command Line)
Devops Career Roadmap – Stage 3 – Git
By far, the most widely used modern version control system in the world today is Git. Git is a mature, actively maintained open source project originally developed in 2005 by Linus Torvalds, the famous creator of the Linux operating system kernel. Knowledge about git is essential and this is mandatory if you are managing your infrastructure as code using CM tools.
- Git Complete: The definitive, step-by-step guide to Git
- Complete Devops Training ( Covers git )
Devops Career Roadmap – Stage 4 – Configuration Management Tools
Configuration management tools are plays a vital role in managing infrastructure as code. Experience in any one of the configuration management tool such as Ansible, Chef, Puppet, Salt etc is expected out of a devops practioner. Configuration management tool helps to automate your entire infrastructure by just managing it through code just like a normal software.
Some useful course to get hands on experience in configuration tools.
- Chef Fundamentals: A Recipe for Automating Infrastructure
- Mastering Ansible
- Complete Devops Training ( Covers Configuration Management Tool )
Devops Career Roadmap – Stage 5 – CI/CD tool ( Jenkins )
CI/CD principle is what Devops revolves around and knowledge on build pipeline tools like jenkins, Hudson, Travis etc is required. I would recommend to go with Jenkins first since that is the widely used build pipeline tool.
Some recommended course for learning Jenkins are
- The Complete Jenkins Course For Developers and DevOps
- Complete Devops Training ( Covers Jenkins )
Devops Career Roadmap – Stage 6 – Monitoring
Continuous monitoring is part of Devops principles. There are various monitoring tools in the market and most companies use multiple monitoring tools to monitor their environment and alert when there is a problem. Tools like nagios, icinga, datadog are used for infrastructure monitoring while tools like AppDynamics, New Relic are used for both infra and application monitoring. Tools like splunk, graylog, ELK are used for centralized monitoring of logs. Getting to know any of these tool will help you to understand the principles of monitoring and easily understand other products.
Some blogs and courses to help you kick start with monitoring are,
- Centralized logging using Graylog (Blog )
- Infrastructure monitoring using Icinga2 (Blog)
- Complete Devops Training ( Covers Nagios )
There are some SaaS products for monitoring like “Papertrail which is a frustration-free log management tool that allows you to instantly manage logs from different servers.
Devops Career Roadmap – Stage 7 – Cloud Providers
Cloud has become the most trending word in the recent past. Knowing extensively about the various services provided by different cloud providers is essential. You should be good with at least any one of the famous public cloud providers like AWS, Google cloud, Azure, DigitalOcean etc. AWS is the most popular and widely used cloud provider. Completing AWS certification might help you gaining an extensive knowledge about AWS and the services it provides. Below courses might help you out in learning AWS
- AWS Certified Solutions Architect – Associate 2017
- AWS Certified SysOps Administrator – Associate 2017
- AWS Architect Tranining
Devops Career Roadmap – Stage 8 – Containers
Containers are the new norm in Devops. Knowing about Containers and container management tools like Kubernetes, Docker Swarm, Apache Mesos etc will enhance your credibility as Devops Practitioner. Containers down the line might change the way how infrastructure deployment works, so learning this will become mandatory to adapt yourself for the future. Some courses to kick start learning containers are,
There is more to Devops than the above said things. The aim of this article is to just give a starting point for the people who are interested to move to Devops and to equip themselves technically in order to better adapt themselves when the situation demands.