AWS SAAって実際に仕事で役立つの？

## はじめに
AWS SAA(Certified Solutions Architect) を受けようか悩んでいるけれど、メリットが分からず受ける決定打に欠ける・・という方は多いのではないでしょうか。
私はAWS SAAに2021年に合格しまして、それから業務や個人開発でAWSを使ったインフラ開発・運用関わってきたので、 **AWS SAAを受けることで仕事で何に役立つの？** といった点について記載します。

ちなみに受験前の私の知識レベルは、EC2, S3？名前は聞いたことあるな・・:thinking_face:程度でした。

## 目次
- [はじめに](#はじめに)
- [記事対象者](#記事対象者)
- [結論](#結論)
- [SAAを受けて仕事で役立ったこと](#SAAを受けて仕事で役立ったこと)
  - [システム構築のベストプラクティスが分かる](#システム構築のベストプラクティスが分かる)
  - [入社直後でも案件の概要を掴みやすくなる](#入社直後でも案件の概要を掴みやすくなる)
  - [転職活動に強くなる](#転職活動に強くなる)
  - [プライベートでのサービス開発にも役立つ](#プライベートでのサービス開発にも役立つ)
-  [おわりに](#おわりに)

## 記事対象者
SAAを受けたいが仕事でにどのように役立つのか知りたい人

## 結論
結論から言うと、 **とても役立つ** と思います。
もちろん試験に合格するためだけに「このパターンの問題の解答はこれだ」的な勉強の仕方をすると合格したところで半減しますので、しっかり根本から理解することが大事です。

## SAAを受けて仕事で役立ったこと

### システム構築のベストプラクティスが分かる
試験では下記のような問題が出ます。
```
会社のHPをAWSのサービスを利用して構築しようと考えている。
WEBサーバはEC2を利用し、DBサーバはAmazon RDSを利用しようと考えている。
なお、これらのサーバは単一のVPC内に構築されるものとする。
次の選択肢の中でベストプラクティスといえるものはどれですか？

ア) WEBサーバとDBサーバを単一のパブリックサブネット内に配置する
イ) WEBサーバとDBサーバを単一のプライベートサブネットに配置する
ウ) WEBサーバをプライベートサブネットに配置し、DBサーバをパブリックサブネットに配置する
エ) WEBサーバをパブリックサブネットに配置し、DBサーバをブライベートサブネットに配置する
```

EC2, Amazon RDS, パブリックサブネット, プライベートサブネットといった単語が出てきました。
この問題の特徴は**一つの単語について知識があるだけでなく、それらを組み合わせてどのような設計をすれば良いかを考える必要がある**ということです。
実際の業務では複雑な要件をどのようにAWS上で実現するかを求められますが、AWSでのシステム設計にはベストプラクティスが多くあり、それを習得することでより実用的なスキルを付けることができます。

<details><summary>問題の正解はこちら</summary><div>
エ

HPはインターネットを介して参照されるため、WEBサーバはパブリックサブネットに配置する必要があります。
ただし、DBサーバはエンドユーザから直接アクセスされる必要はないため、プライベートサブネットに配置するのがベストプラクティスとなります。
![スクリーンショット 2022-07-12 16.42.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/205292/f8b568ba-fca6-b248-be48-06db6420d699.png)

</div></details>

### 入社直後でも案件の概要を掴みやすくなる
冒頭にも記載したように、入社前の知識は、EC2、S3の単語は聞いたことがある程度でした。
入社前に作成したポートフォリオを公開する際も説明通りにそのまま行っただけだったので、自分自身でインフラ設計を行ったことも無い状態です。

そして自分の試験を受けるきっかけとなったのが、入社後1ヶ月目の研修の課題でした。
BEやFEの課題が別にある中で、SAAを受験することなり猛勉強...

ですが最初の配属はフロントエンド。あんなに猛勉強した内容は役立つのかと最初は不安に思っていましたが、実際には案件全体のミーティングやSlackで流れてくる重要な情報にはSAAの勉強していなければ理解できなかった内容が多々...

現在はWeb開発だとクラウドを使った案件が大多数なので、どの分野を担当することになってもAWS等のクラウドに関する知識は、案件の概要を掴むという点で非常に役立つと感じました。

### 転職活動に強くなる
こちらは入社前の話にはなりますが、未経験で転職活動をする多くの人がプログラミングスクールに通っているかと思います。
初心者が作れるポートフォリオ(PF)はどうしても似てしまうので、差をつけるにはどうすればいいか工夫することでしょう。
自分の体感ではありますが、下記が転職活動で非常に役立つと思いました。
- SAAを取得したと記載できる
- AWSを使いこなしてポートフォリオを作れる

入社前に何を勉強すればいい?
自分はフロントエンド希望だから、バックエンド希望だから、でも案件が決まるまで何の言語を使用するかわからない。
そんな時はSAA取得を。インフラはフロントエンド、バックエンド関係無く用語や構造の理解が求められることもあり、転職活動の強みになるからです。

### プライベートでのサービス開発にも役立つ

プライベートでWebサービスを開発するとき、インフラの選定をしなければなりません。インフラの種類としては下記のようなものが挙げられます。

- クラウドサービス（AWS, GCP, Microsoft Azure等）
- レンタルサーバ（さくらのレンタルサーバ, エックスサーバ等）

もちろん用途に応じて適切な選定が必要になりますが、現在はクラウドが主流となっており、投資価値はレンタルサーバに比べ高いのではないかなと思います。
GCP, Microsoft Azureとの比較は下記のブログ等で見ていただければと思います。
https://www.value-domain.com/media/aws-azure-gcp/

AWSで個人開発をした際にメリットだと思ったことは **無料利用枠がある** ことです。
特定のサービスでは、範囲内の利用限定でアカウント作成から1年間・もしくは無制限で無料利用することができます。
お試しでAWSを使ってみる際にも使えますし、最小限の構成でしたら無料でwebサービスを公開することもできます。
無料利用枠については公式サイトで確認できますのでご参考にしてください。

https://aws.amazon.com/jp/free/?all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all

## おわりに
AWS SAAは、しっかりと勉強をして合格できれば、自身の能力が向上し、技術者しての需要を高めることができます。
AWSの力をつけたい・何かしら資格が欲しいという風に思ったら、まずは資格を受けてみてはいかがでしょうか。