[AWS認定] SysOpsエンジニア・プロフェッショナルを合格してきた話

3年前に取得したSysOpsとDeveloperのアソシエイト認定が今月で期限を迎えることになりました。

そこでせっかくなので上位の資格であるSysOpsエンジニア・プロフェッショナル(通称:DOP)にチャレンジすることに!

前回アソシエイトを取得してから早3年、実務でもずっとAWSを中心にスキルを磨いてきたこともあり、なんとか合格することができたので感想を記事にしたいと思います。

AWS歴

・2018年5月26日にAWS認定ソリューションアーキテクト・アソシエイトを取得。
・2018年6月30日にAWS認定SysOpsアドミニストレーター・アソシエイトを取得。
・2018年7月、AWS関係の業務が割り当てられるようになった。
・2018年7月21日にAWS認定デベロッパー・アソシエイトを取得。
・2018年10月、AWSメイン担当に。
・2018年12月22日にAWS認定ソリューションアーキテクト・プロフェッショナルを取得。
・2019年前半には既存サービスの保守をしつつ新規サービスのインフラを考案、構築。
・2019年10月、業務でSREの部署へ移動してインフラ全体を見ることに。
・2020年前半には既存サービスのコスト最適化やCodePipelineを使ったCI/CDの構築。
・2020年後半にはインフラの見直し施策を中心に活動。
・2021年前半、大規模なサービスのインフラ移設の経験を積めたり。
・2021年6月12日にAWS認定SysOpsエンジニア・プロフェッショナル合格

勉強方法・対策

実務で多くの経験を積んでいる状態からスタートだったので、AWS公式の模擬試験とAWS WEB問題集の本試験モードを受験して現在の自身のスキルレベルを把握しようとしました。

総合スコア:  50%

トピックレベルスコア:
1.0  SDLC Automation: 25%
2.0  Configuration Management and Infrastructure as Code: 66%
3.0  Monitoring and Logging: 66%
4.0  Policies and Standards Automation: 66%
5.0  Incident and Event Response: 0%
6.0  High Availability, Fault Tolerance, and Disaster Recovery : 50%

公式の模擬試験では50%でWEB問題集では75%の正答率でした。

その後は、せっかく購入したWEB問題集の全47セットを全て1回ずつ解く感じでした。
勉強にさける時間もあまり長くなかったため、正解した問題は解説を読まずに不正解の問題だけ解説を読む感じで進めていきました。
WEB問題集は初めから全体的に7割程度の正答率を常にキープできていました。

WEB問題集から察するに、出題傾向としては
・CloudTrailの追跡・活用事例
・GuraDuty と Lambdaを組み合わせた自動的な侵害リソースの抽出と対応
・TrustedAdvisor と Lambdaを組み合わせた自動的なコスト削減
・AWS Config と SNSによる非準拠通知。S3に投げて解析など
・DynamoDBの様々な機能について問われる問題
・DRにおける費用対効果の高い構成 or 迅速な復旧が行える構成
・CloudFormation / OpsWorks / ElasticBeanstalkそれぞれの使い分け
・CodeCommitやGithubについて問われる問題
・CodePipelineによるCI/CD
・CodeBuildによる自動的なテストや手動承認の実装
・CodeDeployでのデプロイについて問われる形
・IAMロールの委任
・ECSを使った冗長的な構成
・様々な要件のデプロイとロールバック
あたりが多いことに気が付きました。

この中ではElasticBeanstalkとOpsWorks以外は全て実務で採用しているため、BeanstalkとOpsWorksを中心とした勉強にシフトしました。

BeanstalkとOpsWorks


BeanstalkとOpsWorksはアップデートやデプロイに関する問題で選択肢として同時に上がることが多いようです。
この時に一緒にCloudFormationやCodeDeployも選択肢に紛れることが結構あります。

BeanstalkとOpsWorksについては実務経験がなかったので要点だけを覚えました。

すごく大雑把に

◆Beanstalkは
・アプリケーション管理プラットフォームで
・コードのデプロイも環境構築もできて
・Dockerとの親和性がめちゃくちゃ高い
感じかな・・・?くらいの認識でした(笑)

