Cloud development and deployment are becoming a new norm, and several studies already showed that there is a dramatic shortage in Cloud-skilled engineers. The needs for those skills on the job market will only grow with time, but that’s not the only reason Cloud concepts are interesting! As a Software Engineer, whether you’re developing for the Cloud or not, I think you can learn a lot from it. I’ll explain why in this post.
How I started learning Cloud for free
During the first months of the Covid-19 lockdown, two big players of the IT world decided to boost to their Cloud aficionados community by giving free online trainings access and certification vouchers. Microsoft Azure started their one-day training sessions on Azure fundamentals, with a free voucher to take the certification, while Oracle gave free access to their online courses on Cloud Infrastructure and a free voucher for any certification of their Cloud Infrastructure catalog. I’m not following Google Cloud Platform or AWS closely, but it wouldn’t be a surprise if they did a something similar.
At first, those topics seemed really difficult to grasp with my background. I hardly knew anything about networking, hardware or infrastructure, because my CS studies mostly focused on software development and analysis. After some hesitation, I just thought I had nothing to loose anyway and gave a try to both certifications.
Edit: Nowadays, all Azure training material is still free to use and they regularly offer free vouchers to pass their fundamentals and role-based certifications.
I found that the next thing I needed to do since I was starting from zero was to obtain a few certifications.
Rachel Sweeney, “From Zero to Cloud Engineer in Less Than a Year”, from the book “97 Things Every Cloud Enginer Should Know – Collective Wisdom From The Experts” (O’Reilly)
Although there’s plenty of debate on whether certifications will be really
helpful for your next job or promotion, the knowledge gained while studying
for them is invaluable. I set aggressive timelines for myself, allowing three
months to study the material and attempt the exam. This was an extremely
motivating factor to keep studying and push myself to the next level. In most
of the interviews I’ve had, when I was asked how to solve a particular prob‐
lem, I was able to draw directly from the material I’d learned to answer the
question and secure a job offer. Getting a certain score on a certification
exam isn’t nearly as important as knowing the material. Even if you don’t
want to or can’t afford to get a certification, just looking at the study material
is worthwhile.”
How Cloud trainings helped me as an on-prem developer
At the time, I was working in a field where migration to Cloud deployment was not planned at all. However, those trainings helped me grasp a lot of concepts on topics like infrastructure, communication and networking that can be applied to any software development field.
Basically, learning Cloud development is learning about information workflows, in a very concrete, solution-focused way.
At school, I only learned the on-prem model. I wasn’t passionate about it, it all sounded outdated, and I already knew I wanted to become a software developer, so I couldn’t care less about networking and infrastructure. When learning Cloud infrastructure, I could see those notions I heard about at school, but with state-of-the-art protocols, workflows, technologies… and it made it way more interesting to me.
I also really enjoyed seeing the big picture of how applications live with other components of a solution architecture and how the information transits. Demystifying the magic into concrete use-cases. Suddenly I was not limited to understanding the connection between my frontend, backend and database, I discovered there were so many options and so many things running under the hood.
This might seem trivial for a developer with more seniority, but I, for example, had never heard of message queues and topics before I took these trainings. How would you think about information loss between components if the communication workflow is quite opaque to you?
I like this example because some time later, I came to work on a project with IoT, which lead me to work with… queues and topics! It was a big asset having at least a superficial understanding of the technology and knowing the lingo and the key concepts.
As DevOps philosophy becomes more and more popular, developers will be expected to at least know high-level concepts of infrastructure, and I truly think Cloud-based knowledge is a big help in capturing a lot of concepts quickly.
Did studying for Cloud certifications actually help me when I started working with Cloud services?
Big time yes! I did study my certifications not only to pass the exam but to understand the topic, I was really interested in the content. I specialized in Microsoft Azure because they offered so many free certifications, and their courses are always free, and it did help me land jobs where they use Azure.
It’s usually marked as a nice-to-have skill, but I’m pretty sure it does have a big impact when applying. Just knowing your ways around the Cloud provider interface, easily understanding the services hierarchy, having a clue about key principles like redundancy or high availability, knowing a few services relevant to your job… is reassuring for a new employer.
It means, even when discovering a new service, you’ll learn faster and don’t have to go through the basics on company time. I personally really enjoyed being ready to dive deeper quickly thanks to what I had learned.
Today, almost five years later, I still notice that a lot of companies have a hard time finding candidates with the relevant Cloud experience or a least knowledge, and I see how much my resume is valued because it features Cloud skills.
Your turn: how you can learn Cloud, try it and pass certifications for free
Cloud providers are regularly setting up events to attract learners. You might follow them on LinkedIn or subscribe to their newsletters not to miss the next ones. Apart from temporary events, they usually grant free credit to try their services during a 30-days period, which you can use to play with it!
- Oracle opens access to their online academy once or twice a year, with self-paced learning and a free voucher for certification. They also have a 30-days trial offer.
- I haven’t explored Google Cloud Platform yet, but it seems you can register for one-month free on-demand online courses. Their free trial includes a pretty big credit.
- I haven’t looked at Amazon Web Services yet either but it seems the learning material is in free access. And of course, there’s a free tier to try it too.
Taking the courses is really interesting, especially if you do it wisely (so, not studying exam dumps by heart just to get the certifications). Creating a little project and deploying it to the cloud, thinking about the best option for your use case is even more interesting.
Personally I took the opportunity of my graduation work to do so, but any project you have in mind can be tested. Trying to deploy the same project on several platforms from different providers would prove very interesting too!
These trainings are based on the provider’s specifics, but the information flows, infrastructures, kind of services and so on will remain pretty similar from one to another.
2 thoughts on “How learning about Cloud infrastructures can benefit all developers”