AWS認定ソリューションアーキテクトプロフェッショナル（or DevOpsエンジニアプロフェッショナル）を10日で取得する

#はじめに
AWS認定ソリューションアーキテクトプロフェッショナル（とDOP[^1]）にだいたい10日で合格しました。
一通り書いてから気づきましたが、
**どうやって勉強するか**より**どうやって回答するか**に重きをおいた記事になりました。

#3行で
- 普通の資格試験と思うな普通免許試験だと思え
- とにかく英語で一次資料読め
- 過去問はベースロードにはなるが過信はするな

#Who am I
- AWSの実務経験は約1年
- ソリューションアーキテクトアソシエイト(新テスト)のスコアは865。
- 受験日は、2019.01（Retiring 2019＝旧テスト）
- プロフェッショナルのスコアは83%（90%は遠い）

```
ソリューションアーキテクトプロフェッショナル試験結果

総合成績： 83%
分野別の成績 :
1.0  High Availability and Business Continuity: 90%
2.0  Costing: 100%
3.0  Deployment Management: 71%
4.0  Network Design: 71%
5.0  Data Storage: 72%
6.0  Security: 78%
7.0  Scalability & Elasticity: 100%
8.0  Cloud Migration & Hybrid Architecture: 85%
```

#普通の資格試験と思うな普通免許試験だと思え
その前に。
アソシエイトも同様ですが、とにかく日本語の翻訳精度が悪いです。（AWS Japanさんお願いします）
単純に直訳したと思われる翻訳（例：EC2フリート、EC2作業者）等もありますが、
ひどいものだと否定文が肯定文になっている時があり、選択肢に答えが無いときがあります。
80問を170分で回答する必要があるため、とにかくスピード勝負なのに、これはキツイ。
対応策は2つ。

#### 英語が得意な人
最初から英語で受験しましょう。切り替えの手間が省けます。

#### 英語が苦手な人
日本語があることに感謝し日本語で受験しましょう。
なんとなく問題文に違和感があったときは、
画面上部の「日本語」と書かれたリストボックスを選択し「English」に切り替えましょう。
（模擬テスト受けていないので文言は記憶違いがあるやも。ご容赦を。）

## 普通免許の話は？
今からします。
普通免許の試験はなかなか悪名高い~~クソ~~試験ですが、本試験もこれと同様の対策で乗り越えます。
つまり

- 正しい答えではなく誤っている答えを探す（消去法を使う）
- どちらも正しそうな2択が残った時は、より具体的な選択肢を選ぶ
- どちらも具体的でどちらも正しそうな2択が残った時は、より重視する要素を問題文から探す

### 正しい答えではなく誤っている答えを探す（消去法を使う）
普通免許試験だけでなく、選択式の試験では至極当たり前のテクニックですが、
それ故に、本試験においても最重要テクニックです。
問題の要件に対し相応しい選択肢がほぼ1つであったアソシエイトと異なり、
プロフェッショナルの試験では、複数の選択肢が***それらしい***ことがほとんどです。
また、もっと辛いのは***どの選択肢も違いそう***という状況です。
迷ったらとにかく誤りがある選択肢を探します。
（ex,○○というインスタンスタイプでは△△機能は使えない等）
最も大事なのは***消去法だけで即答できる問題を確実に瞬殺することで、時間を節約し、悪文問題に使える時間を稼ぐ***ことです。

### どちらも正しそうな2択が残った時は、より具体的な選択肢を選ぶ
例えば、消去法により以下の２つが残った時
- A：◇◇機能を使用する
- B：○○APIを使用して一時的な△△を取得する××機能を使用する
一見して、◇◇機能と××機能は同じ機能を指しているように見える場合でも、Bが正解のことが多いです。
逆に、**実は△△を取得するのは○○APIではなく□□APIである**＝選択肢Aが正解というパターンもあります。

### どちらも具体的でどちらも正しそうな2択が残った時は、より重視する要素を問題文から探す
多くの場合は、よりW-Aに叶う選択肢（≒よりクールな選択肢）が正解ですが、
ときには問題文に***可用性を重視する***や***コスト最適化のためにAWSに移行した***等の、
その問題が重要視する要素が記載されている時があります。落ち着いて読み直しましょう。

#とにかく英語で一次資料読め
AWSはあらゆる機能が恐ろしい速度で更新されているため、あらゆる資料が恐ろしい速度で陳腐化します。
~~だから試験対策本なんて読むな~~
その恐ろしさは、公式サイトの情報すら英語以外は追従できていないほど。
このため、私を含む英語苦手人種からすると地獄のようですが、AWSをやるにはもう仕方がない。英語を読むしか無いです。
次の資料を読みましょう。

- Blackbelt
- ユーザーガイド
- ホワイトペーパー

### Blackbelt
名前に反して初学者向けになっています。前提となる非AWSの一般的な知識についても書かれていますので、
わからない問題があったら、まずその問題に関連するサービスのBlackbeltをざっと読むのがよいです。（最初は日本語でもいい）
Blackbeltの中に更にわからない単語やサービスがあれば、それも調べて読みます。
こうなると無限に時間が溶けて焦りますので、試験対策だけを考えるならば、
あまり重要度が高くないと思うものはブログ記事等の二次資料でお茶を濁してもよいです。
ただ、外国語習得でも同じですがこの作業こそが知識の厚みを増やしてくれるので、個人的には頑張ったほうがよいと思います。

