見出し画像

AWS DVA合格記

あきの/D-En

AWS認定デベロッパー - アソシエイト(通称DVA)に合格したのでその記録をつらつらと書いていきたいと思います。

AWS SAAに合格したときの記録はこちらになります。

関連記事:
AWS SAA合格記
AWS SOA合格記
AWS SAP合格記
AWS DOP合格記

受験のきっかけ

AWSを触り始めて一年ほど経ち、そろそろスキルアップ(と会社の資格報償金)のために他のAWSの資格を取ることにしました。

上記の通り昨年の2月にAWS SAAは取得していたのでAWS SAP(ソリューションアーキテクト-プロフェッショナル)とどちらの取得を目指すか迷いましたが、2020年7月当時は日本語のAWS SAPの書籍や動画講座などがほとんどなかったのと「三冠」というワードに心惹かれたので、アソシエイト系のコンプリートを目指すことにしました。

学習開始時のスキルセット​

・AWSを業務で触り始めておよそ一年
・AWSを用いたよくある三層アーキテクチャやWebアプリのインフラ設計やAPIの開発に必要なサービスは一通り理解して触れる
・CloudFormationやKubernetsなどを用いた業務レベルでの構築経験はなし
・サーバーレス関連はほとんど触ったことがなく、AWS SAAの知識程度しかない

学習期間

勉強開始:7月頭
Udemyの講座:7月〜8月上旬(35時間)
Web問題集、Udemyの模擬試験:8月中旬〜下旬(合計30時間ぐらい)
Black Belt:8月下旬(10時間弱ぐらい)
公式の模擬試験:8月下旬
受験日:8月下旬

今回は資格を取得すること以上にAWSのサーバーレス関連の技術をしっかりと触れるようになることを目標にしたので、ハンズオンの講座やBlack Beltなど基本的に勉強できることは余すことなく取り組むようにしました。

その分ボリュームも大きくなったため、おおよそ合計で80時間程度は学習に費やしたかと思います。

使用した講座・資料など

Ultimate AWS Certified Developer Associate 2020 - NEW!

ネットで「AWS DVA 学習方法」とかで検索するとヒットする記事の大半に出てくる有名なUdemyの講座です。

英語はめちゃくちゃ苦手なのですが講座内で出てくる全てのパワポが一括でPDFにまとめられていたり(=コピペができる)、自動生成ではない英文字幕がある(=コピペができる)のでDeepL大先生を最大限有効活用することで日本語のネイティブスピーカーである自分にとっても最高の教材となりました。

講座の特徴としてはサービスの説明だけでなくハンズオンの解説もとても丁寧で、何言ってるかわからないけど講座見ながら手元の日本語のAWSコンソール画面と見比べるだけでほとんどの内容を理解することができました。

また声がとても聞き取りやすく、一つあたりの講座時間が長くても15分程度で収まっているのもポイントが高いです。

どうしても長時間拘束されてしまう資格勉強において、動画形式だと些細なストレスでも積もり積もることで集中力が維持できなくなってしまうことが多いです。

特にAWSはサービスの更新頻度が高いので、それに伴い動画の途中の部分だけ音声を取り直して修正したりすることが多々見られますが、どうしても録音環境の違いなどが原因となり大なり小なり違和感が出てしまいます。

その点この講座ではそう言った聞き手がストレスに感じるようなことをできる限り排除するように工夫されていて、とても学習しやすかったです。

ただし、英語ということもあり細かいニュアンスはどうしても伝わりにくいので、この講座だけをやって慢心するとあとで痛い目にあいます。自分はあいました。

AWS Web問題集(koiwaclub)

AWS SAAの時に散々お世話になった、koiwaclubさんのWeb問題集です。

AWS DVAに関しては2020年8月時点で29x7の計203問となかなかのボリュームがあります。

公式のドキュメントやよくある質問から引用されている問題が多く、また一問一答形式ですぐに回答や解説が見れるため、現在の知識量を確認しつつ自分の苦手分野を把握するのにはうってつけだと思います。

ちなみに自分は一周やった時点でDynamoDBのGSIとLSIのユースケースの違いやElasticBeanstalkの各デプロイ方法の特色など、Udemyの講座だけでわかった気になってた部分や各サービスの概念の部分がボロボロだったので、一週目は見直しにとても時間がかかりました。

今回は二週し、いつの間に追加されていた本試験モード(回答が表示されず65問を解いた点数だけが表示される)を一回やって9割ちょい取れてたのでその時点で切り上げました。

AWS 認定デベロッパー アソシエイト模擬試験問題集(5回分325問)

こちらはUdemyの模擬試験の問題集です。

この問題集は65問全て解かないと解説が見れないタイプなので、今回は先にkoiwaclubの方を一周やってから挑みました。

一週目は正答率はそれぞれ55%程度とボロボロで、こちらも見直しにとても時間がかかりました。解説読んで理解するだけでも1セット2時間ぐらい消費したと思います。

全体的にとても難しく、感覚としては公式の試験で10問に1問出るぐらいの難易度の問題をひたすら集めたような問題集になっています。

なのでAWSサービスを概念や各機能の目的などがちゃんと理解できないないと解けない問題ばかりで学習コストが結構重いです。自分は半泣きになりながらやってました。

二週やって正答率が90%前後ぐらいで安定したので切り上げました。

Black Belt(AWSサービス別資料)

