AWSソリューションアーキテクトになってきた

f:id:watass:20141221163212p:plain

めでたく合格しました。正直受験したときには「あ、落ちたな(確信)」となるぐらい難しかったのですが、ギリギリのスコアで合格できたみたいです。やったぜ。
AWSの利用経験は2ヶ月くらいしかなく、あんまり実践経験がないため、試験は難しく感じました。難しい難しいとはよく聞くので、それなりの覚悟で臨んだつもりだったのですが、それでも難しく感じます。やばいです。
現時点では明確な参考書もなく、試験内容も絶妙に曖昧な記憶を揺さぶる内容になっていて、非常によくできているので丸暗記ではなかなか合格できなさそうです。
本記事では、AWS認定プログラミングアグリーメントに反しないレベルで、今まで私がやってきた勉強法などを公開します。これから同試験を受験する方の参考になれば幸いです。


AWSソリューションアーキテクトアソシエイトレベルとは

AWSソリューションアーキテクトとは、AWSが認定する「クライアントの問題をAWSクラウドを用いて解決できるソリューションを設計できる人」のことです。今回受けたアソシエイトレベルはその中でも最も低いレベルの認定で、その上位にはプロフェッショナルレベル、マスターレベルと続きます。
設計者としての資格認定ですから、単純にAWSサービスに精通しているだけでなく、従来のオンプレミスソリューションにおける問題や、クライアントのニーズを理解し、それを解決するベストプラクティスを熟知していることが求められます。それ故に、AWSに関する知識以外にも、従来のネットワークなどの知識もあわせて問われる包括的な試験になっています。この辺りが本試験の難易度を底上げしている印象ですね。

とにかく言いたいのは、従来のチート公式本が存在するようなありがちなベンダ試験とは異なり、それなりの知識と能力を保持していないと合格することが難しい試験だということです。詳しくは公式を見て下さい(丸投げ)

AWS 認定ソリューションアーキテクト – アソシエイト


スペックとスコア

受験者のスペック

IT業界の実務経験は1年目。学生時代はCとかC++とかOSとかネットワークとか基本的なIT系の知識を教科書的に教わってきました。基本情報技術者とか、ドットコムマスターとかを受験していたので、包括的な知識とか、ネットワーク寄りの知識はあるつもりです。また、LAMP環境の構築とか、簡単なウェブサイトの構築とかやっていました。
AWS経験は11月頭頃から始めたばっかりなので、ざっと2ヶ月程度。正直ほとんどわかってないレベルなので、かなり合格できるのか不安でしたが・・・ちなみに触ったサービスは

  • EC2
  • EBS
  • CloudWatch
  • Beanstalk
  • ELB
  • Auto Scaling
  • SNS
  • VPC
  • RDS
  • CLI
  • IAM

といった感じです。ただし、この中には一瞬触った程度のものも含まれます。
大体はブログにまとめていますので、そちらを見ていただければ。

試験結果

試験結果はこんな感じ

総合スコア:69%
高可用性、コスト効率、耐障害性、スケーラブルなシステムの設計:66%
実装/デプロイ:70%
セキュリティ:87%
トラブルシューティング:50%

合格ラインが65%らしいので、まさにギリギリですね。
ビビリ症がセキュリティの点を大幅にあげてくれたっぽいです。そして実務経験の薄さを物語るトラブルシューティング50%ですね。総合的に見て、やはり理解力の低さがそのまま出た感じです。これは合格に甘んじず、勉強しなくては・・・


勉強したこと

※本章で書いている勉強内容は受験してみて、これをやっとけばよかった!という内容ではなく、受験前の自分が必要だと感じて勉強した内容なので、実際の受験では不要な内容が含まれている、もしくは必要な内容が欠損している場合があります。参考程度にお願いします。

実際に使ってみた

やっぱり一番大事なのはこれだと思います。この試験は机上の勉強だけでは受かりません。
この試験を受ける人は、きっとそれなりにAWSに魅力を感じ、活用方法が見えている人だと思うので、その感じるままに試してみるのがきっと理解を深める近道になると思います。まずEC2インスタンスを起動するだけでも、クラウドの魅力を感じられますのでおすすめです。
私が使ってみた各種サービスについては、ブログ内でほぼまとめていますので、よかったら参考にしてください。




