Snowflake上位資格のSnowPro Advanced Architectに2週間で合格した話

# はじめに
お世話になっております。primeNumberの庵原です。
三寒四温の候、皆様いかがお過ごしでしょうか。

SnowPro Coreを1年前に受けてから、ようやっとSnowProの上位資格であるAdvancedに手をつけ、2週間の対策のみで一発Passできたので、その合格体験記としてご共有できればと思います！

## この記事の対象者
- Snowflakeの資格に興味がある方
- 勉強方法の一例を知りたい方
- Snowflakeの仕様をなんとなく理解されている方

## この記事の内容
- Snowflake資格の簡単な説明
- 対策勉強の流れ

# 筆者のスペック
- データエンジニアようやく2年目
- Snowflake自体は案件で触っている
- Snowflakeの思想・大まかな仕様は理解している
    - [Snowflakeの入門向けセミナー](https://blog.trocco.io/seminar/snowflake_dwh)の登壇をしている

# SnowPro Advanced Architect Certificationについて

https://learn.snowflake.com/en/certifications/snowpro-adv-jpn/

公式ページが一番わかりやすいですが、こちらでも改めてご説明します。

> Snowflakeを使用して包括的なアーキテクトソリューションを適用するための高度な知識とスキルがあることを実証します。

> この認定試験は、以下のスキルを試験対象とします。
• Snowflakeデータクラウドを使用してソースから利用までのエンドツーエンドのデータフローを設計する。
• ビジネス、セキュリティ、コンプライアンスの要件を満たすデータアーキテクチャを設計およびデプロイする。 
• アーキテクチャのパフォーマンスを最適化するための適切なSnowflakeツールとサードパーティツールを選択する。
• Snowflake MarketplaceとData Exchangeを使用して共有データセットを設計およびデプロイする。

色々難しそうな単語が並んでいますが、Snowflake上で実際にデータ基盤を構築していく上で、大まかな設計やベストプラクティス、押さえておくべき仕様を広く問われる試験だと認識しています。

例えば、ケースに合わせてざっくりどの機能を使うべきか？これくらいのセキュリティ要件があるときはどの構成・機能を盛り込むべきか？などの大まかな部分から、Snowpipeでこのようなエラーが発生している際はどのパラメーターをいじるか？クラスタリングキーの性能を見るためにはどのようなものを使えばいいか？などの細かいところまで出題されます。

## 試験の形式について
公式からの抜粋です。

| 項目 | 説明 |
| - | - |
| 問題の総数 | 65 |
| 問題の種類 | 複数選択、多岐選択 |
| 制限時間 | 115分 |
| 言語 | 日本語・英語 |
| 受験料 | 375米ドル + 消費税10% |
| 合格点 | 750点（1000点満点） |
| 前提条件 | SnowPro Core認定を取得していること |

重要な点として、Advanced資格の下位資格に当たるSnowPro Coreを取得している必要がある点です。
SnowPro Coreについては、Dさんの合格体験記を参照いただくとわかりやすいです。

https://qiita.com/SoySoySoyB/items/312df4f6d515f914d2df

余談ですが、受験料を支払った2024年2月は為替レートが$1=￥150だったので、6万円ほどしました...高すぎです。


# やったこと
## Udemy
ひたすら下記の問題集を解きまくりました。

https://www.udemy.com/share/108C0U3@GWao_fQsHotxPrvtp-44XczTPMpQREB8JCsDX-nlhfiNFMcv-nMEOVoUcnZ6HSDoQg==/

他の方のAdvanced Architectの合格記でも言及されていますが、不安になるくらいこの問題集の再現度が高いです。
大枠はこの問題を解きながら、わからないことを調べて自分自身に落として込んでいく作業をひたすらに続けていました。
これのサイクルを何度も繰り返せたことが、2週間で合格できた大きな理由だと思っています。

### ※ 2024/11/06現在
2024/11/06現在について、こちらのUdemyコースは利用できなくなっているそうです。
BAN理由は不明ですが、再現度が高すぎたかなぁ〜と邪推しています。

## 公式Document

https://docs.snowflake.com/

公式ドキュメントは正義です。わからないこと・知らないことがあったらAI使いながらでも良いので、じっくり読み込むことをお勧めします。

## Snowflake Fundamentals 4day

https://learn.snowflake.com/en/courses/snowflake-fundamentals/

縁あってこちらの講座を受ける機会があったので、挙げさせていただきました。
内容自体はSnowflakeを知らない非エンジニアの方も対象になる講座ではありますが、体系的にSnowflakeを学ぶにはとても良い講座です。
SnowPro Coreの内容を忘れてしまった、Snowflakeを全体から学びたい方には特にお勧めです。
若干の欠点ですが、平日の9時~17時を4日間拘束される形にはなるので、仕事をしながら受けるのはなかなか大変です。

## ひたすら触る
なんだかんだここに帰着すると思います。
組織の扱い方やデータ複製、クラスタリングキー、Snowpipeについてなど、言葉で説明されてもピンとこないものは実際の環境でゴリゴリ検証するのが手っ取り早いです。
幸いSnowfakeはトライアルアカウントを気軽に利用することができるので、試せることはほぼ無限大です。
言葉でわからないことは手を動かしましょう。

# 受験結果
結果は860点となかなかの結果でした。
ちなみに1年前に受けたSnowPro Coreは775点とかなりギリギリだったため、そこからの成長を感じられますね。

![スクリーンショット 2024-03-08 16.32.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/333022/f9d92997-cddb-1d35-e11e-1f06d50d016e.png)

# もう少し勉強しておけばよかったな〜と思った点
ピンポイントですが、列挙してみます。

- 権限周りの扱いについて
- ACCOUNT_USAGE内の細かい仕様について
- Replicationについて
- 共有について
    - データ共有・Marketplace・Data Exchangeの使い分けなど

# 資格を通じて得たもの
まずSnowflakeに対するさまざまな観点から知見を深めることができたと思います。
なんとなく理解していたものがほとんどだった状態から、かなり視野が広がった上で解像度も上げられたと思います。

また、弊社primeNumberでもSnowflakeを扱う機会が増えている中で、対外的にSnowflakeの上位資格を保有していることは大きなアピールポイントにもなると確信しています。
あくまで肌感ですが、Snowflakeの上位資格を保有されている方はそこまで多くない印象ですので、


# まとめ
今回SnowPro Advanced Architectの合格体験記についてご共有しました。
SnowPro Coreが前提になる点、試験範囲が広い点、かなり細いことも問われる点、勉強方法はある程度確立している点をご共有できたかと思います。

引き続きキャッチアップを続けながら、良い情報を共有できればと思います！