上記の二つの問題集を一周やった時点で、そもそも英語では理解できなかった細かなサービスの概要や理念に関する知識がまるっと抜けていることを自覚したので、問題集の二週目と同時進行でBlack Beltでの学習を進めることにしました。

基本的に知ってるところは早送りかスキップで飛ばして、疑問点や知らないことが出てきたらじっくり見るという方法を取りました。

また既に問題集で自分の苦手な分野や理解しきれていないサービスは十分に洗い出せているので、その上でBlack Beltを見ることで具体的なユースケースや細かな注意点などがすんなり頭に入ってきてとても学習しやすかったです。

個人的にこの方法はすごく良かったので今後もやっていきたいと思っています。

実際に見たBlack Belt(Code兄弟は完全に理解してたので見ませんでした)
Serverless モニタリング
実践的 Serverless セキュリティプラクティス
・Run Code in The Cloud AWS Lambda 概要
・ AWS Lambda@Edge
・AWS Lambda Part1
・AWS Lambda Part2
・AWS Lambda Part3
・AWS Lambda Part4
・Amazon DynamoDB
・ Amazon DynamoDB Advanced Design Pattern
・Amazon ElastiCache
・AWS CloudFormation
・AWS CloudTrail & AWS Config
・AWS OpsWorks
・ Amazon Cognito
・AWS Key Management Service
・Amazon API Gateway
・Amazon Simple Notification Service (SNS)
・Amazon Simple Queue Service (SQS)
・AWS Step Functions

公式の模擬試験

最後の仕上げとしてAWS公式の模擬試験を受けました。

その時のスコアがこちらになります。

やれることは全部やり切って自信満々で受けただけにこの結果はかなりショックでした。

ちなみにこの時点で本試験まで48時間を切ってしまっており、日程のリスケができない状態だったので絶望感もマシマシです。

後からふりかえってみるとたまたまなのか難しい問題ばかり集めたところに当たったようで、本試験よりも数倍難しく、見直しをしようとしても全然情報がなくて大変でした。
結局ドキュメントを漁りまくってそれっぽい答えを見つけることはできましたが、自信を持ってこれだ!って言えるような回答は作れなかったです。

試験本番

今回も銀座CBTS歌舞伎座テストセンターで受験してきました。

内容は模擬試験や問題集と比べるとかなり簡単で60分ほどで一周目が終わり、見直しも二週ほどすることができました。

最終的に確実に正解しているかどうか自信が持てない問題が7,8問ほど残りましたが、十分手応えはあったので合格の表示が出た時は安心しました。

試験結果

正直ここまで点数が高いとは思ってもいませんでしたが、かなり時間をかけて学習したのが報われたようで嬉しかったです。

スクリーンショット 2020-08-27 10.57.29

受験者へのアドバイス

・出題範囲の所感

意外と講座や問題集などではサポートされていない問題が多く出た印象があります。
なので自信があるサービスでも一度はBlack Beltを見て知識の抜けがないか確認した方が良いかもしれません。

あとはAWS SAAの範囲の問題もしれっと混じっていたりするので、まだ取得していない方や記憶の彼方にある方は注意しましょう。

・Cognitoなどの認証、認可関連の問題

これは問題集や模擬試験、本試験問わずなのですが、Cognito関連の問題でIDプール+STSなどを使用した認可サービスを問う問題に対して「認証はどれか?」みたいな聞き方をされることが稀によくあります。

なんとなく文脈で察することはできますが、問題文に慣れていない状態だとだいぶ混乱します。認証はどれか?と問われても心を強く持って認可サービスを選択するようにしましょう。

・StepFunctions

StepFunctions関連の問題は問題集などではほとんど触れられることはないのですが、本試験では思ったよりも出題されたイメージがあります。
とは言ってもBlack Beltや公式ドキュメント以上のものはなかなか出ないと思うので、それらを見ておけば大丈夫でしょう。

まとめ

全体を通した所感としてはDVAではHow toや実装で起こりうる問題への対処法を問われることが多く、個人的にはSAAよりも難易度が高く感じました。(喉元過ぎればなんとやらでそう感じただけかもしれませんが)

よくAWS DVAは割と簡単!みたいな風潮がありますが、あまり自分はそうは思いません。

確かにAWS DVAという資格をただ取るだけならば、AWS SAAを既に取得している人ならそれこそ数週間もあれば十分合格ラインには入れるんじゃないかと思います。

ただ自分のようなサーバーレス関連の実務経験がない人がちゃんと理解した上である程度それらを使えるようになることを目的とした場合、一気に難易度が上がります。

経験を証明するために資格を取得するか、経験を得るために資格を取得するか、目的は人それぞれかと思います。

その目的を間違えないように自分に合った勉強をするといいのではないでしょうか。

最後に

まとめで偉そうなこと言いましたが、たぶんAWS SOPは目的?何それ?と言わんばかりに全力で資格取得だけを目指すと思います。

目的なんで気にしなくてもやってればそのうち実力なんてきっとついてきますよ。知らんけど。

余談なのですがAWS DVAを取得したあと、たまたまSlack + AWS Chatbotで簡単なアプリを作る機会があったですが、設計や実装に関して何も悩まずにスムーズにできたことにとても感動しました。

こういった形で実力がついたことが実感できると嬉しいものがありますね。

たぶん設計やAWSの設定よりもPythonやそのライブラリの使い方に悩んだ時間の方が数倍長かったんじゃないかな…

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
あきの/D-En
PHP/Laravel, Kotlin/Spring Boot 趣味:ドラムなどの打楽器全般