A few years back I decided to upskill. Throughout my career, I stayed in the front-end domain and worked limited in the back-end.
When I started my cloud journey I was unclear about most things (as every person cloud is new to me). I went through my own journey as a front-end dev of lot of myths.
So, in this blog I will share the things I should know before:
1. Knowledge of programming language
In the cloud, it doesn't matter from which programming background you are coming. You can start learning cloud whether you are from JavaScript, Java, Python, Go, or any.
Infact, it is not mandatory to know a programming language. It is good to have
2. Fundamentals of the System
You should know the fundamentals of how the system works. You should be comfortable knowing how the client, server, and network works.
You should at least have basic knowledge (or you can learn while learning cloud) - Networking, hosting, private, security etc of the systems
** 3. You don't need to learn all cloud vendors**
The concept of clouds remains the same irrespective of which vendor you would be using. You can start with any vendor. The only change would be the name of the services. eg: in AWS we call it Lambda but in Azure, we call it Azure functions.
You only need to know only one cloud vendor.
4. The theory is not sufficient
A lot of folks assume that theory is sufficient to learn cloud. Well, it is a must to start with theory but it is mandatory to do hands-on. Try building small applications by using different services. Eg: start with hosting a website, configure your domain, create an instance and host a NodeJS application on that etc.
5. Certificates help but are not must
My focus was on getting certifications. The certificate helps in giving a roadmap to prepare and learn but remember certificates are not a MUST. One can learn cloud and if required then they can go for the certificates.
6. It's a long journey
Learning cloud is not an overnight journey. It is a very long journey. Cloud is very vast and after learning fundamentals one can decide to pick any field to do specialization in that.
I assumed that it is going to be 1-2 months and then I will be an expert. However, it is not true. After learning cloud fundamentals one needs to do hands-on and then design/build applications which will bring different services together, etc.
7. Nothing can replace hands-on
Again, one needs to do a LOT of hands-on. One needs to experience the cloud by doing and building applications on it. One cannot survive the cloud by just theory. Eg: unless and until you won't host any application you won't be able to understand the pricing model well. If an application is going down then what it will take to bring it back etc? These cannot be replaced by just 'theory'
8. Cloud is everywhere
cloud is everywhere you go. Since I started learning cloud I saw either the companies are moving to the cloud or already using the cloud. It is impossible to escape from the cloud.
Whether you are at starting level of your career or experienced you should get yourself with the cloud.
9. There are ample resources
There are ample resources for the cloud - udemy, youtube, paid courses etc. and yes it will confuse you. So, start with anyone and stick to that.
Infact all cloud vendors have their FREE tutorials. I started with Azure and AWS official tutorials. Instead of spending time and money (which I did), I would suggest picking anyone and sticking to it.
10. Keep a small fund aside
Remember when you are going to be hands-on keep a small financial fund aside. As you would be using services, building apps, and hosting apps. You need a small (minimal) amount for that. Eg: I had hosted my website on S3 and I know how much it costs a small website on AWS.
Happy learning!!
Top comments (3)
I would say if you wish to develop on cloud, a programming language is a total must have. Python, Javascript (node), a dot net language or something from the java stack, there are lots of options
Close second is either a database or a nosql store technology.
Thanks for sharing this helpful informationđź‘Ť
There are two routes into coding - or into any subject where you need to "build stuff". One is structured, where you learn all the elements in a formal way before embarking on any major projects. The other is unstructured; you just dive in and learn things as you need them.
Which route you take depends on what your eventual aim is and on your personality. Structured may get you in front of interview panels quicker, but you have to be ready to make a big commitment and canny employers are looking for real-world experience as well as the ability to tick boxes. Unstructured can be better if your project isn't well-defined or if you're not yet ready to let coding define your entire life. (I kid you not; if you want to be good at something you have to "become" that thing.)
I may have revealed a preference for the unstructured approach, but my formative years were several decades ago, when resources for learning were not what they are now. I can only take refuge in the saying "The man who never made a mistake never made anything".