Terraform Associate(003) 受験体験記

はじめに

こんにちは!プラットフォームサービス部プラットフォームエンジニアリングチーム所属のクラフトマンです!私は普段、AWSGoogle Cloud といったクラウド環境にインフラを構築しています。業務を通して得た知見や経験談についてお届けできればと思います!

先日、Terraform Associate(003)を受験してきたので、試験準備から試験申し込み、試験当日、試験後までの一連の流れを記録します。これから受験を検討している方の参考になれば幸いです。

特に「業務で使ってるから余裕でしょ」と思っている方(過去の私です)、甘く見ちゃダメですよ!

Terraform Associate(003) 試験概要

  • 試験名: HashiCorp Certified: Terraform Associate (003)
  • 受験料: $70.50 USD
  • 試験時間: 60分
  • 言語:英語のみ
  • 問題数: 60問程度
  • 合格ライン: 非公開

受験を決めた理由

Terraformは5年ほど業務で使用しており、最近はHCP Terraformも活用していたので「もういい加減資格取っちゃえ」と思ったのがきっかけです。

AWSGitHubGoogle、TFEプロバイダーを使い分けて、HCP TerraformのPrivate Module Registryでモジュール公開もしているし、そのモジュールは社内でバリバリ使われている。受験当時は社内で誰も資格を持っていなかったので、いいアピールになるんじゃないか?という下心もありました。

「俺、もうTerraformマスターじゃん!」と完全に調子に乗っていたのです。この慢心が後で痛い目を見ることになるとは...。

学習方法・準備期間

学習期間

日頃の業務でTerraformのコードを書き、ローカルモジュールもHCP TerraformのPrivate Module Registryでの公開モジュールも作成・活用していました。そのモジュールは社内で結構使われていたので、「これはもう試験なんて余裕でしょ」と高を括っていました。

でも、実際は結構きつかったです。業務で使ってるのと試験で問われる知識って、案外違うんですよね。 自分が作ったローカルモジュールやRegistry公開モジュールの使い方は知っていても、Terraformの内部的な仕組みとか、普段使わないCLIオプションとか、そういう細かい部分が意外と抜けていました。

実際、今回の資格勉強にかけた時間でいうと、およそ2週間くらいでしょうか?業務後の時間や、土日のプライベートな時間で勉強しました。とはいっても、1日にかけられる時間はわずかで、1日2時間確保できれば上出来でした。最初の1週間はひたすらUdemyを復習がてら視聴して、後半1週間はサンプル問題漬けでした。

試験範囲

試験から出題される範囲は HashiCorp 公式から公開されています。IaC の概念をはじめ、Terraform の基礎知識、ワークフロー、HCP Terraform や Vaultなどの他HashiCorp製品と組み合わせた利用方法などが出題範囲となっています。

developer.hashicorp.com

使用した教材

Udemy の模擬試験を初回で受けた時の正答率は75%くらい。ただし、英語で何言っているかよく分からない問題が結構あったんです。

「これだけやってるのになんで75%なの?しかも英語よく分からないし...」という感じで、プライドがズタズタになりました。まさにterraform destroyされた自信をterraform applyで再構築する必要に迫られたのです。

本試験は英語なので、英語に慣れる必要性を痛感。基本的に模擬試験は英語でやることにして、せめてもの足掻きでDuolingoをスマホにインストールして毎日やっていました。「Infrastructure as Code学習 + 英語学習」の並列実行です。

重点的に学習した分野

業務でよく使う機能以外の部分を重点的に学習しました:

  1. Terraform CLI の細かいオプション - 普段使わないフラグとか(-refresh=falseとか知らなかった)
  2. State管理の詳細 - HCP TerraformやS3バックエンドは使ってたけど、他のバックエンドの仕様とか
  3. Module の公開・バージョン管理 - HCP TerraformのPrivate Registry使ってるから大丈夫と思ったら、パブリックレジストリの仕様が結構違った
  4. Workspace の活用方法 - HCP Terraformでは使ってたけど、CLI でのworkspace管理は意外と知らなかった
  5. プロバイダーの詳細仕様 - AWSGitHubGoogle、TFEは使ってたけど、他のプロバイダーの認証方法とか設定が分からない

