🍌 How to Learn AWS Services Fast

Don't pick up another course!

Welcome to the third issue of the Software Mastery newsletter.

In this issue, I want to share how I approach learning new AWS services. Since I work at Amazon, it’s no surprise that I spend many hours building on AWS.

AWS has over 200+ services, so it is impossible for anyone, even Amazon employees, to be familiar with every service.

It’s common to be asked to build something with an AWS service you’ve never used before. We live in a fast-paced world, so there probably isn’t enough time to pick up a book or course.

Whenever I have to learn a new AWS service quickly, this is what I do:

  • Learn what the AWS service is used for.

  • Understand the AWS service’s key concepts.

  • Learn how to create the necessary infrastructure.

  • Dive straight into building.

Let’s look at each step in detail, using AWS Batch as an example (I had to do this for work a few months ago!).

Learn What the AWS Service Is Used For

When learning a new AWS service, the first step is understanding the service at a high level.

I often do some combination of:

  • Reading the official AWS user guides.

  • Watching a quick YouTube video.

  • Using Wikipedia.

For example, according to the AWS Batch user guide:

AWS Batch helps you to run batch computing workloads on the AWS Cloud. Batch computing is a common way for developers, scientists, and engineers to access large amounts of compute resources. AWS Batch removes the undifferentiated heavy lifting of configuring and managing the required infrastructure, similar to traditional batch computing software. This service can efficiently provision resources in response to jobs submitted in order to eliminate capacity constraints, reduce compute costs, and deliver results quickly.

Depending on your familiarity with batch processing, the description above may or may not make sense.

If you aren’t familiar with batch processing, reading the Wikipedia page or watching a YouTube video should help fill in the gaps.

Understand the AWS Service’s Key Concepts

All AWS services have a few fundamental terms or concepts that are essential to learn. To guide my learning, I typically refer to one or both of the resources below:

  • Key concepts pages from official AWS documentation.

  • AWS re:Invent presentations/workshops.

For AWS Batch, I would start by reading the Components of AWS Batch section of the official documentation to learn some basic terms. Next, I would watch this introductory re:Invent session from 2016.

Even though this session is eight years old, the fundamental concepts described in the video are still relevant today.

Learn How to Create the Necessary Infrastructure

At this point, you should have a rough idea of what an AWS service does, and some of the key concepts for that service.

If you’re learning an AWS service for work, the next thing you’ll likely want to learn is how to provision the necessary AWS infrastructure using your infrastructure as code (IaC) framework of choice.

Common IaC frameworks include:

For our AWS Batch example, I would Google something like “AWS Batch CDK docs” and look through the examples in the official documentation.

If you need something more structured, you could consider finding a tutorial for the framework you’re using.

Dive Straight Into Building

With all the information gathered from the previous sections, you should know enough to get started on a project or work assignment.

As you start building, you’ll inevitably have questions or need to look things up; this is normal at this stage. It is important to start building, as it will help guide and motivate your learning.

Your Turn!

I hope this issue gave you some insight into how you can pick up new AWS services using free resources available on the Internet.

Are you learning any AWS services at the moment? Reply to this email or comment on this post to let me know!

As always, thanks for reading!

Sammy

Reply

or to participate.