合格者のブログを読んで勉強するものを絞った

本試験は公式の参考書が存在しないので、正直最短コースは合格者の話を聞くことですね。
とにかく合格するためには、どの辺の知識を抑えるべきかを理解することが大事です。
実は、どんな知識が求められるかについてはAWSのBlueprintを見ればいいわけですけど、それにあわせて、どんな勉強が大事なのか見ておくと気持ち的に楽です。Blueprintは上記の試験公式ページで「試験ガイド」をダウンロードすればOKです。
私が勉強の参考にさせてもらったブログは以下の通りです。ありがとうございました。





クラウドデザインパターンを読んだ

合格者の方のブログでよく出てくるのが「クラウドデザインパターン
これはクラウドでソリューションを設計する際の、よくあるベストプラクティスをまとめたノウハウ集的なものなので、ソリューションアーキテクトを受験される方は必読だと思います。

AWS-CloudDesignPattern

ちなみに、こちらのウェブサイトの内容は書籍にもまとめられているので、できれば購入して読んでおくのが理想的だと思います。私は受験前には購入できなかったのですが、受験後に購入しました。おすすめです。

Amazon Web Services クラウドデザインパターン 設計ガイド

Amazon Web Services クラウドデザインパターン 設計ガイド

AWSマイスターシリーズのスライドを読んだ

これも合格者の方のブログで紹介されていたのですが、AWSの公式トレーニングで使用されている資料がSlideShareで公開されているので、見ておくとよいです。数少ない公式の資料なので、主要サービスに関しては抑えておくことが望ましいですね。大体EC2の資料から、レコメンドで他のサービスの資料も読み進める、って感じでした。

結局私はあんまり多く見れなかったのですが、EC2、VPC、RDS、S3、EBSとかその辺は見たと思います。可能な限り見ておくといいでしょう。

クラスメソッドさんのブログを読んだ

よくAWS系の勉強をすると、高確率で到達するクラスメソッドさんのブログ、Developers.I.Oは流し読みしていました。熱心にAWSのサービスについて研究されていらっしゃるので、とても参考になります。RSS登録して定期的に情報収集させてもらうといいと思います。
もちろん、AWSを実際に使って、出てきた疑問をここで解決するのもGoodです。

公式ドキュメントやホワイトペーパーを読んだ

AWS公式の試験なので、AWS公式の資料を読むのが一番です。
特に、試験範囲のブループリント、試験のレベル感を掴めるサンプル問題、ブループリントで紹介されているホワイトペーパーは読んでおくのが理想的ですね。

現時点でブループリントにて推奨されているホワイトペーパーは以下の通りです。

これらのホワイトペーパーは定期的に更新されますので、ググって見つけてください。
私は上記のホワイトペーパーに関しては全部読みました。

AWS公式ブログを読んだ

AWSの試験では、最新のテクノロジについて問われたり、東京リージョンでまだ利用できないサービスについても問われることがある、と聞いたので、常に最新のアップデートを確認できる、AWS公式ブログをフォローしました。
実際、あまり読むことができませんでしたが、受験前にはざっと最新のアップデートを確認してました。受験後も最新のアップデートを確認できるのは理想的なので、とりあえずフォローしておいて損はないと思います。


受験してみて

感想とはしてはやっぱり難しかったです。
経験が問われるのはもちろんなのですが、それだけではなく、公式のドキュメントをしっかり抑えて、なぜAWSを使うといいのか?という部分を説明できるレベルまで理解することが重要です。
受験してみてよかったのは、自分の理解度、わかっているところがある程度見えるようになったのと、まだまだ実務レベルではわからないことだらけだな、と再度自覚できたところです。
この試験は非常によく出来ているなと受験していて思いました。微妙にわかっていそうでわかっていない部分を名指しされた気分に何度もなったので、その辺りをしっかり回答できるようになるまで、もう少し実際に色々作ってみて、理解を深めたいですね。

別件ですが、そろそろマーケティング関係の記事を書きたいです。ずっとプログラミングの記事ばっかなので、アクセス解析とかの記事が書ければいいなーと思いつつ、FuelPHPをもっと弄りたい気持ちがあって、あー何をやればいいのか・・・
年末にかけて年賀状書かないといけなかったりするので、ちょっと忙しいかもしれませんけど、書ける限り記事を書こうと思います。