### ユーザガイド
ある程度知っているサービスも含め一通り読むべきです。
得手不得手は人によると思いますが、[VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)、[EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html)、[ELB](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html)、[IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)は必須だと思います。

### ホワイトペーパー
悲しいけどほぼ全部英語のPDF。Google翻訳にぶちこんで気合で読みます。
W-Aの各柱、特に[AWS Well-Architected フレームワーク – セキュリティの柱](https://d1.awsstatic.com/whitepapers/architecture/AWS-Security-Pillar.pdf)や
[AWS への移行に関するホワイトペーパー](https://d1.awsstatic.com/whitepapers/Migration/aws-migration-whitepaper.pdf)や[DDoS に対する回復性に関する AWS のベストプラクティス](https://d1.awsstatic.com/whitepapers/Securit/DDoS_White_Paper.pdf)は読むほうがいいです。

#過去問はベースロードにはなるが過信はするな
過去問は公式/非公式問わずいろいろあるが、最低でも[公式](https://d1.awsstatic.com/training-and-certification/docs-sa-pro/AWS%20Certified%20Solutions%20Architect%20-%20Professional%20blueprint%20000%20JPN.pdf)は目を通しておくべきです。
アソシエイトを取得した人がほとんどでしょうから、問題文の雰囲気はある程度わかっていらっしゃるかもしれませんが、
プロフェッショナルの試験はアソシエイト(や他のAWS資格)と比べて問題文がやたら長いので、慣れておく必要があります。
非公式の過去問(や類似問)はいろいろあるが、ほぼ英語必須です。~~Google翻訳にかけると本番さながらの精度になるのでおすすめ~~
私が見たものは以下。特にGoldstine研究所は、[A CLOUD GURU](https://acloud.guru/)のフォーラムの存在に気づかせてくれました。多謝です。

- [Jayendra's Blog](http://jayendrapatil.com/aws-solution-architect-professional-certification-exam-preparation-guide/)
- [Goldstine研究所](https://blog.mosuke.tech/entry/2018/10/25/sapro-sample-question/)

私は利用していません[^2]が、以下も有名なようです。

- [AWS WEB問題集で学習しよう（日本語）](https://aws.koiwaclub.com/)
- [Linux Academy](https://linuxacademy.com/)
- [Udemy](https://www.udemy.com/)

過去問はある程度近い問題が出ることもありますが、問題文は同じでも条件や選択肢が変わっている場合があるので過信はできないです。
それでも、自身が苦手とするサービスや問題を掴めるし、何より問題文の表現に慣れることが重要です。

#その他
###とにかく急げ
上でも書きましたが即答できる問題を増やすことが最重要です。
80問を170分なので、単純計算だと1問あたり2分しかないです。
問題文が5行以上あったり、選択肢が1つ2行ある問題もあるので、ダラダラ読んでると回答時間がないです。
つまり、問題文を真面目に読んでいると時間がないので、場合によっては、目的、要件だけ流し読みする必要があります。
一番痛いのは最後までやりきれない白紙回答なので、ちょっと微妙だと思ったらフラグをつけておいて、ひたすら次の問題をやるのがよいでしょう。いったん飛ばして、見直しの時にちゃんと読み直すと答えを思いついたりしますし。（見直しする時間を作るのが大事）
私は、問題1周時点で残り60分。2周目は全ての問題を読み直し残り15分。3周目はフラグした問題だけやり直し残り2分でした。[^3]
**事前に2回はトイレ行きましょう**

### 最新ならよいのか？
上で書いたことと矛盾しますが、試験について言えばYESとは言い切れないです。
試験問題は、一定間隔ごとに更新されていますが（SAPについて言えば直近だと2019.2.5から新問題）
AWSは変化し続けるので、改訂から日が経つほど現実と問題との乖離が広がります。
そういった意味では、***試験の制定時にどうだったか***まで含めて考える必要があります。
ここまで来るとかなり苦痛ですが、私は、**どの選択肢も微妙**な時だけ、制定時期について考えるようにしていました。
**今なら問題文のやり方でできるが、制定時点ではできなかったので誤り**という問題があると引っかかりますが、それはもう捨てることにしました。
更新直後に試験を受けるならこの点についてはあまり考えなくてよいでしょう。

# 追記（2020.03.29)
DevOpsエンジニアプロフェッショナルも獲得しました。（ついでにSysOpも）
受験日は2020.03でスコアは89％でした。またもや90%に届かずです。

やったことはSAPと同じで、ずっと公式ドキュメント読んでました。
SAPの時よりも実務経験を積んだことと、Code系やCFnはプライベートでも結構使ってましたので、
細かい仕様を拾っておけば余裕と思ってましたが、当日の手応えとしてはSAPよりずっとキツかったです。

今回、興味本位でLinuxAcademyのクラスを取ってみましたが、実際の問題とは全然違っており、これだけで対策してたら爆死確実でした。上で書いたように最初に受けるプロフェッショナル試験がDOPの人は問題の雰囲気を知るために受講してみてもいいかもですが、所詮は非公式過去問なのでアテにするのはやめた方が良さそうです。

[^1]: 追記参照。
[^2]: DOP試験の際にLA使ってみました。追記参照。
[^3]: DOPでは、1周時点で残り50分、トイレ休憩5分、フラグ問題確認で残5分でした。集中力が尽きました。