Some advice I would give to a junior DevOps Engineer
Hey blog, long time no see. I’ve been incredibly busy these last couple months. Apologies to you for not updating your content as often as I’d like to.
I intend to post this in HackerNews, so if you’re coming from there, hello 👋 !
Recently, someone approached to me in Reddit asking me if I had any general advice for an “first time | entry-level | junior DevOps Engineer”
While I disagree on that request because I believe that:
- DevOps is not a role, but a culture inside an organization
- If we’re going to use it as a role, it’s not an entry level role
I also think that my opinions on what should or shouldn’t be the correct nomeclature, are of minimum importance for someone who is looking to enter the industry and the field. So I had to consciously put myself aside and think as if I was giving this advice for my younger self.
Please keep in mind that, while my title (as of today) is Sr. DevOps Engineer, and that I work in the tech industry, I am also a biased human, so take this advice with whatever quantity of grains of salt you require.
- Critical thinking, problem solving and perseverance: Trust me, there is absolutely no problem in this area, that you cannot solve. But the difference is how you do it.
- Excellent troubleshooting and debugging: it all starts with a profound passion of wanting to know where or what is wrong and how to get there. Arm yourself with tools to find and search for stuff
- Fast learner with different technologies: This section of the industry is important and changes incredibly fast. You have to come up with some learning strategy. Mine is more or less the following: everything follows a Pareto principle… 20% of docs/commands/knowledge do 80% of the work. Try and learn that 20% by actually installing and trying all the getting starteds.
- Understand how to use Git & OSes (Linux): I can only vouch for Linux as that’s my speciality but learn how computers work in general. If you can focus on Linux that means you can go with any cloud provider. As for git, there is absolutely no replacement than to sit down and learn it. Perhaps a udemy or YouTube course for it. Learn it well !
- Understand the Software Development Life Cycle (SDLC): Your main goal in some places will be to take code into production. Learn what does the industry mean by CI/CD, what steps are usually involved and which tools are popular.
- Good communication skills: I can’t emphasize this enough. In my experience more extroverted and “chaty” engineers have it better on average. But at the bare minimum you should be able to present your deliverables, talk to your colleagues and negotiate your work :)
- Last one is FOCUS ! Always do one thing at the time. The more energy and time you put into one single thing, the faster you’ll get it out of your way (to go fast, you must go slow)
I hope this is useful for anyone out there who wishes to enter this field.