Professional Cloud Architectへのロードマップ

![image.png](https://qiita-image-store.s3.amazonaws.com/0/43333/ea0b1376-c84f-aca4-aa68-b4238e63070c.png)


この記事は Google Cloud Platform その１ Advent Calendar 2018 の11日目の記事です。

ちゃんとしたGCPの紹介が続く中で若干の気後れをしていますが、今回はGCPの資格試験である [Professional Cloud Architect](https://cloud.google.com/certification/cloud-architect) を受けてきたので、その準備内容をまとめます。

既にネットを探せばある情報ですが、2018/11に試験内容がアップデートした可能性があるためきっと誰かの役に立つ(かもしれない)と思うことにします。

なお私は平均的なサーバーサイドエンジニアでインフラを主とした仕事はしていません。
その前提でお読みいただければと思います。

## Professional Cloud Architect って何？

<details>
	<summary>Googleが用意している [GOOGLE CLOUD CERTIFIED](https://cloud.google.com/certification/) の一つです。</summary><div>
> Professional Cloud Architect とは、Google Cloud の技術を組織が活用するために必要なクラウド アーキテクチャと Google Cloud Platform に関する専門的な知識を有することを認められ、ビジネス目標を実現するために、スケーラブルで高可用性を備え、堅牢でかつ安全な動的ソリューションを設計、開発、管理できる者をいいます。
>
> Google Cloud Certified - Professional Cloud Architect 試験では、以下のことを行う能力が評価されます。
> [✓] クラウド ソリューション アーキテクチャの設計と計画
> [✓] クラウド ソリューション インフラストラクチャの管理とプロビジョニング
> [✓] セキュリティとコンプライアンスに対応した設計
> [✓] 技術プロセスやビジネス プロセスの分析と最適化
> [✓] クラウド アーキテクチャの実装の管理
> [✓] ソリューションとオペレーションの信頼性の確保


他には

- Associate Cloud Engineer
- Professional Data Engineer
- G Suite

などの資格が存在します。
</div></details>




## 結論
**(公式)ドキュメントを読み通す** が正解です。が、そ**れが難しいためいくつか他の材料を併用**することをおすすめします(後述)

特に Computing / Storage / Network / Bigdata / Stackdriver は詳細に把握しておく必要があります。
加えて、 IAMの具体的な運用は複数題でていました。どれも場の設定理解が重要になります。
そして意外とDataTransfer系やData Loss Prevention APIが問われました。

またインフラレイヤーの一般的な知識と、kubernetesの知識が前提となった問題が多く出ますので、kubeはシンプルなクラスタを組める程度の理解が必要になります。(これは業務でカバーしていたのでラッキーでした)


問題を通じてGCPは

- オンプレからの移行・連携
- ビッグデータ処理(とML、そこからのサービスへのリアルタイム反映)

に力を入れているのだというメッセージを感じるようなお題でありました。

話をもどしますが、公式ドキュメントは中々のボリュームがあることと、表現が独特な箇所があり、それだけを読むということが難しい内容になっています。
というわけで以下の副教材的なものを併用して準備しました。
公式ではCourseraのコースを推奨していましたがお値段がそこそこしたので、そちらは見送っています。

なお公開模試がありますが、それの難易度が本番のそれだと思うと大怪我するので、そこだけ注意が必要です。(問題の雰囲気はつかめる)

### 教材
- **(公式)ドキュメント**
    - https://cloud.google.com/docs/
- 公開模試 1本
    - https://docs.google.com/forms/d/e/1FAIpQLScPUE0lwEdJdZNOzfNpt14Q135Qw_vG3FQeIHgKTLWOe7Zwnw/viewform

- **書籍 1冊**
    - [Google Cloud Platform エンタープライズ設計ガイド](https://amzn.to/2QB6gkc)
- **Udemyの動画 1本**と、**模試セット1本**
    - https://www.udemy.com/google-cloud-architect-certifications/learn/v4/content
    - https://www.udemy.com/google-cloud-certified-professional-cloud-architect-practice-test/learn/v4/content
- 他知識の学習
    - kubernetes
    - 一般的なdevops系知識(blue/green, カナリア etc)
    - ネットワーク周り(BGPとは、など)



特に中心となるのが太字にした、公式ドキュメント/Udemyの動画/書籍/Udemyの模試 でした。


独断と偏見でサービス群別に、試験範囲とそのカバー範囲を適当に図示します

- 黄色 -> 書籍
- 青色 -> udemyの動画
- ピンクの線 -> 実際に体感した難易度です (問題を公開してはいけない規約なので雰囲気で語っています)

公式ドキュメントは全てをカバーしています。

![](https://study-log.s3.amazonaws.com/uploads/attachment/attachment_path/850/Image_from_iOS__1_.png)

黄色と青色でカバーできない範囲を模試で確認しつつ、公式ドキュメントを読む...を繰り返して穴を埋めていく後半戦といったイメージです。

### 進め方
※ あくまで私個人が振り返ってこうすれば最適だったと思う進め方です

1. まず公開模試を受ける
2. 黄色本を読む
3. Udemyの動画をみすすめながら、適宜ドキュメントを読む
4. みおわったら二度目の公開模試と動画最後にある模試を受ける
    - そこそこできるようになっているはず
5. (必要あれば)ここまでで出てきたGCP以外の知識を習得する
    - kubernetes
        - k8sはシンプルなクラスタ(Deployment/StatefuleSet/Service/Ingress/Job/Configmap/Secretなど)が組める程度に習熟する必要があります
    - spanner ... 概要だけ
    - CIツール
    - deployment各種手法
    - 災害対策
    - BGP
6. Udemyの模試セットを受ける
    - 激ムズ. これと公開模試の中間が本番の難易度のイメージ
    - あとはここで浮き彫りになった不明点を模試の解説とドキュメントで補強していく




以下使用した副教材の紹介です。

## 書籍
[Google Cloud Platform エンタープライズ設計ガイド](https://amzn.to/2QB6gkc)

- point
    - これで 30%はわかる。わかりやすい
    - でもこれだけじゃ足りない。
    - 2時間くらいで読める。


## 公開模試
本番の難易度ではないが、雰囲気を掴むのに最適
[公式の公開模試](https://docs.google.com/forms/d/e/1FAIpQLScPUE0lwEdJdZNOzfNpt14Q135Qw_vG3FQeIHgKTLWOe7Zwnw/viewform)

- point
    - 雰囲気を掴むのには最適
    - ただレベルは本番のそれよりもだいぶ低い
    - 2周くらいすると回答を暗記して最初の3文字くらいで選択肢を選べるようになる。



## 動画

### レクチャー
ドキュメントの機能詳細を丁寧に解説してくれる。本当に丁寧。やりすぎなところもたまにある。
ただ聞くだけでも知識が入ってくるのでドキュメントを読み進めるのと比べるとかなり進みがいい。

[動画: google-cloud-architect-certifications](https://www.udemy.com/google-cloud-architect-certifications/learn/v4/content)

- point
    - かなり詳細に説明してくれる。小テストで間違えたところは何度かトライ
    - 機能説明に特化しているのであくまでベースとなる知識を固めるためのもの。実際のテストではこれをもとに判断するケースしかでない(機能単体を問われることはない)
    - thとrの癖が強い


### 模試
インド人の動画だけではちょっと試験慣れに不安が残ったので模試だけのコースを購入。
結論買ってよかった。

[模試セット: google-cloud-certified-professional-cloud-architect-practice-test](https://www.udemy.com/google-cloud-certified-professional-cloud-architect-practice-test/learn/v4/content)

- point
    - ゲキムズ。
    - でも方向性はこちらのほうがリアル。
    - 心が折れそうになる。
    - これを80%とれたらまずうかる(最後まで70%超えなかった)



## 公式ドキュメント
全てはここにある。ありすぎる。
[公式ドキュメント](https://cloud.google.com/certification/practice-exam/cloud-architect)


- point
    - 全て読める**わけがない**
    - 全てのサービスの役目と概要は確実に抑えておく必要がある
        - ML系やDataLossPrevension APIなど、普段使わないものも理解だけはしておく
        - 抑えるポイント
            - その役目、特徴
            - 他のサービスとの**使い分け**
            - **他サービスとの連携**
    - 基本サービスカテゴリはスペックも確実に抑える(Computing, Storage, Network, Stackdriver, Bigdata)
    - 概念を通し見したあとに利用シーンなどを把握する
        - ベストプラクティスや入門がそれに当たる

あとは基本サービスカテゴリはちゃんと自分で手を動かして操作できるようにしておくと安心です。ここはこの1-2ヶ月GCPで開発をしていたのでよかった。(でも普段使っているからと言ってこの試験はパスできないのが辛い)


## 終わりに
そんなこんなで大体20-30時間くらいの勉強時間で無事合格できました :muscle: 

<blockquote class="twitter-tweet" data-partner="tweetdeck"><p lang="ja" dir="ltr">GCPの Professional Cloud Architect 合格した。 <a href="https://t.co/ck8qtJAI0C">pic.twitter.com/ck8qtJAI0C</a></p>&mdash; 🦍 (@vsanna2) <a href="https://twitter.com/vsanna2/status/1070561472361619456?ref_src=twsrc%5Etfw">December 6, 2018</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>



なお教材の選定については先輩エンジニア複数名からアドバイスをもらいました。
その一人が今年10月に資格を取得した際の記事がありますのでこちらもぜひ！
https://www.wantedly.com/companies/anypay/post_articles/138266


資格とっても~という声もありますが、これをきっかけによりインフラやネットワークについて学ぶこともできたので個人的にはとてもいい機会でした。

この冬皆様ももしよければぜひチャレンジしてみてはいかがでしょうか!

それでは以上です。


## 余談
PCAの証明書が届いたので噂のグッズを貰おうと思ったら `Item is currently on backorder. Merchandise options are subject to change. Please check back in 3-4 weeks.` とのことでした :innocent: