【合格体験記🖊️ 】フロントエンドエンジニア vs AWS(SAA-C03編)
まえがき 🖊️
フロントエンド、バックエンドエンジニアとしての実務経験はあるが、インフラ周りの知識が少し乏しいのと、AWS を個人開発でも利用してみたいという気持ちがあり、せっかくなら資格を取ってみようと思い、SAA の勉強を始めたのであった...
勉強内容、受験した感想・反省を簡単に書き残すことにします(合格できました 😮💨)。
筆者プロフィール 📃
- 大学生エンジニア
- フロントエンド/バックエンドともに 1 年半程の実務経験
- FE(基本情報技術者)取得済(8 ヶ月前)
- AWS については「EC2 っていう単語は聞いたことある、S3 はなんかストレージ?、Lambda はコードを実行できるなんらかのなにか...」くらいが全知識(つまりほぼ皆無)
- 触ったことはほぼ無いに等しい
勉強時間・内容 ✍️
-
合計 40 時間くらい
-
勉強時間内訳
-
最初の 10~15 時間くらい
- ↑ 自分の前提知識が足りてなくて説明がわからないところもあったけどとりあえず一周した
-
その後 15 時間くらい
- Ping-t の問題集を解く(基礎固め~本番レベル)
- ↑ 最終的なレベル
- Ping-t の問題集を解く(基礎固め~本番レベル)
-
その後 10 時間くらい(試験 2 日前,前日)
- ↑AWS 公式のサンプル問題
- ↑Udemy の模擬問題演習(本試験 6 回分)
- 時間がなく 6 回分のうち第 1~3 回の 3 回分を 2 周しかできなかった
-
結果・スコア 🎊
- 合格点 720 点のところ、801 点で合格 🎉
- 点数的には余裕があったが、解き終わった時の体感としては割と五分五分で焦った 🫥
勉強・試験を通して感じたこといろいろ 🧐
ネットワークについての基礎知識があるかないかで勉強時間が大きく変わる可能性がある
自分が使った書籍では、サーバーの仕組み,クラウドサービスの仕組み,VPN,DB,DNS,サイバー攻撃&セキュリティ(DDoS,クロスサイトスクリプティング,SQL インジェクション...)などの基本的なネットワーク周りの知識があることが前提として AWS のサービスの説明を行なっていたので、IT 完全未経験でネットワークの知識がない状態で勉強するとなると基礎知識含めかなり遠回りして勉強しないといけないことが多いと感じた。
例えば、書籍やサイトで
「ネットワークトラフィックの負荷分散をおこなう AWS の ELB には 3 種類あり,ALB(レイヤ 7 で動作),NLB(レイヤ 4 で動作),CLB(レイヤ 4,7 で動作)があります。なのでつまり,ALB は HTTP(S)を,NLB は TCP/UDP を...」
というような説明があった時に、(レイヤってなんだ...?TCP/UDP ってなんだ...?)となる人にとっては SAA の勉強は少し険しい道のりになると思われる。
それでいうと、FE(基本情報技術者)は満遍なくネットワーク周りの超基本知識(インフラ含む)を勉強するので、IT 未経験の人は FE→SAA の勉強の流れは悪くないかも 🤔
(ちなみに僕も偉そうなこと言えるほどのインフラ知識はないので、Route53 の説明で DNS の CNAME レコードの話が出てきた時とか、通信方式で SSL/TSL 周りの話が出てきた時など自分の基礎知識が怪しい時は調べ直したりしてました 💻)
サービスの量が多い&暗記多め
AWS が提供しているサービスがとても豊富であるのと、内容については暗記するしかない部分がどうしても多いので、暗記科目があまり好きではない自分としては中々にキツかった 🫠
工夫した点
まずサービス全体の概要(どんなサービスを提供しているか)をおおまかに把握することを意識し、細かい知識(書籍で言えば表などでまとまって比較されているような部分)は一旦スルーした
サイトによって言い回しや問題の傾向が異なっていて非常に困った
まず最初の基礎問題演習&実践問題演習を Ping-t のサイトで行ったが、正答率がかなり安定してきた後に AWS のサンプル問題&Udemy 模擬問題を見たところ、知っているサービスの呼び方が微妙に違ったり、日本語が不自然であったり、そもそも全然知らないサービスが出てきたりしてかなり焦った。
Udemy 模擬問題を始めたのは試験本番 2 日前であったのにもかかわらず、72%の正答率が求められる模擬問題で 65%弱の得点しか取れず焦りまくった(ちなみに本番よりも難しい問題だったらしい。模擬問題第 3 回を初見で 65%しか取れていない状態で、解き直しともう一周(第 1~3 回)をした後に本番を受けたら 8 割取れたので模擬問題が難問集だったということなのだろう(おそらく))
Udemy 模擬問題では Ping-t では見なかったようなニッチ?なサービスの問題も多かったので、詳しく調べるというよりかは、解説を見ながらどういう状況で使われるサービスなのかというのだけ覚えておいた。C03 版は C02 版に比べてもサービス名を単体で答える問題は少なくなったという話は聞いていたが、おそらくあまり有名でないであろうサービスが答えになる場合は、そのサービス名を単体で選ぶだけであったり、長文選択肢ではあるがそもそもそのサービス名が入っている選択肢が 1 つしかないようなパターンも何個かあったので、意外と覚えて損はなかった。
反省点
Udemy 模擬問題の言い回しはかなり本番に似ていたので、もっと早く模擬問題に手をつけてみて問題文の言い回しの差異やクセの存在に気づくべきであった。正直 Ping-t は基礎固めには非常に良かったが、問題文が読みやすすぎた(本番の問題文は直訳チック?で読みにくい、同じサービス名でも謎に表記揺れがある)ので、問題文のクセもおそらくわざと似せていたであろう Udemy 模擬問題の文に慣れるのがいいと感じた。
選択肢がクライアントの要望から絞りやすい
問題文に「可用性を上げたい」「セキュアに」「高速で」「柔軟に」などのクライアントの要望が書いてあることが多く、そこを見ることで選択肢同士を比較して絞り込めることが非常に多かった。
- 可用性を上げたい
- → マルチ AZ, マルチリージョン, フェイルオーバー機能
- セキュアに
- →VPN, プライベートサブネット, 専用線(Direct Connect)などインターネットを経由しない系のソリューション
- 高速で
- → キャッシュ系, CloudFront, Global Accelerator
- 柔軟に
- Auto Scaling, Lambda
おわりに 🙌
今回の SAA の勉強を通じて、AWS サービスの全体像を掴むことができ、AWS のアーキテクチャの知識をつけることができた。また、ぼんやりとしていたインフラ知識全般の学び直しにもなり、理解が深まったのでとてもいい勉強になった。
次回は AWS-DVA を受ける予定です ✍️ お読みいただきありがとうございました 🥳