【SAA-C03】アラサーエンジニア一年目が合格までにやったこと

エンジニア一年目として、一つの目標にしていたAWSソリューションアーキテクトに合格したので、体験記を書こうと思います。目標を達成できたことももちろんですが、資格勉強をする中で様々なサービスを知れたこと、今後業務で触って試してみようと思えたことが、いちばんの収穫でした。


#### 自分のスペック
* 未経験からエンジニア一年目
* AWS歴: 今担当しているWebアプリケーション関連で RDSやEC2を軽く触ったことがある程度

#### 勉強期間と結果
スコア: 882点 (合格)
勉強期間: およそ1ヶ月 (6 - 70時間程度)


#### 利用した教材と個人的おすすめ度
★★★ 公式模擬問題 (無料)
[AWS Certified Solutions Architect – Associate Official Practice Question Set (SAA-C03 - Japanese)](https://explore.skillbuilder.aws/learn/course/external/view/elearning/13269/aws-certified-solutions-architect-associate-official-practice-question-set-saa-c03-japanese?saa=sec&sec=prep)
勉強を開始した3日目くらいの時と、受験直前の2回受けました。1回目のスコアが45%, 2回目が85%でした。

★★★ [Ping-t](https://mondai.ping-t.com/) (無料) 15 - 20時間程度
各種資格試験に向けた問題を解けるサービス。AWS SAAについては無料でした。
本番レベルの問題を全て1周したのち、模擬試験を3回、さらに本番レベル問題を2回連続で解けるようになるまで周回しました。実際の試験は65問あるのですが、問題を解くときは1回5問などにして、すぐ答えを見て復習 & 移動時間や隙間時間にさっとできるようにしていました。

★★★ 書籍: AWS教科書 AWS認定ソリューションアーキテクトアソシエイト テキスト＆問題集 (3000円弱) 10 - 15時間程度
書籍は勉強開始時に、お世話になりました。知らないサービスを知ることもそうですが、体系的に試験範囲全体を勉強できるのが良かったです。模擬試験などを解いてわからなかったところはまず書籍で索引し、書いてなければインターネットで調べていました。書籍についている問題は9割解けるまで繰り返し行いました。

★★☆ SAA解説の動画コンテンツ (2000円程度) 20時間程度
Udemyがセールをしているときに、購入したSAAの解説講座です。書籍より詳しく解説してくれているところや、実際のAWSコンソールを触りながら解説している部分は実際のイメージがつきやすく参考になりました。ただ分量が多く、1.25倍速で視聴したのですが、1周で20時間ほどかかりました。。。また動画視聴はどうしても受け身になってしまい、集中力が途切れてしまうことが多かったため、書籍に比べるとタイパとしてはあまりよくなかったのかなと思っています。

★☆☆ 有料の問題集 (非公式) 10時間程度
同じくUdemyで購入した問題集を解きました。たくさん問題をとく、という意味では良かったのですが、実際の試験問題は、上述の書籍やPing-tの問題の方が類似していたため、結果的にはそこまでやる必要はなかったかな、という印象です。もちろん試験によっては異なると思うので、あくまで個人の体験に基づいた感想です。

#### 実施した勉強方法とおすすめ
1. 書籍を軽く一周。無理に覚えず、疲れすぎない範囲で読む。時間をかけるよりもまずは２、3時間で読み切ってしまう。
1. 公式の模擬問題を解く (そしてわからなさすぎて絶望する)
1. もう一度、書籍を読む。今回は1周せず、模擬問題でわからなかった部分や単語を中心に読む。
1. 書籍についている問題集を解く (また絶望する)、わからなかった部分を復習する。
1. 書籍以外で勉強してみる。自分はここでUdemyの解説動画と問題集に手を出しましたが、Ping-tとYoutubeで十分だと思います。 (このときはまだPing-tの存在を知りませんでした)
1. 色々な問題でわからなかった部分を再度復習する。書籍でもYoutubeでも何でもいいと思いますが、あまり古いと、サービス名や内容が変わっていたりするため、新しいものの方が良いかと思います。
1. (試験1週間前) 試験日程を予約する。(受検金額の高さに絶望する) ひたすら問題を解き、自分の理解を深める。
1. (試験当日) オンライン受験の場合、机の上と周りを片付ける。手の届くところに何かあるとNGのため、直前に焦って片付けする羽目になります。笑


#### 個人的に思ったコツ
1. 他の方も言っていたりしますが、答えの丸暗記ではなく、サービスごとの特色、できること、できないこと、よく組み合わされて使用されるサービス群やサービス同士の繋がり、などを把握するのが良いと思います。自分で表などを書いて、整理してみるのが覚えやすくておすすめです。
例1: リアルタイムデータ処理といえば、`Amazon kinesis` or `EMR` or `SQS + Lambda`が典型的サービス。それぞれ接続できるサービス、できないサービス。メリット、デメリット、典型的な使用ケース。など
例2: CloudFrontとGlobalAcceleratorの使い分け、接続できるサービスの違いなど。

1. 問題で聞かれていることを理解する。
`可用性を高める`, `コストパフォーマンスが良い施策`, `運用オーバーヘッドを最小限にする` など状況が同じでも顧客が求める内容によって、推奨されるサービスは変わったりします。模擬問題に慣れてくると、何となくこの単語が出てくる問題だったらこの答えかな、だったり答えを覚えていて、反射で解いてしまったりしますが、問題文は最後までしっかり読むことが大事だと思います。

1. 消去法を使う
多くの問題は、消去法で2択まで絞れることが多いです。サービスとして不可能なことが書いてある選択肢や、求められていることに対して、解決にならない選択肢が用意されているため、大体の問題で、2択まではすぐ絞れます。

1. 他の選択肢がなぜダメなのか、まで理解する
模擬問題に慣れてくると、どうしても答えを覚えてしまい考えずに解いてしまう問題が出てきます。その場合は、1) 解答の選択肢を見る前に大体こんなサービスを使えばできそうだな、と考える 2) なぜ他の選択肢がNGなのか、まで自分の中で理解しているか確認する。の2つをやっていました。解答の解説を見てもいいですすし、AWSの公式ページを軽く読んでみるのもいいと思います。

#### 試験問題で思ったこと
個人的には書籍やPing-tの問題と似た難易度だと感じました。内訳としてはざっくり以下です。
15％程度: どこかで解いた模擬問題とほぼ同じ、なんか見たことある問題
60%程度: 見たことないが、聞かれていることは模擬試験などと同じと感じる問題。状況や求められていること、選択肢などは類似している。
15%程度: 自信80%くらいで解く問題。消去法で2択にはできるが、細かい部分でちょっと自信がない。見直しフラッグをつけておく。
数問: 一度も見たことない単語や設定名が出てきて、消去法と勘で解く

#### 最後に
試験はプレッシャーや勉強時間の確保など大変ですが、それでも合格できたことは嬉しいです。また業務で前々から提案していた内容が通り、一部サービスのAWSへの移管を担当させてもらえることになりました。
個人的には経験も浅く、資格を持っているから業務での実践もすぐにできる。とは思い難いですし、実際に業務として携わる中で色々なトラブルや困難もあるかと思います。ただ資格勉強を通して、少しだけAWS各種サービスとベストプラクティスを知れたこと、またここまで勉強したことに自信を持って今後も積極的に学び、業務に活かしていく土台となればと思っています。
ここまで読んでいただき、ありがとうございました。