Getting Started with Azure: Pragmatic Guide for Beginners
Tags: azure, cloud, beginners, programming
Published: 2021-05-09 15:46:23

Microsoft Azure is the second-most popular cloud computing platform, which provides several hundreds of products and services. 

For developers that want to start their learning journey, it can be difficult to find an efficient path because of the huge amount of study materials. 

In this guide, I would like to share the optimal strategy on how to get started with Azure and not be lost in the jungles of its capabilities.

# Step 0: Create Free Tier Azure Account

Go to  [Azure Home Page](https://azure.microsoft.com) and follow the instructions to create a free tier account.

You will need to log in to your existing Microsoft account, verify your identity via credit card and phone number. The credit card won't be charged unless you switch to paid subscriptions explicitly.

You will receive  [Free Tier](https://azure.microsoft.com/en-us/free/free-account-faq/) for 12 months and $200 credit for 30 days. 

# Step 1: Understand Basic Terminology

- **Subscription** - is a primary mechanism for billing purposes. Depending on the type, these can be free subscriptions, Pay-As-You-Go (Post-Paid) subscriptions, or a pre-paid subscriptions. Every resource is linked to a subscription. Everything will suspend or halt if the subscription carries zero credit unless the subscription is a post-paid pay-as-you-go subscription.

- **Service** - a basic building block of the Azure platform. You can think about Azure as a set of services. There are three types of services: infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). As a developer, you will deal with PaaS and IaaS. However, as a user of Azure Platform, you can deal with SaaS also. It is important to understand the difference between these types of services and classify Azure services appropriately when dealing with them.

- **Resource** - service instance managed by Azure. In order to use a service, you have to create an instance of it. An allocated service instance is a resource.

- **Resource group** - a logical construct that groups multiple resources together so they can be managed as a single entity based on lifecycle and security. Every resource must belong to a resource group. A resource group has a region and subscription associated with it.

# Step 2: Learn Azure Fundamentals 

 [Microsoft Learn](https://docs.microsoft.com/en-us/learn/) is a free online platform that has a lot of study guides on Azure. Most importantly, it has hands-on exercises, so that you can get practical experience from the beginning. You will be provided with a sandbox subscription so that you can complete exercises without draining your free tier that can be used for your personal experiments.

I recommend getting started with [Azure Fundamentals](https://docs.microsoft.com/en-us/learn/paths/az-900-describe-cloud-concepts/) - a six-part series that gives a good overview of the most important Azure services and cloud computing principles in general. The learning path is all you need to gen foundational knowledge and also pass  [AZ-900](https://docs.microsoft.com/en-us/learn/certifications/exams/az-900).

# Step 3: Learn Developer Guide

After you have a basic understanding of Azure services, you can focus on learning how you can apply Azure to develop applications using the technology stack you are the most familiar with. There are Developer Guides for the most popular languages which can be a great start.

-  [Python](https://docs.microsoft.com/en-us/azure/developer/python/) 
-  [.NET](https://docs.microsoft.com/en-us/dotnet/azure/) 
-  [JavaScript & Node.js](https://docs.microsoft.com/en-us/azure/developer/javascript/)
-  [Java ](https://docs.microsoft.com/en-us/azure/developer/java/)
-  [Go](https://docs.microsoft.com/en-us/azure/developer/go/)

# Step 4: Explore Azure Documentation

At this stage, I recommend getting comfortable with  [Azure Documentation](https://docs.microsoft.com/en-us/azure/?product=featured).
 
If you know how to apply Azure for your preferred programming language, you should be aware of which Azure Services are the most useful for you. 

You should not memorize everything, just be aware of the capabilities a service of your interest provides, how to utilize their capabilities, and what you can find on documentation.

# Step 5: Read Architecture Guide

 [Azure Architecture Center](Azure Architecture Center) is a one-stop shop for all things related to architecture in Azure. You can find the best practices, design patterns, common architectures, and guides on how to design cloud applications here.

I recommend read [Azure Application Architecture Guide](https://docs.microsoft.com/en-us/azure/architecture/guide/) at the beginning, and refer to Azure Architecture Center from time as your app grows.

 # Step 6: Develop Your Own App with Free Tier

It is very important to get hands-on experience while learning something new. At this stage, it will be useful to build small, but end-to-end cloud applications using familiar technology and services. For example, a small API that connects to a database and performs some tasks.

# Step 7: Explore Certifications and Learning Paths

Certification preparation is a great way to learn something in a structured way. 

Microsoft has a lot of [Azure Certifications](https://docs.microsoft.com/en-us/learn/certifications/browse/?products=azure) to offer. Most importantly, every certification has a learning path. 

I suggest picking certification of interest and following the learning path associated with it, although taking an exam is optional. 

Here are the most relevant Azure Certifications for developers:

- [Azure Fundamentals](https://docs.microsoft.com/en-us/learn/certifications/azure-fundamentals/)
- [Azure Data Fundamentals](https://docs.microsoft.com/en-us/learn/certifications/azure-data-fundamentals/)
-  [Azure Developer Associate](https://docs.microsoft.com/en-us/learn/certifications/azure-developer/)
- [Azure Data Engineer Associate](https://docs.microsoft.com/en-us/learn/certifications/azure-data-engineer/)
- [Azure Solutions Architect Expert](https://docs.microsoft.com/en-us/learn/certifications/azure-solutions-architect/)
- [DevOps Engineer Expert](https://docs.microsoft.com/en-us/learn/certifications/devops-engineer/)

# Conclusion

Microsoft Azure is a big and mature cloud platform that has a lot to offer. At the beginning of the learning journey, it is very important not to focus on everything at once, but to choose the most relevant services and technologies and master them to get started. It will be much easier to continue learning Azure once you have solid knowledge and hands-on experience with its core services.