AZ-203:Developing Solutions for Microsoft Azureを受験し合格した

## はじめに

AzureのサービスをSDKで開発するための基礎知識をつけたいと思いAZ-203を受験してきました。
以下に個人的に勉強したことや受験後の所感を記載します。これから受験される方の助けになれば幸いです。
他資格取得の記事は以下を参照してください。

* [AZ-900:Microsoft Azure Fundamentalsを受験し合格した](https://qiita.com/kita-atsushi/items/a4f5f328df3656b4a1e2)
* [AZ-103:Microsoft Azure Administratorを受験し合格した](https://qiita.com/kita-atsushi/items/b5078a15879c8932f781)
* [AZ-400:Designing and Implementing Microsoft DevOps Solutionsを受験し合格した](https://qiita.com/kita-atsushi/items/81b21ff79d7b1956f2c0)

本記事のAZ-203はMCP試験体系の以下赤枠に位置付けする試験です。

![スクリーンショット 2020-05-29 19.03.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133866/0688bc64-8dbd-e741-57ee-3c8f9b83cae9.png)
[↑抜粋:Microsoft Training and Certifications:Role-based poster](https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE2PjDI)

## 試験

* 試験日: 2020/5/29
* 試験場所: 最寄りのPeasonVue試験会場
* 試験名: [試験 AZ-203: Developing Solutions for Microsoft Azure](https://docs.microsoft.com/ja-jp/learn/certifications/exams/az-203)  
* (注意) 2020年8月31日に新バージョンAZ-204に変わります。内容を見る限り勉強の方針は変わりない感じですが、違いは[こちらの方がまとめてくださってます](https://jmtechsupport.jp/azure/1573/)ので一読すると良いかもしれません。なお、AZ-204に変わっても[Azure Developer Associateの資格は剥奪されることはない](https://trainingsupport.microsoft.com/ja-jp/mcp/forum/all/developing-solutions-for-microsoft-azureaz-203az/d381258b-2661-4242-b4c0-99ea9d84caec)ようです。

## 試験概要
[公式のFAQ](https://www.microsoft.com/ja-jp/learning/certification-exam-policies.aspx#scoring)を参考にして抜粋します。

* 試験名: AZ-203:Developing Solutions for Microsoft Azure
* 問題数： 記載なし(他受験ブログを拝見すると37-55個程度とゆれあり)
* 合格ボーダー: 700
* 試験時間: 180分
* 試験言語: 日本語
* 出題形式: [こちらを参照](https://www.microsoft.com/ja-jp/learning/certification-exams.aspx#meo-section4)

## 出題範囲
* [公式ページから出題範囲](https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE3VEHC)を見ると、Azureのサービスを具体的にCLIまたはSDKでどう実現するかを試験する形となります。出題サービスとしては開発者が使う場面が多いWebAppsやSQLDatabase、CosmosDB、ServiceBus、ApplicationInsightsといったサービスを中心に、かつ、AKSやWebApps for Containersといったコンテナソリューションまで出題されます。AZ-103と比較すると若干出題範囲を絞って特化させた感じでしょうか。C#やDockerなどベースとなる基礎知識があればさらに良さそうです。

## 勉強方法

出題範囲からキーワードを抽出しながら関連ドキュメントを中心に読み込み、実機に触れての理解が中心となります。以下を実施しました。

* [Azure公式ドキュメント](https://docs.microsoft.com/ja-jp/azure/#pivot=products&panel=all)
  * 特に出題されるサービスの**チュートリアル、サンプルは必ず手を動かして実装を覚えこむ**こと
* [Azure Learn](https://docs.microsoft.com/ja-jp/learn/azure/)
  * クレジットカード不要で無料の実環境が触れるサンドボックスを提供してくれて手を動かして学習できる e-learning。
  * 実際に手を動かしながらAzureCLIやSDKを使ったプログラムを組んだりするためよく覚える
  * [実施したLearn Collectionはこちら](https://docs.microsoft.com/ja-jp/users/kitaatsushi-5671/collections/6mqb73qn3kn31)
* [Linux Academy](https://linuxacademy.com/library/topics/Azure/skill-level/Intermediate/search/az-203/)
  * 流し聞き程度で活用

## 受験後の所感

今回は勉強時間があまり取れず１回じゃ難しいと思ってましたが、普段Azureで仕事して習得した知識やコンテナ等の開発基礎知識があったため、若干の追い風を受けてギリギリ合格できました(スコア760くらい)。

問題数が前回受験AZ-103のように50問以上出題かと思いきや想定より少なく時間はたっぷり余りました。出題されるサービスが偏って、かつ、自分が得意なところが多かったので思ったよりスムーズに解答できました。これは運が良かったのかもしれません。もちろん、これムリ！って問題もありましたが・・。出題はケーススタディと選択問題でしたが実機でC#コード書けって感じだと知識がほぼない自分だと絶望だったかもしれません。

今回の資格を通じて公式ドキュメントからチュートリアルやサンプルを読んでひたすら手を動かしました。職歴としてインフラ系が多いので個人的に馴染みのないC#SDKは苦戦しましたが、経験が足りないと自覚できたこと、AZ-103に出てこないサービスも知ることができたことから、スキルの幅が広がったと感じてます。

みなさんもぜひAzureの開発スキルアップを目的に受験を検討してみてください。

## その他お役立ち

* 最近気付いたのですがMicrosoft系イベントでバウチャーがもらえて試験が無料になります
    * イベントをチェックしましょう。よく調べれば無料でバウチャーが入手できます
    * Microsoft Ignite 2019では参加登録者(無料)にバウチャーがもらえました
    * 先日2020/5/7〜8に開催されたMicrosoft BuildでもMicrosoft Build Cloud Skills Challengeいう企画に参加(これまた無料)すればバウチャーがもらえるようでした
    * さらに[Microsoft Ignite 2020](https://myignite.microsoft.com/home) が9月22日から3日間開催され、その中のCloudSkills Challengeを期間内に実施すれば無料で試験が受けられるバウチャーがもらえそうです。奮って参加しましょう！

以上です。