「これだけ使いこなしてるから完璧でしょ」と思ってたんですが、意外と知らないことが多くて驚きました。普段使わないプロバイダーの細かい設定とかは全然ダメでしたね。

試験申し込み

事前準備

  • 身分証明書の準備
    • 試験登録時に使用するGitHubのアカウント名と身分証明書に記載されている名前が一致していないといけません。
    • 私が受験した時にはGitHubのアカウント名は英語で入力したので、身分証明書にはパスポートを使用しました。
  • 受験環境の整備(静かな個室、Webカメラ、安定したインターネット接続)
  • 試験費用の確認($70.50 USD、当時のレートで約10,500円)
  • 試験日の調整
    • 私の場合は、私と妻の勤務スケジュールが異なるので、妻のスケジュールを確認して、確実に一人になれる日を狙って受験日を設定しました。

公式サイトから試験登録

Infrastructure Automation | HashiCorp Developer

申し込み手順は比較的シンプルです:

  1. 「Register for exam」をクリック
  2. アカウント作成・ログイン
  3. 「GO TO CERTIVERSE EXAM PLATFORM」をクリック
  4. 受験日時の選択
  5. 支払い手続き

色んな時間帯で予約できるので嬉しいです。深夜や早朝でも受験可能なので、夜型の人でも安心ですね。

試験登録完了

試験の登録が完了するとダッシュボードには試験スケジュールが表示されます。試験時間になったら「START」ボタンを押して試験開始すればOKです。

登録完了

試験環境準備

公式から受験要件が公開されています。

https://hashicorp-certifications.zendesk.com/hc/en-us/articles/26234761626125-Exam-appointment-rules-and-requirements

主な要件(重要な部分を抜粋)

部屋の要件:

  • プライベートで静かな場所
  • 受験者以外の立ち入り禁止
  • 十分な明るさ
  • 整理整頓された机と作業エリア
  • 電子機器の電源OFF
  • 携帯電話、スマートウォッチ等の持ち込み禁止

行動要件:

  • 試験中の離席禁止
  • 頭と肩が常に画面に映る状態を維持
  • 透明な容器の飲み物のみ許可
  • 試験内容の録画・撮影・共有は厳禁

自室は機材が多いし、片付けが面倒だったので、最初は駅ビルなどにある個室ワークスペース(急遽外でミーティングする時に使うやつ)での受験を検討しました。

しかし、この手の個室はスマホアプリでのロック解除が必要なので、「スマホ持ち込み禁止」の試験ルールと完全に矛盾してしまい断念。現代のデジタル社会の落とし穴でした。

結局、受験日当日に寝室で受験することを決断。もともと妻の不在日に合わせて試験日を設定していたので、妻が出かけた後、急いで寝室を片付けて試験部屋にセットアップしました。まさにterraform applyのような迅速なインフラ構築です。

もちろん、試験終了後は速やかに元の状態に復旧。完璧なterraform destroyterraform applyのライフサイクル管理でした。妻には今でも内緒です。

ちなみに、他の受験体験記を見ると、お風呂や玄関で受験された方もいるようです。私の寝室(和室)での受験は、まだ常識的な方だったのかもしれません。皆さん、環境要件をクリアするために本当に創意工夫されているんですね。

試験当日

試験開始前の準備

緊張しすぎて、試験予定時間の30分前からスタンバイ。試験ポータルを開いて試験開始ボタンを連打するも、「まだ早いって!」とばかりにエラーメッセージが出ました。まるでterraform planを実行せずにterraform applyしようとした時のような冷たい拒絶です。

15分前になってようやく正常に進むことができました。15分間、画面とにらめっこしていた時間は何だったのか...。

教訓: 30分前のスタンバイは完全に無駄でした。皆さんは15分前で十分です。早すぎるapplyは禁物ですね。

環境チェック

試験開始前に以下のチェックが行われます。

  1. システム要件確認
    • Webカメラの動作確認
    • 画面共有の有効化
    • インターネット接続の安定性チェック
  2. 試験監督官とのチャット
    • 英語でのやり取りですが、翻訳機能付き
    • 以下のような指示に従います。
      • スマートフォンを別室に移動
      • パスポートの提示
      • 部屋全体をカメラで撮影
      • 机の上下の確認・片付け
      • 不要なアプリケーションの終了
      • ブラウザの他タブを全て閉じる

