Studying for the AWS Certified Solutions Architect - Associate Exam

I will study to get AWS certified

As a developer, I appreciated using AWS many times. Needless to say, Cloud Computing gives you superpowers as a developer or system administrator.

The ability to scale up and down following traffic patterns, the resilency offered by a properly designed Cloud infrastructure and the power of hundreds of tools like limitless storage or Machine Learning for mere mortals, have made Cloud technologies like Amazon Web Services or the Google Cloud Platform something that cannot be ignored anymore. At times it may be costly but the ease of use is incomparable to an on-premise instance.

My story with AWS

In the few years of my career I had the luck and opportunity to use a bunch of different AWS services like:

  • EC2: the first building block of Amazon Web Services is Elastic Compute Cloud, which we could (very) approximatively define as a VPS on steroids. Start a server in seconds, choosing between CPU, Memory, GPU, Network or IO, or really any mix of those properties.
  • S3: another fundamental service is Simple Storage Service, which provides you with simple (pun semi-intended) object storage. S3 does not inspect or alter the content of your objects in any way. Regardless of their actual content, they are treated as generic binary blob + metadata with a key. Does not have a proper file-system and the best comparison I can think of is with a Key-Value database like Memcached or Redis, but persistent and, potentially, with very large binary blobs as values.
  • RDS: a higher-level service, as it is based on EC2. The Relational Database Service simplified the life of DBAs, providing easy-to-manage database instances. You can choose between the very common MySQL and PostgreSQL, the enterprise Microsoft SQL Server and Oracle database and the all new Amazon developed Aurora database, which can be configured to be compatible with either MySQL or PostgreSQL client. You do not need to configure and persist logs, backups and engine upgrades as they are all managed by AWS.
  • Lambda: AWS Lambda is the new hype in the development world. Instead of configuring servers and pushing code changes, just give it the raw JS/Java/Python code, bind it to an HTTP endpoint and just let AWS run your code on demand and only pay for actual execution time.
  • SQS: a Simple Queue Service, not based on the AMQP protocol, so cannot be hot-swapped with a RabbitMQ service, but still, very simple and extremely cheap way of exchanging idempotent messages.
  • CloudFormation: building your stack by hand can be fun. One time. When you then have to replicate this stack on different regions, or you just want to have a map of your infrastructure you can use CloudFormation scripts. Drag and drop the resources you need, give names, tags and properties and see your infrastructure getting built at a touch of a button.

I will stop describing more because I don't want this to be a promotional post. Other thing I have used: Simple Email Service, Simple Notification Service, Machine Learning, OpsWorks, ElastiCache, Elastic Container Service, plus a variety of other that you came across as dependencies like EBS or ELB.

125.781 Reasons

It is a while that I am thinking of getting AWS certified, for a number of reasons:

  1. I have dropped out of University during my second year and never got a proper degree. Having studied IT and development since I was 8, having to study what a variable or class is was a bit mortifying - where's my Machine Learning class? I do partially regret the decision, but only because it may be required to access higher paying roles or jobs, or simply to cut out a number of candidates when too many are applying. Having a recognised and trusted certification can give my career a nice boost to compensate.
  2. I love to learn. I wrote this exact sentence on my CV and on every job application for a reason: it is true. I enjoy studying and improving my abilities and see the results and benefits of my newly acquired knowledge.
  3. I really find AWS great. Tons of services, ease of use, programmable interface are sysadmin heaven. The only critic I do all the time is their terrible, straight-from-the-90s user interface (maybe they want to discourage you from using it and are pushing us to use automated tools).
  4. If you work in the U.S.A. there are, on average, 125.871 good reasons ($) to get this certification.
  5. AWS Badges and Merchandise (?)

I recently moved to London with my GF, leaving my childhood home in Naples, Italy, and now after a few months I feel I reached a decent stability in my lifestyle. Furthermore my GF is heading back to Italy for a couple of months to take a few University exams, so I will have plenty of spare time and it seems to be a great time for getting AWS Certified!

You made it this far! If you are enjoying the article, do not miss out the next!
* I promise to keep your email safe and to not send spam

AWS Certification Types

There are 5 different certifications for AWS. The first 3 are at Associate level and are a required step to the Professional level, having two more certifications.

Associate Level Professional Level
AWS Certified Solutions Architect AWS Certified Solutions Architect
AWS Certified Developer AWS Certified DevOps Engineer
AWS Certified SysOps Administrator

Browsing the Internet you can find many stories of people who took all the three Associate level certifications in a short period of time. If you are an experienced developer and have use AWS a few times, it may have sense, since the 3 exams do probably share a large amount of knowledge, and taking all of them fast you can recycle your fresh memories.

I will attempt the AWS Certified Solutions Architect - Associate path first. I may consider the others eventually.

AWS Certification study material

First of all I will first buy the AWS Certified Solutions Architect - Associate, which seems to be the only Official, Amazon published book about one of these certifications. It's quite cheap (~30$/28£) compared to the AWS sponsored classes around the world which average 1000£ per day for three days or a week of training. Additionally, buying the guide gives access to some (still to be quantified) practice questions and test exams, which is a very appreciated add-on.

I will consider the A Cloud Guru bundle, whose price is still relatively contained (~160/200 £ for the whole bundle) - but only if I don't feel particularly safe after the having studied the main guide.

I am also getting a brand new AWS account. Fresh new accounts have access to the Free Usage Tier, which lasts 1 year and allows you to try and experiment with the cheapest instances and tools for free. Some services retain the Free Tier also beyond the first year, like Lambda, SNS and SQS.

So I will not be able to run a 16 GPU instance for free, but at least I could experiment with user-data scripts.

Last but not least, I will keep the huge, deep, overly-detailed AWS documentation on my Chrome Bookmarks bar for any needed clarification.

While I'm taking Solutions Architect certification, I am still a developer and I will for sure publish a few scripts that come to mind from time to time... you know, things that AWS wants you to do, but doesn't tell you exactly how.

I would like to know your opinion about AWS and its certifications. Did you ever try to get AWS certified? How was your exam? Do you have any suggestions for my learning path?