In the past article, I shared some tips for preparing for the AWS Cloud Practitioner exam. This time I would like to share my experience passing the AWS Certified Solutions Architect - Associate (SAA-C02) exam. In my opinion, it is a "must-have" certification for anyone working with AWS cloud: system administrators, developers, solution architects.
Moreover, I think it should be the first exam to take after you've cleared the Cloud Practitioner one because the exam is comprehensive and covers most of the AWS services you will use daily:
- Load balancers
- Serverless computing
- Amazon CloudWatch
- Security services and lots more
The exam preparation is worth it because it will help you build a mental model about different AWS services and how you can combine them to solve your day-to-day problems. As a developer, I especially enjoyed answering questions to make the existing application scalable and resilient without code changes. It is hard to imagine in real-world applications, but it is "easily doable" in the test, so keep it in mind.
First, let's look at the exam guide. You need to answer 65 questions in 2 hours 10 minutes. It is only 2 minutes per question, that isn't much. The exam will cover four major AWS topics:
- Design Resilent Archtectures
- Design High-Performing Architectures
- Design Secure Applications and Architectures
- Design Cost-Optimized Architectures
Each question will be a single or multi-choice use case where you need to pick the best solution for the problem. Honestly, I like how AWS structures questions because they are close to the real-life scenarios you may experience at work. If you read the Appendix of the exam guide, you will see a few dozens of AWS services you have to know for the exam. The good news is you must know them, but not in detail to pass the certifications. From my test experience, you will need an in-depth knowledge of the following services: IAM, EC2, ECS, S3, RDS, EBS, EFS, DynamoDB, VPC (and all about networking including VPC endpoints, ENI, Elastic IP), Route 53, CloudFront, Load Balancing, Autoscaling, SNS, SQS, Lambda, and Amazon CloudWatch. It would help if you had some general understanding of other services, e.g., their use cases, benefits, and overall cost.
Amazon suggests having at least one year of hands-on experience with AWS before you will try to pass the exam. The experience is optional, but you will benefit a lot from it. Since the question use cases are close to real-life scenarios, you would probably see them at work before the exam. The project experience helps to choose the best option for a problem. You could probably pass the tests only with theoretical knowledge and labs experience, but I am afraid it will be more difficult.
Let's move on to the preparation part. I cannot imagine someone can pass the exam after reading all AWS recommended materials. I would recommend the three steps preparation plan:
- Learn theory (AWS whitepapers, video courses)
- Practice (either work experience or labs)
- Do as many practice tests as you can
The first step is to learn theory. Depending on your preferred learning style, it could be either AWS documentation, in-class, or Internet training. I like to have a mixture of text and video materials. I decided to get A Cloud Guru course. The content was well structured and easy to follow. Unfortunately, it wasn't deep enough, so I had to read AWS documentation for the main exam topics I was talking about above. I want to share a few links that I found in particular useful for the preparation.
- AWS Well-Architected Framework. It would help to read at least the framework overview, but it is beneficial to read about each pillar in detail.
- Overview of Amazon Web Services. It is a long, and a bit boring whitepaper that tells about each service there is on AWS. It won't help you as-is, but you may recall some high-level details about a particular service once you are on the exam.
- AWS Storage Services Overview. This is a good whitepaper because the exam will have a lot of questions about different ways of storing data in the cloud.
- Plan for Disaster Recovery (DR)
All FAQs recommended by AWS: EC2, S3, RDS, SQS, Route53
- Migrating Your Databases to Amazon Aurora
- Manual scaling for Amazon EC2 Auto Scaling
- Dynamic scaling for Amazon EC2 Auto Scaling
- Predictive scaling for Amazon EC2 Auto Scaling
- Controlling which Auto Scaling instances terminate during scale in
- Amazon EBS volume performance on Linux instances
- Tutorials Dojo AWS Cheat Sheets. They have a lot more information than you need to pass the Solution Architect Associate exam. So, focus only on the services you need to know. Also, I found out those cheat sheets being a good refresher, for example, when you prepare for a job interview.
The second preparation step is hands-on experience at work or in a lab. Seriously, the best way to learn AWS is to get your hands dirty and do something. AWS provides Free Tier for many services, but it is easy to go beyond the Free Tier when preparing for the exam. That's the reason why I use A Cloud Guru service. First, they offer labs as part of the course you're taken. Second, they also provide you a temporary AWS sandbox for your experimentation. If you experiment with AWS a lot, the yearly subscription price is worth it.
And the final step of the preparation is problem-solving. If you want to learn how to solve quizzes, you should solve quizzes. That's why solving practice tests will probably take up 40% - 50% of the preparation. A Cloud Guru course comes up with a practice exam, but I found it to be easier than the actual exam questions. Probably it won't be enough. After researching the community recommendations, I decided to get AWS Certified Solutions Architect Associate Practice Exams from Tutorials Dojo. Believe me or not, it helped a lot. The questions were more complicated than in A Cloud Guru's course and even more challenging than AWS exam questions. Also, each question comes up with an in-depth explanation of why you have to choose the particular answer.
In the end, let me share a few exam tips.
- Read the question and each answer twice. Sometimes questions have small nuances that a crucial to choose the correct answer.
- Don't spend too much time on a particular question. If you don't know the answer, use the "Mark for Review" feature and answer the questions in the second round. An additional benefit of this approach is you may answer the marked for review question based on the other questions you will see later. It may save you a few points.
- Usually, you can quickly identify wrong answers to the question. Try to do it as soon as possible, and then focus on the potential solutions.
I know that the learning process looks overwhelming, and you will have to learn many AWS nuances. But at the end of the day, you will benefit from having a solid understanding of the AWS platform. Good luck with your studies!