一問一答形式で「OK」と返信するだけで、やり取りはスムーズでした。英語でやり取りしているのに、なぜか「はい」と日本語で返答しそうになったのは内緒です。

試験本番

  • 試験時間: 1時間
  • 言語: 英語(翻訳機能なし)
  • 問題形式: 選択式(単一選択・複数選択)

問題内容は公開できませんが、英語で分からない単語があってもニュアンスで理解できるレベルでした。TOEIC600点程度あれば大丈夫という情報もありますが、普段からTerraformの公式ドキュメントを英語で読んでいれば問題ないと思います。

ただし、一つ重要な注意点があります。模擬試験の時は問題文を声に出して読んでいたのですが、本番では絶対に声を出してはいけません。ルールブックには「質問を読んだり口で答えたりすることを含め、試験環境外での会話やコミュニケーションは許可されません」と明記されています。

声に出して読む習慣がある方は要注意です。私もうっかりブツブツ言いそうになるのをぐっと堪えました。なんとかやらかすことなく試験を終えることができましたが、冷や汗ものでした。

試験時間35分で全問回答を終了。足の痺れもピークに達したので、さっさと試験終了ボタンを押しました。正座で受験したのは明らかに失敗でした...。

試験結果・合格後

即座に結果表示

試験終了後、Webカメラと画面共有がOFFになり、Googleアンケートの記入を求められました。アンケート送信後、すぐに試験結果が表示され、見事「Pass(合格)」でした!

思わず声を上げてしまいました(近所の皆さん、すみませんでした)。まさにterraform apply complete!の瞬間でした。

試験後のフォローアップ

  • 試験ポータル: 履歴確認、レポート・領収書ダウンロード可能
  • 48時間以内: 正式な合否判定メール + Credlyバッジ登録案内
  • Credlyバッジ: LinkedInなどのプロフィールに追加可能

Pass

試験直後のレポートでは詳細な点数や正答率は表示されませんでした。「何点だったんだろう?」という気になりますが、まあ、合格したからいいんですけどね。結果が分かればそれで十分です。

受験してみての感想

良かった点

  • オンライン受験で場所を選ばない
  • 24時間対応で時間の融通が利く
  • 試験監督官のサポートが丁寧
  • 結果がすぐに分かる(ドキドキ時間が短い)

大変だった点

  • 環境準備が思った以上に厳格(まるで本番環境のセキュリティチェック)
  • 1時間座りっぱなしで体力的にきつい(正座は二度としません)
  • 英語での出題(慣れれば問題なし)

学習のポイント

  1. 業務経験だけでは不十分: モジュール作成経験やHCP Terraform活用経験があっても、普段使わない機能はしっかり学習する
  2. 公式ドキュメント重視: 最新で正確な情報源として活用(複数プロバイダーの経験があっても、知らないプロバイダーの仕様は要チェック)
  3. 模擬試験は必須: 出題形式や時間配分に慣れる(プライドを砕かれる覚悟も必要)
  4. ハンズオン重視: 実際にコードを書いて理解を深める(普段使わないプロバイダーや機能も触ってみる)
  5. 英語対策: 模擬試験は英語で受ける習慣をつける、英語が不安な場合は英語学習アプリで英語に慣れる
  6. 声出し厳禁: 模擬試験で声に出して読む習慣がある人は、本番では絶対に声を出さないよう要注意

まとめ

Terraform Associate(003)は、「モジュール作って社内で使われてるから余裕」という慢心を見事に打ち砕いてくれる試験でした。5年使っていても知らないことがたくさんあったのは、良い勉強になりました。

私の場合、「俺、Terraformマスター」→「何これ知らない...」→「合格者」という感じで、まさにterraform destroyからterraform applyへの完全なライフサイクルを体験できました。

これから受験を考えている方は、正座で受験しないよう注意してください(椅子選びは大事です)。また、「業務で使ってるから大丈夫」と思わず、しっかりと体系的に学習することをお勧めします。

この体験記が皆さんの受験の参考になれば幸いです。頑張ってください!

最後に一言: Terraformの資格を取ったからといって、人生がInfrastructure as Codeのようにうまく管理できるわけではありませんが、Terraformについて体系的な知識を身に付けることができ、その知識が業務でも役に立ちました!この経験が自信となるので、資格に挑戦して良かったと思います!