How to become a self-taught DevOps engineer before you turn 30

So, you want to become a self-taught DevOps engineer with no college degree?
Great! I am going to layout a path - I bet this is the easiest - for you.
But, first let me tell you.
This path is not for everyone. You need loads of self-control and discipline to stay without falling out.
And this path is more suitable if you are in the early stage of your career or if you are just out of school - trying to secure your first job.
If you are in your early twenties and want to become a DevOps engineer with no college degree, this is the ideal path.
That's not to say this path will not work out for others. Just read this post to the end and decide for yourself.
For those of you who are still worrying about nonsense like whether DevOps is a role, read this and do away with those nonsense first. Then come back here.
If you are reading beyond this point I assume that:
- You know DevOps is a role.
- You want to be a DevOps engineer with no college degree.
What skills do you need to become a DevOps engineer
To be a good DevOps engineer you need to develop a set of technical and social skills.
Technical skills of a DevOps engineer
Different software teams do DevOps differently. So, technical skills required for DevOps roles vary across teams.
But these are some of the basic technical skills required for most DevOps roles.
- A solid understanding of the software development lifecycle and the use of automation tools to build CICD pipelines.
- Working knowledge of Linux operating system.
- Cloud infrastructure design considering technical and business needs.
- Cloud infrastructure management with IaC tools.
- Cyber security practices.
- Troubleshooting software problems involving application software, databases, IP networks, etc.
- Business acumen (understand the business impact and cost of technical decisions and choices).
- Ability to learn new things.
Social skills of a DevOps engineer
The above list of technical skills may make you believe that a DevOps engineer is a hard-core techie.
No! A DevOps engineer needs strong social skills also. Out of all the tech roles, social skills requirement of a DevOps engineer will second only that of a project manager.
Here are some of the key social skills you need to develop to be a good DevOps engineer.
- Get along with both tech and non-tech people.
- Practice empathy to understand the requirements and the pain points of developers.
- Communicate effectively via verbal and written mediums.
- Collaborate with everyone involved in the software lifecycle.
- Adapt according to the requirement of different software teams.
- Think critically and question the status quo.
What has college degree to do with DevOps
OK. Now you know what skills you need to build to become a DevOps engineer. Let's find out how we can build those skills.
Most people who become DevOps engineers have computer science (CS) degrees. So, getting a CS degree is one of the available paths to get a job as a DevOps engineer.
A CS degree cannot and will not teach you all those skills we listed above. But getting a CS degree can lay a strong foundation for building those skills.
Also, a college degree can help you land on your first job as most colleges have pipelines with the industry.
That's why most DevOps engineers out there are CS degree holders.
What is the best path to become a DevOps engineer if I don't have a college degree
If you cannot afford a college degree, don't worry. You can still become a DevOps engineer if you have two basic skills; passion and perseverance.
Passion matters at the beginning. To get started with your DevOps engineer journey, you need to be passionate about software and other tech stuff around software development.
Perseverance matters to continue the journey till you reach the destination - become a successful DevOps engineer.
There are many paths to teach yourself and become a DevOps engineer. But, if I had to start over and do it I would follow this path .
First, I would teach myself to become a self-taught software engineer and get a job as a developer. After getting 3-4 years of experience as a developer I would switch to DevOps.
Why would I do this instead of trying to get directly into a DevOps job?
Because most DevOps roles demand experience in software development. And being a developer is the best method to gain that experience.
So, switching to DevOps from a developer role is lot easier than trying to get into DevOps directly.
How to tech yourself to be a software engineer
Learn programming. Learn it thoroughly.
There are many programming languages out there. Do some research and choose what you will learn and stick to it.
I would personally choose Python and JavaScript. These two languages have a wide variety of use cases from web development to AI. So they give you the best chance to land on your first job as a developer.
Besides, both Python and JavaScript has strong online communities where you can get help. You also get access to myriad of online resources for reference and learning.
Mastering Python and JavaScript will definitely help you land on your first developer job as a self-taught software engineer.
How to switch to DevOps from software development
After getting a job as a software developer, keep building your DevOps skills in the background. Your job as a developer gives you the best platform to do this.
Here are some tips to help you:
- Pay attention to the software lifecycle - what are the build tools used in your team, how the CICD pipeline works, etc.
- Try to identify your pain points as a software developer - what are the main obstacles you face everyday, what is consuming most of your time outside of writing code, etc.
- Earn cloud certifications that can boost your DevOps skills. Checkout what cloud platforms your current company is using. Getting a DevOps related certification from this cloud platform gives you a good chance to switch to a DevOps position, if one becomes available in your current organization.
- Observe the structure of your organization's DevOps team. Different organizations do DevOp differently. See how the DevOps engineers in your company attend to on-call duties, troubleshoot, share knowledge, etc. These observations prepare you to quickly catch up with other team members once you switch to a DevOps role.
- Gain hands-on DevOps experience with test labs. Test labs are a good opportunity for developing your troubleshooting skills as troubleshooting is inevitable when building any test lab. You don't have to spend on dedicated hardware for test labs. If you have a decent laptop it can serve as a home lab. And you can build lab setups in the cloud by spending a few dollars on top of the free tiers offered by cloud providers.
- Try to build the technical and social skills that we described earlier as much as possible.
If you stay committed and continue learning, you should be able to make the switch to a DevOps role in 3-4 years after getting your first developer job.
Wrapping up
So, is self-taught DevOps engineer an achievable goal?
Yes. But only if you have the passion and perseverance.
If you have those two basic skills, you can do it.
Have you subscribed to Cloud Letters. If not subscribe with your email below. We will be bringing you more posts to help you in your journey to become a DevOps engineer.