Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
より綺麗なTerraformコードをチームで書き続ける取り組み
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
KiyamaMizuki
May 31, 2026
Programming
33
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
より綺麗なTerraformコードをチームで書き続ける取り組み
KiyamaMizuki
May 31, 2026
More Decks by KiyamaMizuki
See All by KiyamaMizuki
TerraformリファクタリングでSGを消した話
kiyamamizuki
0
62
AWS公式のIaC自動レビューツール使ってみた
kiyamamizuki
0
120
沖縄出身の新卒が振り返るシナマケでの社会人生活
kiyamamizuki
0
470
AWS使いすぎ注意! コスト管理とSlackアラート構築術
kiyamamizuki
0
820
Other Decks in Programming
See All in Programming
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
yield再入門 #phpcon
o0h
PRO
0
960
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
540
What's New in Android 2026
veronikapj
0
250
AIが無かった頃の素敵な出会いの話
codmoninc
1
390
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
480
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
850
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
240
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
430
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.9k
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.7k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
520
Featured
See All Featured
Claude Code のすすめ
schroneko
67
230k
Done Done
chrislema
186
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
200
How to build a perfect <img>
jonoalderson
1
5.9k
Thoughts on Productivity
jonyablonski
76
5.3k
BBQ
matthewcrist
89
10k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
330
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
410
Navigating Weather and Climate Data
rabernat
0
450
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
より綺麗なTerraformコードを チームで書き続ける取り組み 木山瑞基 2026/05/29 インフラの「ムリ・ムダ・ムラ」をなくしたい! 最適化・効率化LT会 1
自己紹介 名前:木山瑞基 所属:シナジーマーケティング株式会社 業務:CRMシステムのインフラ運用 AWS / Mail server 趣味:ボルダリング、旅行、ジョジョ好き Terraform歴:1年半
2
今日話すこと こんな方に向けた話です Terraformを書いているが、チームに明文化されたルールがない方 最近Terraformを書き始めて体系的に知りたい方 話すこと 1. 公式スタイルガイドの読み合わせをやってみた経緯 2. 読み合わせで出てきた "チーム独自ルール"
と "誤用" 3. やってみての所感 3
当時抱えていたモヤモヤ Terraformは書けるようになったが、書き方に自信がない 既存のtfコードを確認してある程度真似て書いていた Terraform自体プログラミング言語と異なり書式の自由度が低く気にしなくて もよかった チームには"こうしている"がある コードを書いていて気になる部分など都度聞く形 > 「先輩の書き方を真似てる」だけになっていた 4
アプローチ:公式スタイルガイドの読み合わせ HashiCorp公式 Terraform Style Guide をチームで読み合わせ 1. 自分(新人)が叩き台をまとめる a. チームでの運用と公式の見解で異なる(と感じた)部分を記載
2. チームメンバーと読み合わせながらFBをもらう 3. 「公式と違う点」を意図的 / 誤用 に仕分ける ポイント:新人の自分が"分からない"を表明できる立場だった 5
読み合わせで分かったこと ① 個人の気づき編 / ② チーム独自ルール編 / ③ 誤用発見編 6
① 個人の気づき編: 見よう見まねが、ガイドに書かれていた これまで意識せずに書いてた書式がスタイルガイドに明文として書かれていた 命名規則 定義するリソースごとのグルーピング方法 引数の並び方 → チームの書き方は、ガイドに沿った判断の積み重ねだった →
自分の "なんとなくの真似" に、はじめて根拠が付いた 7
② チーム独自ルール編 「公式と違うが、意図的に違う」= 残すべきルール 観点 チームの選択 理由 ファイル分割 terraform.tf →
versions.tf に分離 プロバイダ管理が見やすい リソースを main.tf に集約 リソース全集約はしない PoC向け、本運用ではアン チパターン moduleのリポジトリ 構成 モノレポ 公式推奨と異なるがチーム 事情で採用 > 暗黙知だったものを、理由付きで明文化できた 8
③ 誤用発見編 「公式と違い、かつ間違っていた」部分 1. variable を locals で代替できるケースを見落とし -. どちらも変数を扱うための記法
9
variable と locals の使い分け variable locals 役割 外部からの入力 内部の計算・再利用 変更タイミング
実行時に上書き可 コード変更時のみ 使いどころ 環境ごとに変えたい値 命名・タグ・派生値 チームの運用フロー上、多くの値は実行時に変えない → 本来は locals で十分なものが variable になっていた 10
variable と locals の使い分け 補足 locals は後から追加された記法 ブロック 登場時期 variable
Terraform 0.1(2014年)から存在 locals Terraform 0.10.3(2017年9月)で追加 → 最初の約3年間は variable しかなかった → 古くからTerraformを使用していたチームは variable を使用していたため、その癖 が残りやすい 11
成果 チームで一番の若手が構文を体系的に学ぶことで、品質を落とすようなコードを 生成する可能性が無くなった チームの共通言語・コーディングルールが言語化できた クリティカルな問題では無かったが構文の誤用も見つかった 12
おまけ:LLMへの指示書・タスク仕様書になる 明文化したルールは、 CLAUDE.md / .cursorrules などにそのまま転用可 # Terraform Coding Rules
(抜粋) - providerは versions.tf に分離する - 派生値は locals を使う(variableは外部入力のみ) さらに:読み合わせ資料が、そのままリファクタリング指示書になった 公式との差異を言語化した読み合わせ資料をそのままコーディングエージェント に投入 → 人にもLLMにも効くドキュメントになった 13
まとめ 14
まとめ ① 新人・若手こそやる価値がある 先入観がないからこそ、素朴な疑問が暗黙知を掘り起こす 体系的に学ぶことで若手自身が綺麗なコードを書けるように ② 綺麗なコードは「チームの共通言語」から生まれる 個人の努力より、揃った言語のほうが効く ③ 公式スタイルガイドは"読み合わせ教材"として最適
> 「動いてるから正しい」は危険、一度立ち止まって読み合わせを 15