As Amazon Web Services (AWS) is the largest public cloud on earth and that there some AWS work coming through the business I though it would be an idea time to start learning about AWS. My first serious interest in AWS first started about 12 months ago while reviewing my development plan at work. It was one of a few development goals but what set to be the last goal I needed to achieve for this cycle. So 6 months ago I had started to watch the videos from AWS and do the free labs they offer so I could start to get to know what AWS was all about. After attending the AWS Summit 2014 in Melbourne, AWS had given out $50 AWS credit vouchers. I was thinking sweet I can start spinning up servers and start playing around.
As there was more and more talk about AWS I then decided at the start of Jan I would dive into the accreditation for Solutions Architect. The one unfortunate issue I had was that there was no one in the business I was aware of I could ask about it.
So for the past few weeks I have been busily studying for the AWS Certified Solutions Architect – Associate exam. As the certification has only been around since 2013 I found that there wasn’t a lot of content online (due to NDA for exam questions and there its a lot of people that have this). I though I would share my experience and what I did to pass the exam.
1. Sign up for an AWS account!
2. Get Familiar with the console and watch the intro videos and do the Labs AWS supply. here
3. If you haven’t got anyone to ask (as I didn’t) you need some explanations for some of the concepts. Sign up to a course online There are a couple that offer the course and will give you 70% of what you need to know and at a fraction of the cost. (Attending live training session costs upwards of $2500 while online your looking at around $50-$200)
4. Read the white papers available from AWS. I read:
- Overview of Amazon Web Services
- Overview of Security Processes
- AWS Risk and Compliance
- AWS Security Best Practices
- Storage Options in the AWS Cloud
- How AWS Pricing Works
- Building Fault-Tolerant Applications on AWS
- Architecting for the AWS Cloud: Best Practices
They can all be downloaded from here: AWS White Papers
5. Practice Exam. I spent the $20 for the AWS practice exam to get a feel for the questions. Wile I got 80% (only had 20 questions) this is only n indication of some of the questions you will face. I searched the internet and found a couple of good resources (and some not so useful) to try my hand at.
- AWS Sample Questions answered and explained
- Self written questions from another AWS Certified Solutions Architect – Part 1 here and Part 2 here
If you want to expand your knowledge in other areas to help you (if your not to familiar with databases ect.) I found another resource but be warned some of the answer’s are incorrect/outdated so I suggest you do your own research for your own answers so you understand the concept. I found little to none of these questions on the exam but was worth review to better understand other technologies.
So after going through the questions my last suggestion is to research the answered on your own via the AWS console and the AWS documentation. I read through a number of documents just to sometimes find one answer.
You don’t need to be expert in any one OS, but you will defiantly need to know how to access Windows Linux systems and manage EC2 Instances from the command line. Also knowledge of the basic principles of virtualization is very useful. A good understanding of networking concepts and IP addressing. You should be very comfortable with configuring and working with AWS Virtual Private Clouds (VPC). Understanding how using network route tables, access control lists, firewalls, NAT, HTTP, DNS, IP are all needed.
You must understand how AWS access control lists, security groups, and IAM work. Also how other services leverage this in-order to allow/deny access to AWS CLI/API.
You need to be familiar with loose coupling and stateless systems, web servers, caching, application servers, and load balancers, along with message queuing and RESTful Web Services, XML, and JSON. An understanding on how to interact with AWS SDK, AWS API, Command Line Interface and the software development lifecycle are also assumed.