同じ要領で
◆OpsWorksは
・設定管理プラットフォームで
・Chefとか使えて
・パッチ適用やソフトウェアの更新が自動化できて
・コードのデプロイやセットアップも可能で
・特定のAWSリソースにしか扱えない
ものなんだなぁ・・・ってレベルの認識だけ持つことにしました。

その他にもOpsWorksではBlue/Greenデプロイはサポートされていますが、BeanstalkではRoute53を絡めたCNAMEベースでの実装でしか実現できないところとかも注意が必要そうです。

試験会場の様子


なるべく慣れた会場が良いので、今回も銀座CBTS歌舞伎座テストセンターで受験しました。

このご時世のためか土曜日の朝10:30でしか申し込みができなかったので、眠い目を擦りながら会場へ向かいました。
以前来た時はAWS認定資格を受験する人がたくさんいたのですが、今回は私を含めて4人だけだったようです。
今だと自宅受験もできるので、うまく人が分散しているのかもしれませんね。

10:30に試験を開始するはずなのですが、テストセンター側の機材トラブルか何かで15分ほど遅れてスタートしました。
その影響かわかりませんが、1問選択するたびに「データ通信に失敗しました。再試行しています・・・。」みたいな感じで5秒くらい止まります。
読み込み画面中にも制限時間も進んでるっぽい気がしたので、勘弁して欲しかったですね。

試験の感想

試験を受けるまでは
「勉強足らなかった・・・絶対落ちたやろ・・・(絶望)」
って思っていて、実際に受けてみても確信を持って正解だと思えるものが非常に少なかったので焦りました。

また、今回はWEB問題集で出題されていた類似問題は2問くらいしか出てきませんでした。
てっきり試験範囲を間違えたか?と思うほどです。

結構調べていたBeanstalkとOpsWorksに関する問題も数問しかありませんでした。

さらに問題の選択肢の中に、明らかに正解がないものもあって困惑しました。

後で見返した時に判明したのですが、英語の問題では[pre-production]と書かれているものが日本語の問題では[本番環境]と訳されていたため、日本語で見た時に正解となる文章が存在しないように見えていたというオチでしたが。。。

英語版で見返せば
・[pre-production]環境にデプロイをして、CodeBuildでテストを実行してデプロイ前に手動承認を実装して[production]環境にデプロイを適用する。
という内容になるはずだったのが

日本語版では
・本番環境にデプロイをして、CodeBuildでテストを実行してデプロイ前に手動承認を実装して本番環境にデプロイを適用する。
となっていた感じですね。

本番環境にデプロイしてからテストじゃダメじゃん!!!って思ってたら翻訳ミスだったとは・・・・。

全ての問題が終わった時点で60分以上時間があったので、15分ほど見直しをしましたが、集中力も切れていてソワソワしてきたので退出。

「これは50%くらいしか正解してないかもしれん・・・」
なんて考えていたところで[合格]の文字が表示されたので非常に安心しました。

試験の結果


スコアボードをみると877/1000スコアと思った以上に高得点でした。

750スコア以上が合格基準なので、100点以上も上回っていることになります。

得点基準が不明なのでなんとも言えないのですが、結果的には合格だったのでよかったです。

今後について


無事にDOPを合格することができました!

おそらく今のレベルであれば、少ない勉強コストで11冠達成も夢ではありません

ただしAWSの認定資格には期限があり、3万円かけて1つ1つを更新しなければなりません。
仮に12個の資格を取得したとしても、それを維持するために3年おきに3万円*7の出費と勉強コストが必要です。
もちろん半額バウチャーを適用することになるので、実際には半額で済みますがそれでも大きな金額です。

会社が福利厚生でAWS認定資格の費用を負担してくれるのであれば全ての取得を目指しても良いなと思うのですが、
おそらくそれは難しいと思うので、11冠達成は目指しません。

しかし、業務で役立つ領分については勉強と成果を残したいなとは思っています。
そのため、次回はAWSセキュリティ専門(SCS)を目指そうと考えています!

まだまだAWSについては知らないことが多いので、今後も知識をアップデートしていきます。
応援よろしくお願いします。

1 個のコメント

  • ケンシロウ へ返信する コメントをキャンセル

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)