Why is it so hard to get started learning AWS?
This is a question I’ve been thinking deeply about earlier this year. As a Software Engineer starting at Amazon in 2016, I knew nothing about cloud computing nevermind AWS. But somehow, I managed to pick up all the jargon, core ideas, and become pretty proficient at using and teaching AWS.
Despite having success, I wouldn’t recommend my path. It consisted of many days and nights reading documentation, tutorials, experimenting in the console, and even at one point accidentally running up a several hundred dollar bill. The path I took, despite working well for my career, was tedious, time consuming, and frustrating.
The unfortunate thing is, my path isn’t uncommon. So may new engineers that I talk to get hired with very little if any cloud or AWS knowledge and suffer through the same debilitating emotions I did. Most of those I talk to just manage to figure it out by throwing time at the problem and bashing our heads against the keyboard we can’t figure out an issue.
As I began to reflect on my experience and the experience of so many of my peers, I started to come to a realization: there are very few online resources that actually teach you how to think with the cloud in mind and apply AWS services to solve real life problems leveraging AWS.
Sure, there’s AWS certifications (and companies making a pretty penny selling you training to “get certified”), but do these teach you useful hands-on skills? I would argue not really.
Oddly enough, I’ve spoken to many owners of these types of training companies that regularly run seminars for their members. Many students continue to show up to training sessions long after they’ve passed their AWS certification. And what’s the number one reason? They don’t feel confident with their skills.
As I realized this many months ago, I decided I was in a unique position to leverage my knowledge and experience building with AWS to help people learn faster. Not through boring certification lectures, but through a practical hands on course teaching you how to actually build a useful project on AWS.
And so, my eventual course, The AWS Learning Accelerator was born.
Course Approach
When brainstorming my method for teaching, I realized very quickly I wanted to use a scenario/project based approach to teach the concepts. A style where you put yourself in the position as a developer trying to solve a business problem for a customer.
In real life this is exactly how it works. Someone has a problem and you want to build a technical solution to ‘fix’ it. Usually you’re provided requirements of what the product should do, and from there you’re off to the races to design and build the solution.
But how do you work through these vague product requirements and come up with an actual architecture? This is the spot I see so many developers, even myself earlier in my career and sometimes now, get stuck.
Being able to break down a business problem into smaller manageable chunks takes practice. It isn’t something you’re born with but through problem solving experience you get the hang of it. You simply must learn by doing.
In my course, I teach you this very approach. I work through a large and ambiguous problem by breaking it down into more relatable components. This includes things like deciding on a compute technology, database, API, blob storage, and more. I go a step further and walk you through the mental process you should have when deciding which technology to use within each of these categories. This is a process that requires some knowledge of what options are at your disposal but shows you how to systematically eliminate potential options in favour for ones that better fit with your project’s requirements. We don’t stop there. We keep going to walk through how these services will be interconnected with one another to deliver our product requirements.
Below is a screenshot of the final architecture we design and create in the project.
All in all I think my approach gives you a pretty good idea of how to build an architecture on AWS to solve a real problem. You’ll get hands on with services like:
- DynamoDB
- S3
- Lambda
- API Gateway
- SNS
- IAM
- Cloudwatch
If you’re interested in learning more, you can watch the course trailer below and purchase it here.