Please suggest me a right path to this DevOps career. From blogs Im not getting a well defined path. What all courses I have to take.
closed as too broad by Gaius, Dan Cornilescu, Rekovni, chicks, Tensibai♦ Apr 19 '18 at 15:25
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
DevOps is not a role and in words of @Tensibai here:
DevOps is roughly an organization pattern aiming at breaking the silo between developers and sysadmins.
So, you could already be on the DevOps moto and if you don't think you are, you can probably just try to implement the DevOps pattern on your organization or move to another organization with that pattern already implemented.
You may want to become an Infrastructure Engineer, a SysAdmin Engineer, an Automation Engineer, a Site Reliability Engineer, a Performance Engineer... but surely you can not become a DevOps Engineer.
You can get a good sense of your path by reading some questions and answers on this site. Here are a few ones:
There is a nice hands-on path into the DevOps world:
- Read books to set the mental direction. Starting out with "The Phoenix Project" is not the worst bet. We can discuss the literary qualities of the story, but it gives a very sound idea on what are common pitfalls during software development (or in the larger IT world), and how to avoid. It is not too specific about a method (yes, it does use Kanban as a basic scheme, but Kanban itself is quite unspecific, compared to others like Scrum). If that book is too cheesy for you, take "The Devops Handbook" from the same authors.
- Learn basic tools. Build a basic DevOps toolset. You can start with Git, Gitlab, Docker, Ansible, Vagrant, to name a few concrete choices (except for Git, there are plenty of alternatives, but those are nice). This gives you Code Control, Pipelines, Containers, Configuration Management, VM Management.
- For your next application, setup a very basic CI/CD pipeline using Gitlab.
- Read more practical things like the "12-Factor Apps" article, and try to understand what all of the 12 factors are about.
- Learn orchestration. Install MiniShift on your own PC, use it to develop/locally deploy a few small applications. Try to apply the concepts from 12-Factor Apps to MiniShift. Learn more about OpenShift, play around with their free online demo area. Dive into Kubernetes.
- Get your CI/CD pipeline running in MiniShift/OpenShift. Think about how you would do certain things (e.g. what happens if you scale the Pod containing your database... etc.).
- Get an AWS demo/cheap account and play around with their offering. Look into all their parts that are not trivial VMs - play with Lambdas, etc.
All of this is easy and fun - each single step is more or less self contained, and if you understand what you are doing along the way, then you are a DevOps guy.
If you let it be known in the working environment that you have all this know-how, then DevOpsy work should come your way. If it doesn't, find a new employer and strongly emphasize your toolbox and pay attention during your interviews, whether they have CI/CD etc. in their process. No need to look for specific "DevOps Engineer" jobs.