こんにちは。 たーせるです。
去る9月3日、AWSソリューションアーキテクト(プロフェッショナル)認定試験に合格しました。
わー!(歓声) ぱちぱち!(拍手)このエメラルドグリーンの紋章(?)が美しすぎる!
まじか。
一発合格?
うん。
どんな資格?
一言で言えば、複雑で面倒臭いビジネス課題に対して、AWSの力を最大限に活用して解決するためのものです。
各サービスに関する個別単体の知識よりも、ややこしい要求に沿って最適な合わせ技を見出すギリギリで微妙な思考力が問われます。
そして、試験は時間との戦いでもあります。
時間内に完答するには1問あたり約2分20秒で解き進めなくてはなりませんが、問題文は様々な要求事項が錯綜しており文章量も多い。 少しでも焦ると内容が一切頭に入って来なくなるので、本試験中に冷静さを欠くと致命傷を負います。
合格率は公表されていないものの、一説によると初受験で一発合格する割合は10%を切るともいわれており、AWSの認定資格の中でも難関に位置付けられています。
また難易度だけでなく、受験料も3万円と高額であり、様々な意味でハードルの高い試験となっています。
どうやって勉強した?
たまにこういう事を訊かれますが、思えば僕自身もあまり自分の勉強法について意識したことがありませんでした。
特別なことは何一つしておらず、『普通の参考書を買ってきて、ひたすら演習問題をやっただけ』という感じです。
とはいえ、改めて我が身をかえりみるとそれなりに思い当たるふしもないわけでもないので、この機会に言語化してみようと思った次第です。
時間をかければよいというわけではない
各所の合格体験記などを巡回していると、時折「○○日で受かりました」みたいな内容を目にすることがあります。
合格までに必要な勉強時間は人それぞれなので、勉強時間の短さを競う必要は全くないのですが、一方で時間をかけすぎるのも勿体無いともいえます。
下図は、時間とともに変化する「勝率」パラメータの推移を雑なグラフにしたものです。 話を簡単にするためだいぶ簡略化していますが、多くの人がだいたいこんな感じだろうと勝手に想像しています。
この緑の絶頂期ゾーンが受験するには最適なタイミングなのですが、人によっては完璧を目指しすぎるあまり、自信がつくまで申し込みを先送りにしてしまうようです。
すると結果的に、受験日を迎える頃には飽き始めてしまい、ピーク時よりも能力が多少下がった状態で試験を受けねばならないことになります。
できるだけこの「能力ロス」を抑えたいので、「ちょっと早いかなー」くらいのタイミングで申し込んでしまう方がよいと考えています。
学習途中で期限を設定することにより、ある種の締め切り効果も効いて挫折できなくなりますし、目標地点が明確になるのでコントロールしやすくなります。 たぶん。
そのグラフの形見た事あるよ。
PLC(プロダクトライフサイクル)だったかな……。
パクった訳じゃないよー。
でも今調べたらめちゃくちゃ似ていてびっくりー。
短期間で合格する人は、地頭がよいというより、こういうタイミングの見極めが巧いのでは……と思ったり。
逆から考える
AWSを学び始めたばかりの頃は、大抵S3やDynamoDBなどの各サービスで、それぞれ「何ができるか」を個別に知るところから始まります。
一方、この試験は「解決すべき課題」が先にあり、そのための手段を検討するという、初学者とは逆の発想が問われることになります。 ここが難しいのです。
一つ身近な譬え話をしましょう。
いきなり話が変わるようで実は変わらないので今しばらくお付き合いください。
高校の数学で という公式を習った憶えはないでしょうか。
僕は商業高校だったから数IIIやってない。
おいwww よく大学に受かったな。
実はこれ、左辺から右辺を導出するのは比較的容易なので、公式を習った時点では暗記しなくてもなんとかなってしまいます。
しかしその逆演算である の場合は事情が異なり、左辺から右辺を素直に導くことができません。
前提知識として、 という対応関係をしっかり頭に叩き込んだ上で、右辺から左辺にさかのぼってみる発想がないと、 の原始関数はまず思いつかないのです。
そんな事後承諾的な……。
だったらそもそも、 を覚えていなかったら詰むじゃん。
でも逆は必ずしも真ならずで、いざ を問われたときに、微分公式が記憶に定着していなくて が出て来ない……と。
そうそう。
知っていたはずなのに答えられないってめちゃくちゃ悔しいと思うよ。
もともと一方通行の知識を双方向に接続するにはより強固な知識のネットワークが必要になるのです。
模試から手をつける
── というわけで必然的に、試験勉強の大部分はひたすら知識の紐付け作業に耽ることになります。
RPGに喩えるならば、レベル上げのために雑魚敵をひたすら血祭りに上げるようなもので、勇者にとっては必要な行為だったとしても、プレイヤーにとっては退屈で苦痛です。
こういう地道な作業を少しでも楽しむにはどうすればよいでしょう。
僕の場合は、最初に巻末の模試に手をつけて「わー、こりゃ無理だ」と思い知ってからレベル上げ作業に移ることが多いです。
いきなり本試験に近い問題から始めると、全然解けなくて心が折れたりしないの?
サービス問題もあるから全く解けないわけじゃないよ。
それに、いずれはこのレベルの問題が解けるようにならなきゃいけないからねー……。
なるほど。
それに、本文を全部終えてから最後の最後で模試に臨んで、そのとき全然解けない方がよっぽどショックだよね。
いきなり模試から始めることには、2つのメリットがあるように思います。
- レベル上げ作業の動機づけになる
- やらなくてよいことをしなくなる
先に模試を解いておくことで、レベル上げの最中も「あの問題を解けるようになるために」みたいな目的意識が維持しやすくなります。
一方で、やっても意味のない勉強を排除しやすくもなるので、結果的に退屈なレベル上げに費やす時間は減ります。
参考書の使い方
今回使用した教材はこちら(※ アフィリエイトではありません)。
肝心の参考書の使い方についてですが、これがまたきちんと書こうとするとなかなか難しい。 結論から言うとアウトプット優先の勉強法の方が時間対効果も高いので、本文を読むより演習問題中心の使い方がオススメです。
最終的な到達目標は、章末問題と模試で全問正解できるようになることです。 最初は答えが合っているか不安なので、1問解くごとに解答解説を読み、それでも理解できなければ本文に戻るというムーブをひたすら繰り返すだけ。
解けない問題も、速攻で解答解説を読みます。 分からない問題に悩むのは時間の無駄なので、答えを見て納得したら次に進みます。 明日にはまた解けなくなっているかも知れませんが、そのときも答えを見て思い出したら次に進みます。
全問正解できるようになるまで繰り返します。
背徳感がやばそう……。
なんで。
そんなことしてたら、既視感のある問題ばかりになって、初見の問題に対応できなくなるんじゃ……。
確かに、解いたことのある問題ばかりになっていくのですが、その過程で「正解に至る頭の働き」が朧げながら分かってきます。
逆にそういう問題文の読み方・選択肢の絞り方をできるだけ身につけておけば、初見の問題にもある程度対応できる ── というのが今のところの僕の考えです。
慣れてくれば章末問題だけを繰り返すようになり、本文は殆ど読まなくなるのでペースが上がります。
この参考書の場合、試験範囲の解説は実質3章分(2章、3章、4章)なので、1日1章ずつ章末問題を解けば3日で1周できます。 ただし3章だけやたらボリューミーなので、負荷が均等になるよう前日と翌日に分散させてもよいでしょう。
参考書をやりきったあと時間が経つと、実力もモチベーションも下降線を辿り始めるので、やりすぎには注意しましょう。
まとめ
そんな訳で、つらつらと自分自身の勉強法を振り返ってみました。
ここに書ききれなかった内容はまだまだありますし、もちろん、ここに書いたことが正解というわけでもありません。
とはいえ最小限の時間と労力で効果を最大化するために、長年に亘って無意識的に実践していたことを始めて言語化したので、もしもなかなか結果が出なくて悩んでいらっしゃる方の参考になれば幸いです。