SnowPro Core受験を振り返る🏂❄

# はじめに
25/2/4 SnowPro Coreに合格しました❄
これから勉強をはじめる方に向けて準備したことを記事にします。
# 私の経歴
主にデータ分析基盤の構築PJやダッシュボード開発を経験してきました。
Snowflakeは業務で1年程触っています。

# 試験勉強をはじめる前の状態
実務経験はあるので基本的な使い方は抑えています。
しかし試験のカギになりそうなSnowflakeの内部アーキテクチャやロール設計などは抑えられていませんでした。（聞いたことはあるが自分の言葉で説明出来ない）
"経験のある範囲は分かるが 知らない事もまだまだ多い"状態です。

# 準備したこと
- 受験記を読む
- 公式ドキュメント
- Udemy

## 受験記を読む
まずは経験者から情報を仕入れる所から。
身近な先輩が受験していたので聞き込みからスタートしました。

https://qiita.com/Hikaru_O/items/e36191ee76292f754c55

## 公式ドキュメント
記事でも紹介されていた公式ドキュメントがまとめてある[神サイト](https://blog.truestar.co.jp/snowflake/20231006/56553/)をみました。

まあ～とにかく公式ドキュメントは量が多いです。まずはドキュメントの読み込みからはじめよう～なんて言えないくらい多い。たっぷり時間がある&ドキュメントの読み込みが得意な方にはおすすめです！私はすぐに諦めました😸（向き不向きあるよね）

## Udemy
読み込みよりも問題を解く方が好きなのでUdemyをはじめます。私は2つのコースを受講しました。
正答率が9割を超えるようとにかく問題を解きまくりました。間違えたらドキュメントを読み込み、整理することも効果的だったなと思います。公式ドキュメントで理解できない場合はQiitaやnoteなどの記事を参考に図解で理解することを意識しました。

### [[COF-C02] Snowflake SnowPro Core Certification Practice Sets](https://www.udemy.com/share/103HGI3@ClhcEQx7P1OW0Z9pgMScOYwd-ER-TZ8n_MSS91EjwCJQKy5XJnVbFkHo50Jm8SUWgg==/)

https://www.udemy.com/share/103HGI3@ClhcEQx7P1OW0Z9pgMScOYwd-ER-TZ8n_MSS91EjwCJQKy5XJnVbFkHo50Jm8SUWgg==/

こちらをメインに使っていました。
1周目の正答率は30%程度で絶望🤑2,3周繰り返すと80%を超えられました。
知っていれば解ける問題が多いので諦めなければ何とかなります！

### [Snowflake SnowPro Core Certification Practice Tests COF-C02](https://www.udemy.com/share/102mo03@HLExWKCKbdYAZ2oY2QuUxLuot7fxlKGTKxeewqxeqk4hZZD2_StvNTKTRMVBGsZtSA==/)

https://www.udemy.com/share/102mo03@HLExWKCKbdYAZ2oY2QuUxLuot7fxlKGTKxeewqxeqk4hZZD2_StvNTKTRMVBGsZtSA==/

私は試験までに時間の余裕があったので追加しました。
どちらか1つを完璧にすれば問題ないと思います！

# Udemyのコツを2つ紹介

## 1.英語版のコースを受験するとき
ブラウザの翻訳機能を使うと便利です。選択肢も翻訳してくれます。
関数名も翻訳されてしまうのは不便ですが、仕方がないので英語⇔日本語を切り替えていました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3586761/cdcb5301-bc40-4862-b1fb-84a28ebafcfe.png)

## 2.演習モードで1問1答に
演習モードを使えばすぐに答えを確認することが出来ます。はじめの内はすぐに答えを確認したいと思うのでおすすめです。上記で紹介した両コースとも対応しています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3586761/11ca3c4a-f584-4224-9661-0a1985e8ab07.png)

# 抑えておいて良かったキーワード
マイクロパーティション
クラスタリング
マルチクラスタ―ウェアハウス
Account UsageとInformation Schemaの違い
SnowPipeとバルクロードの違い
Secure Data Sharing
半構造化データ　VARIANT型,FLATTEN
非構造化データ　ファイルにアクセスできるURL（スコープ/ファイル/署名）
ステージ
ストリーム

# やって良かった勉強法
人それぞれ向き不向きがあるので参考までに。
わたしに効果的だった方法を記録として残しておきます。

前提
・初見で3割しか取れないレベルの理解度
・Udemyの演習モード（1問1答スタイル）を採用

基本的にはUdemyを解く→公式ドキュメントを読む→図解で整理するようにしていました。

## 不正解の問題を仕分ける
もちろん間違えた問題は見直しをします。しかし不正解の問題が70問もあれば全部見直すのは大変です。せっかく100問解き終えたのにまた70問振り返るなんて萎えますよね。

そこで答えを確認したタイミングで、「時間をかけて見直すべき問題か」を判断するために問題の仕分けをしていました。正解した問題も自信が無いものは仕分け対象です。※1問1答スタイル

- 見直す
    - Udemyの解説を読んでも全く分からないもの
        → 見直しマーク（ブックマーク機能）にチェックを入れる！
- 見直さない
    - ケアレスミス (次は間違えないと誓う)
    - Udemyの解説を読んでなんとなくは納得できたもの (Udemy1周目ではokとする)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3586761/3aa1f487-2382-41f0-8da9-9015edbc6ad0.png)

見直しマークの付いた問題だけ見直してドキュメントの読み込みをしていました。時間をかけるべき問題に絞り込むことで間延びせず集中できたと思います

わたしは解ける問題が増えると楽しくなってきます。また楽しい事には集中出来るタイプです。
はじめは「完璧に理解する」よりも「解ける問題を増やす」ことに集中していました👻

## 図解のある記事を参考にする
特に内部アーキテクチャについてはイメージが付けられるよう図で説明されているものを選んでいました。
おすすめの記事を2つ紹介します🐾

[超ざっくりマイクロパーティション紹介](https://zenn.dev/dataheroes/articles/972876054c75bc?redirected=1)
[Snowflakeのクラスタリングを図解してみた](https://blog.truestar.co.jp/snowflake/20231222/57915/)

## ばらばらに散らばった知識を整理する
問題を繰り返し解いていくうちに弱いポイントが分かるようになってきます。いつも選択肢で迷うもの、自分の言葉で説明できないもの、暗記できていないものなど
こうしたポイントは図や表に書き起こして整理するようにしていました。ばらばらに散らばった知識を整理整頓します。
関係性や階層、違いを整理すると頭の中がすっきりしました。選択肢で悩む時間が一気に減ったように思います。
ただまとめ学習は時間が掛かるので、あくまでも最終手段として使うようにしていました。

ご参考までに

# 最後に
はじめは業務経験もあり一番身近な技術だったので自信がありました。しかし勉強を進めていくうちに、私はSnowflakeというサービスが使えるだけだったことに気付かされました。
エンジニアとして内部の仕組みを知っているかはとても重要な観点だと思います。仕組みを知ったうえで開発できるエンジニアでないといけないなと思いました。
内部アーキテクチャの勉強は難しかったですが知れば知るほどSnowflakeのすごさが分かり面白かったです。
今後はどんなサービスであれ隠された内部の仕組みまで考えるようにしたいです❄

やっぱり知識を付けることで見える世界が広がっていく感覚が好きだなと思いました🐍
来期も沢山勉強してレベルアップしていこうと思います！