I did the AWS Solutions Architect Associate exam on the 1st of November 2017, and passed with an overall score of 85%
Here are my notes on how I studied for the exam, and tips for preparing based on my experience in the actual exam.
How I studied for the exam
I prepared for this for roughly 8 weeks, doing an average of 8 hours of study per week, so roughly 60-70 hours preparation in total.
- Paid attention to the Exam Blueprint throughout my study
- Did the relevant A Cloud Guru course. Big thanks to Ryan and the team at A Cloud Guru. Your course gave me an excellent foundation of broad knowledge which I needed to pass the exam.
- Experimented with the AWS Console. After doing certain A Cloud Guru course labs, I tried out some of my own ideas. For example, setting up VPC peering, and pinging between the peers.
- Read bits and pieces of the AWS documentation, mostly things I was feeling less confident on, or felt I needed more info on.
- Took lots of notes, emphasising the points I was hazy on.
- Put my written notes directly into my blog.
This took the first 6 weeks, then I was ready for the next step, and over the next few days, I did all of the Whizlabs practice tests once, taking notes on my weak points for further study.
The Whizlabs practice exams are particularly useful, as they tell you in detail the reasons for the correct answers, and why the incorrect answers are incorrect, giving links to relevant AWS documentation. Following the links and reading more was critical to my understanding.
The first time I did the Whizlabs practice exams, I was averaging on a score of around 75%. My highest Whizlabs test was about 89%, the lowest was about 71%.
From what I understand, 71% would have been a pass mark in the AWS exam, however that wasn’t giving me enough of a buffer to feel confident in the real exam. (which turned out to be more difficult than I expected)
Based on my weak points, or uncertainty uncovered by the Whizlabs practice tests, over the next week I:
- Experimented with the AWS console, re-doing the labs, and coming up with my own scenarios
- Re-watched some of the A Cloud Guru videos
- Read more AWS documentation (FAQs, white papers)
- Updated the notes in my blog
I then took the four lowest scoring Whizlabs tests and did them again. This time I was scoring between 90% and 95% on all my attempts, which gave me much more confidence that I was ready for the exam.
I found it particularly useful when answering practice tests to try and visualise exactly why the answer was the correct one. Even if I knew the correct answer straight away, I would try to run my mind through why it’s correct, and why the incorrect answers are incorrect. I think this helped reinforce the learning.
That took me to 8 weeks of preparation. I did my exam during the 8th week.
The actual exam, and exam tips
There were 55 questions, and my overall score was 85%, with the following topic level scoring:
- Designing highly available, cost-efficient, fault-tolerant, scalable systems: 93%
- Implementation/Deployment: 80%
- Data Security: 66%
- Troubleshooting: 80%
From what I’ve read in the exam feedback on the A Cloud Guru forums, the exam is getting harder and harder to pass if you rely too much on memorising facts; for answering the questions in the current exam, hands-on experience is key. Because of this, it’s super important to work though the A Cloud Guru labs, and also come up with your own ideas on things to try out. Ryan from A Cloud Guru recommends that you know how to build a VPC from scratch, but don’t stop there. For this exam, in particular:
- Try out VPC peering from scratch
- Try changing the CIDR blocks of a VPC
- Try creating a VPC with overlapping CIDR blocks, etc.
I recommend working through stuff that’s not in the labs too. There were a couple of questions in the exam around whether something was possible or not, so for me, the experimentation I did in the AWS console was critical.
The Whizlabs practice tests were also critical. I didn’t do the exam until I was consistently getting over 90% in the practice tests. Don’t just stop at getting the answers correct though, make sure you really understand, and can visualise why the answer is correct, and why the other options are incorrect. Read the relevant AWS documentation, watch the A Cloud Guru videos, and experiment with the AWS console more based on the answers to really reinforce your understanding.
I didn’t feel like the Whizlabs questions were the same as the exam, however if you have a good understanding of them, then I think you’ll be well positioned to get a good score in the exam.
A couple of scenario examples from the exam:
Is it possible to change a CIDR block of a VPC after it’s been created, or do you have to create a new VPC with the intended CIDR block and migrate your instances to the new VPC?
Can Route 53 CNAME records point to any domain, or do they have to be within the AWS infrastructure. Similarly, can Route 53 Alias records point to any domain, or do they have to be within the AWS infrastructure.
What CIDR block ranges can be assigned to a VPC. Is /25 the max or min block that can be assigned to a VPC?
How do NAT instances and NAT gateways scale? If you’re expecting a 700% spike in traffic at certain times of day, how do you ensure your NAT will handle the spike? Do you use NAT gateways, or put NAT instances in front of auto scaling groups?
What is the API gateway useful for? Can it be used for throttling, IP blacklisting, caching, etc.
When to use auto scaling, and when to use scheduled scaling
Can an EBS volume be resized while an instance is running? What are the rules around this?
Sneakily worded questions
Watch out for the wording in the exam, and re-read the question multiple times. Make sure you try to visualise the question and why you think the answer is correct, if possible.
One particularly sneakily phrased question described a web tier and data tier, describing both in detail, and that both currently don’t scale, then asked what technologies would be used to add elasticity would be added to the web tier.
Two of the answers were clearly wrong, but that left two that were similar. One of the answers was for adding elasticity to the web AND database tier. The another answer was for just the web tier. The correct answer based on the wording in the question was the one for adding elasticity to JUST the web tier … sneaky!
Questions similar to practice exam, but different in critical ways
There were also questions which were phrased extremely similarly to the practice exams, but were worded slightly differently, so that the correct answer was actually the opposite to the practice exam. This is why it’s extra important to visualise the question and answer while doing the practice exams, to really reinforce a solid understanding, rather than focusing on cramming and quick recall.
Spot instance pricing
There was a question relating to spot instance pricing if you have the instance for 90 minutes, followed by AWS terminating your instance at the 90 minute mark. Recall from A Cloud Guru course that if AWS terminates your spot instance you only pay for full hours, not partial hours, so you’d only be charged for the first 60 minutes.
Let me know in the comments below.