Ponz Dev Log

ソース派のシステムエンジニアの開発日記

AWS認定 デベロッパーアソシエイトに合格してきました

TL; DR

遅ればせながら、9月末にAWS認定 デベロッパーアソシエイト試験(2018/6リリース)に合格しました!

AWS 認定デベロッパー – アソシエイト

認定取るためにとにかくサービスを弄り舐め回しましたし、普段は触らないであろうサービスに色々触るいい機会になりました。 実案件の設計と開発どっちにも役立ちそうな内容を学べたので受ける価値ありです。

AWS認定って何?

AWSが公式にやってる認定試験。(関東近郊だと開催日平日なのが辛いです笑)

デベロッパーアソシエイトは認定されると, 認定試験公式ページ曰く以下の能力を持っていることを証明できるみたいですね。

AWS 認定デベロッパー – アソシエイト試験は AWS プラットフォームでのアプリケーションの開発と保守についての技術的な専門知識を認定します。 この試験では以下について理解していることが求められます。

  • アプリケーションについて適切な AWS サービスを選択する
  • アプリケーションと AWS サービスが相互にやり取りするための AWS SDK を取得する
  • アプリケーションによって使用される AWS サービスのパフォーマンスを最適化するためのコードを記述する
  • コードレベルのアプリケーションのセキュリティ(IAM ロール、認証情報、暗号化など)

試験ではどんなこと聞かれたの?

テーマ

AWSのサービスの知識,各サービスの使い方,ベストプラクティスについて聞かれます。 ほとんどがセキュリティと可用性を高めるには?という設問です。単純な知識問題の比率はかなり低め。

また、突然Pythonのコードが出てきたりするので、一度はチュートリアルに沿ってコードを書いておくと吉でしたね。 むしろドキュメントを見ながら実装できることを前提にしている節が見受けられます。

設問例

出題パターンはある程度決まっているので、脊髄反射で解けるやつを求めて分からんやつは飛ばして次に行く。 2時間あっという間に終わります。。。

  • EC2からS3にアクセスしたいけど、権限がなくて処理がアベンドした。問題の解決策のうち素早くかつ最も安全なものは?

  • API Gateway, Lambda, RDSからなるAPIを作ったけど、人気が出たからRDSへの負荷が高くなってしまった。ほとんどが読み取りだけど、処理がハングしないための対策は?

  • CodeCommitに変更がプッシュされる度にツール通知を受け取りたい。どうする? (SNS, SESと絡めて)

出題内容

めちゃくちゃ広いです。出題されたテーマ的にはセキュリティ,コンピューティング,データストアあたりが多め。
ただし、先にも書いたように出題範囲が上記の通りセキュリティと可用性の設問が多かったので、主要なサービス+セキュリティ/可用性向上に関係しようなサービスを押さえておけばいいなと思いました。

  • セキュリティ ★

    • アクセス制御: IAM
    • 暗号化; KMS
  • コンピューティング ★

    • EC2
    • Auto Scaling
    • ECS
    • Lambda
    • AWS Batch
  • ネットワーク

    • VPC
    • Elastic Load Balancer ★
    • CloudFront ★
    • Route53
  • ストリーミング

  • データストア ★

    • RDS
    • DynamoDB
    • S3
    • Elasticache
  • アプリケーション統合

  • メッセージング ★

  • 開発ツール / CDCI ★

    • CodeCommit
    • CodBuild
    • CodePipeline
    • Elastic Beanstalk
    • AWS SDK

実際どんな対策したの?

AWSのドキュメント見ながらやるのが7割。 - とにかくサービスを使う. - どうなったらサービスがエラーを返すか、使う側がコケるかというエラー系を押さえておくとなお良し。

知識系の問題はオンラインの動画見て補完するので3割。

  • ホワイトペーパーを読もう! とありますが、1年以上前のものであれば日本語化されているものの最近のやつだと英語版しかありません。英語読むのが辛い人は、字面だけ追ってもすぐ夢の世界に行くことは間違いありません。できれば動画を見つつ手を動かせるコースが望ましいです。

まとめ

認定試験を取るまで私の場合は3週間ほどかかりましたが、2~4weekくらいあれば十分かなと思います。 ミソはとにかくサービスを触ること。これに尽きます。