見出し画像

GCP Professional Data Engineer 認定資格の勉強方法

はじめに

- GCP Professional Data Engineerに合格することが出来たため、 記憶が新鮮なうちに自省を含めて、レポートを書きます。
- (モチベーションとしては、第一問目からいくつかの問題を見た後で「想定できていなかった問題が多く、やばい。」という心境だったので、この反省を受験する前の自分に伝えたい気持ちで書いています。)
- この記事で述べたいポイントは、「試験ガイドに書かれている出題範囲はしっかり確認しよう。」と、「組織や状況を仮想で想定して、実際の現場に導入しその運用を自分で行う観点で、思考訓練しよう。」になります。

受験前の自分の知識・経験

- GCP Professional Data Engineerを受けるに当たって、この試験に対する自分の強みと弱みは、以下の状態でした。
強み:
 - 実際にデータエンジニアとして、GCP上でBigQuery/Dataprocを使って、DWH/DMを構築。パイプラインとしてはCloud Composerを利用。BIとしてはData Studioを利用。
 - 過去にはデータアナリストとして、機械学習を学び、レコメンドロジックの作成とチューニングを実施。
弱み:
 - 基幹システムやプロダクトのデータベースなどからバッチベースでのデータ取得は行うが、リアルタイムのパイプラインには明るくない。
 - したがって、Pub/Sub, Dataflow, BigTable, DataStoreは勉強が必要。

受験までに自分が勉強したこと

※ただし、自分の勉強では、本番で全50問中20問くらいしか自信をもって回答できませんでした。

準備:
 - Googleで「Google Cloud Data Engineer」で検索すると、過去に合格された方々の有益な勉強方法の記事が出てきます。それを参考に、まずは問題を解き、理解の足りない分野の勉強を進めます。

試験対策の問題集:
- 公式の模擬試験
- Courseraの Preparing for the Google Cloud Professional Data Engineer Exam 日本語版

理解のためにインプットした情報:
 - Data Engineering, Big Data and ML on Google Cloud 日本語版専門講座
  - この教材では、バッチ系サービス(BigQuery/Dataproc)、ストリーミング系サービス(Pub/Sub,Dataflow/BigTable)、機械学習系サービス(ML API, BigQueryML, AutoML)など、多くの関連サービスを体系的に勉強でき、Qwiklabsを通して実際にハンズオンを行い、理解を深められます。
- [Google 認定資格] GCP Professional Data Engineer の勉強方法と対策
 - ”合格するための tips”、”確認テスト”のポイントを元に、公式ドキュメントを読みました。
- GCP Professional Data Engineerに2週間で合格したので勉強方法を共有
 - ”試験のテクニック的なものを紹介”が、Tipsとして参考になります。
- Google Cloud™ の Professional Data Engineer に合格しました
- "模擬試験を受けてみて", "いよいよ本試験"の部分で、その他キャッチアップすべき領域が述べられているので、このポイントを元に、公式ドキュメントを読みました。

本番試験を受けた後の反省

- 実際に1回目を受験しないと、自分の勉強した内容と実際の試験のGAPがどの程度あるのか?は分からないと思います。ですので、最初は、結果に関しては割り切った気持ちで受けた方が良いと思います。
- ただし、次回に活かすために、テスト中に自分が何を理解できていないのか?については、2時間ギリギリまで時間をかけて把握することが重要です。
- ※ただし、自分の勉強では、本番で全50問中20問くらいしか自信をもって回答できませんでした。と書いたように、自分の勉強方法だけだと不足していた内容がありました。それは、実践的な観点です。例えば、試験ガイドでも、説明されています。

一例を挙げると、以下のような項目になります。
 - システムの可用性とフォールト トレランス
 - ストレージの費用とパフォーマンス
 - データ復旧の計画、実施、ストレステスト(フォールト トレランス、失敗したジョブの再実行、遡及的再分析の実行)
- この一例を具体的な文言に変化すると、以下のような観点を把握しておく必要があるということです。
 - 各サービスで可用性を高めるにはどうするのか?(注:でもコストは最適化してください。)
 - 各サービスでのバックアップはどうするのか?(注:でもコストは最適化してください。)
 - 各サービスでのエラー処理をどうするのか?(例:データ欠損、未整備データの混入などのケースで。)
- そのため、上記の問題に答えるためには、実際の状況を想定しながら、各サービスの公式ドキュメントを読んで答えを考える。という思考訓練が必要になるはずです。自分は、今回の受験時に、この部分をまともに取り組めていなかった。という反省です。
- 今思えば、模擬試験や想定問題で問われていたのは、各サービスとその適切な"ユースケース”の正しい組み合わせが多くだと思います。そのため、現場では当たり前に出てくる問題を、疎かにしていたのだと思いました。

おわりに

- この試験を受けてみて得た気づきや反省をもとに、さらに勉強を続けていく。というのがこの試験の意義である。と思いました。

この記事が気に入ったらサポートをしてみませんか?