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
AI時代のDevOps入門
Search
ディップ株式会社
PRO
October 06, 2025
Technology
0
18
AI時代のDevOps入門
ディップ株式会社
PRO
October 06, 2025
Tweet
Share
More Decks by ディップ株式会社
See All by ディップ株式会社
DDD_TDDでイケてる開発がしたい!!
dip_tech
PRO
0
16
Go×TDD/DDDによるリアーキテクチャ半年間の振り返り
dip_tech
PRO
0
24
デザインシステムとエンジニアの新しい役割
dip_tech
PRO
0
22
AIのためのテスト戦略 〜TDDが難しいフロントエンド開発でのアプローチ〜
dip_tech
PRO
0
16
迷わないスクラム始めませんか?
dip_tech
PRO
0
32
新米スクラムマスターが考える 仕事を通じてチームを育む「制約主導」のアプローチ
dip_tech
PRO
0
110
Terraform定義もAIで自動作成してみた!インフラ構築でどれだけ生成AIが使えるの?
dip_tech
PRO
0
19
テストコードすら書けなかったレガシーアプリがAIと上手に協働できるようになるまでの軌跡
dip_tech
PRO
0
540
FIndy_Team__Award_2025受賞までの道のり_-_仲間を増やして次の街へ_-.pdf
dip_tech
PRO
0
12
Other Decks in Technology
See All in Technology
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
330
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
150
AI ReadyなData PlatformとしてのAutonomous Databaseアップデート
oracle4engineer
PRO
0
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
78k
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
970
LLM時代にデータエンジニアの役割はどう変わるか?
ikkimiyazaki
4
920
Azure Well-Architected Framework入門
tomokusaba
1
330
リーダーになったら未来を語れるようになろう/Speak the Future
sanogemaru
0
300
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
550
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
350
多野優介
tanoyusuke
1
470
KMP の Swift export
kokihirokawa
0
340
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
Statistics for Hackers
jakevdp
799
220k
How to Ace a Technical Interview
jacobian
280
24k
How GitHub (no longer) Works
holman
315
140k
Code Review Best Practice
trishagee
72
19k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
580
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
It's Worth the Effort
3n
187
28k
Transcript
AI時代のDevOps入門 バックエンドチームがTerraformに 挑戦した実体験 奥野 志洋
奥野 志洋 おくの ゆきひろ ディップ株式会社 新卒2 年⽬ バックエンドエンジニアとして入社 スクラムで開発していく中で Next.js やTerraform
など別領域も 電車に乗らない人生に憧れ エンジニアを志す
Copyright © DIP Corporation, All rights reserved. 突然ですが、こんな経験ありませんか?
今回のスプリントで対応する PBIを実装する際には、インフラリソースの設定変更 (もしくは新たなリソースの作成)が必要だね アプリケーション開発チーム とあるスクラムチームにて、 、
アプリケーション開発チーム インフラチーム 作業依頼 とあるスクラムチームにて、 、
アプリケーション開発チーム インフラチーム 〜待機中〜 とあるスクラムチームにて、 、
アプリケーション開発チーム インフラチーム 作業完了 とあるスクラムチームにて、 、
アプリケーション開発チーム インフラチーム とあるスクラムチームにて、 、 自分でも設定変更できるけど、 インフラのリソースはインフラチームが 管理するものだから依頼して変えてもらうか インフラチームの作業待ちになって しまったぞ、 、
細かな依頼が多くて 本当にやりたい作業の時間が無くなる、 、 、 アプリケーション開発チーム インフラチーム とあるスクラムチームにて、 、 リソースをコード管理したいけど アプリケーションの仕様に依存するリソースが多くて
管理が難しい、もしくはできない、 、
アプリケーション開発チーム インフラチーム アプリケーション開発チーム アプリケーション開発チーム 複数のプロダクトを見ているケースだと更に深刻化
Copyright © DIP Corporation, All rights reserved. アプリケーションの開発チームが インフラリソースの設定変更すれば良いのでは?
Copyright © DIP Corporation, All rights reserved. でもIaC (Infrastructure as
Code) ってなんか難しそう、 、
Copyright © DIP Corporation, All rights reserved. 実体験を共有する事で皆さんのIac に対する ハードルを下げる20
分にします!!
01 02 03 04 05 IaC 、Terraform の基本 IaC 挑戦の背景
Agenda チームで実際に取り組んだこと 得られた成果、学び 今後の課題、展望
Copyright © DIP Corporation, All rights reserved. IaC 挑戦の背景
IaC挑戦の背景① : システムのリアーキテクチャ 複数のシステムが共通の DB 、 テーブル、レコードを 参照、更新 開発チームは利用者単位で分割 同様のロジックが各所に分散、
異なる業務のロジックが密結合 している状態
IaC挑戦の背景① : システムのリアーキテクチャ 一つの業務変更が 複数のチームに影響を与える 全チームで足並みを揃えて 矛盾が起きないように慎重に 開発するのが常態化 結果的に 開発生産性の低下や
障害へ繋がってしまっていた
IaC挑戦の背景① : システムのリアーキテクチャ DDD( ドメイン駆動設計) という設計思想を取り入れて 画面中心の設計から業務中心の設計へ DDD の話が気になる方は弊社のテックブログを参照! 僕もこの前、Go
でDDD やってる話で登壇したので後ほど、記事書きますのでぜひ
求人 IaC挑戦の背景① : システムのリアーキテクチャ DDD( ドメイン駆動設計) では業務を整理して 境界づけられたコンテキストという単位で分割する そして境界づけられたコンテキストはDB を別に持つ事や
結合度を下げる意図からイベント駆動を用いて連携する設計を選択しました 勤怠管理 振り込み 応募 承認 スキマバイトサービスのイベント連携例
IaC挑戦の背景① : システムのリアーキテクチャ イベント連携に使うインフラリソースは アプリケーションに依存するものが多い コミュニケーションコストを減らし、タスク待ちの状態を無くして リアーキのプロジェクトをスピード感高めて行うために 自分たちでIaC でインフラリソースを構築、管理していくことを定めた インフラリソースもコンテキスト単位のモジュールで分割して管理したい
↓
IaC挑戦の背景② : Everything as Codeの実現 Everything as Code プロジェクトに関連する全ての情報をアプリケーションの管理リポジトリ内 でAI
が読みやすい形式で管理すること 人間にしか無い暗黙知を無くし、AI に渡すコンテキストの質を高めて アウトプットの質、速度を高め生産性を上げていくという考え方
IaC挑戦の背景② : Everything as Codeの実現 アプリケーションのコードとインフラリソースのコードを 同じチームで管理することで 自然にEverything as Code
の恩恵を得ることができるのでは?
Copyright © DIP Corporation, All rights reserved. IaC 、Terraform の基本
IaC、Terraformの基本 : IaCのメリット 冪等性の実現 ・ミスの削減、工数の短縮化 手動操作によるインフラ設定を自動化 バージョン管理ツールでの管理 ・履歴の可視化。差分での管理が可能 ・操作を何度実行しても、その結果が常に同じになる性質 ・インフラコードの信頼性向上、定義をチーム間での共有可能
IaC、Terraformの基本 : Terraformとは インフラストラクチャをコードで管理するための オープンソースツール ・マルチクラウド対応 ・宣言型アプローチ ・HCL (HashiCorp Configuration
Language )
IaC、Terraformの基本 : 基本コマンド terraform init terraform fmt : 初期化コマンド :
フォーマット( エディタが自動で行う) terraform plan : ローカルとリモートの状態を比較 実際にどのような変更が適用されるかを表示 terraform apply : インフラに変更を適用 実行後にState ファイルが最新の状態に更新
IaC、Terraformの基本 : state state ファイル : 現在のAWS リソースの設定状態を 管理するファイル
AWS だとs3 に保存 apply apply
Copyright © DIP Corporation, All rights reserved. チームで実際に取り組んだこと
チームで実際に取り組んだこと : plan genによるコード生成 terraform plan -generate-config-out オプション Terraform 1.5
で追加された -generate-config-out オプション 使用することで、既存リソースの HCL を自動で生成することができる
チームで実際に取り組んだこと : plan genによるコード生成 import ブロック to : terraform 上で管理するためのリソース名
id : provider(aws) などの世界での識別ID import ブロックの定義方法は Registy に記載
チームで実際に取り組んだこと : plan genによるコード生成 1. 手動で開発環境にリソース作成 2. plan generate で自動コード生成
3. AI によってコードを整える( デフォルト値の省略) 4. モジュール化してリソースを一般化 都度、Registry を参照して 理解を深めるとともに 設定を最適化
チームで実際に取り組んだこと : AWSのキャッチアップ AWS の知識をスクラムチームでキャッチアップ AWS Black Belt Online Seminar
という公式が各リソースについて 説明する動画を視聴する時間をスプリント内で設定
チームで実際に取り組んだこと : CICDの構築 リソースの変更計画をGitHub 上で確認可能 不慣れな領域かつ他チームから見てもらうので レビュー・コミュニケーションのコストを下げたかった PR の作成時にterraform plan
の結果を自動でコメントするワークフローの作成 レビューで承認されPR がマージされたらブランチに応じて各環境へ自動apply
チームで実際に取り組んだこと : Everything as code 同一リポジトリでプロジェクトに関連するコードを格納 ・各マイクロサービスのコード ・Terraform などのIaC コード
・ドメイン知識を記載しているドキュメント 生成AI に渡すコンテキストの質を向上させる アプリケーションのコードとインフラのコードを同じリポジトリで 管理することによるメリットも感じた
チームで実際に取り組んだこと : Everything as code 具体例 : Eventbridge のtarget 入力トランスフォーマーという
イベントモデルに格納されている 値を変換してターゲットに渡す定義 アプリケーションの処理に 依存する定義内容
チームで実際に取り組んだこと : Everything as code 具体例 : API GateWay API
のIF を定義するopenAPI のyaml を body に渡すことで管理、更新の手間を削減
チームで実際に取り組んだこと : コミュニケーションの変化 インフラチームの方にプランニングに参加してもらう ただ、依頼するといった関係性ではなく スクラムイベントの中で自然とコミュニケーションの増加 また、 アプリケーションの開発チームもAWS の知識を今よりも 獲得していくことでより本質的な議論、相談ができるように
Copyright © DIP Corporation, All rights reserved. 得られた成果・気づき
得られた成果・気づき terraform plan -generate-config-out オプションによる コード生成フロー もちろん、最初に開発環境に手動で構築したものを基にするため IaC の良さと相反する要素もある しかし、最初のキャッチアップとしては効率の良いフローだと感じました
生成されたものをRegistry などで調べながら実装していくことで AWS やTerraform のキャッチアップをしつつ、リソースを構築、IaC 化を 効率良く勧められていることを実感できた
得られた成果・気づき 開発メンバーのスキル向上 AWS の知識のキャッチアップを進んだことで リアーキテクチャをしていく際にもAWS のリソースを含めた構成の設計など より本質的な議論ができるようになったと感じました 領域による縦割りではなく、スクラムチームとして機能横断的なチームへと 成長をしていくことができた
得られた成果・気づき Everything as Code による同一リポジトリでコード管理 DDD の性質上、アプリケーションロジックや境界づけられたコンテキスト といった知識に依存するインフラリソースに関する定義の効率化に成功した AI へのインプットの質を高めてより良いアウトプットを期待していたが
それだけでなく、人間にとっても認知負荷を下げることにつながった
得られた成果・気づき インフラメンバーとのコミュニケーションの変化 それまではお互いから何か依頼ごとがあればコミュニケーションをとる形 今回の取り組みによって課題解決のために今よりも深いコミュニケーションを とって連携ができているように感じた
Copyright © DIP Corporation, All rights reserved. 今後の展望・課題
今後の展望・課題 本番環境にデプロイした後の運用、管理 まだ、リアーキテクチャをしている途中で本番環境にデプロイできていない 今後、デプロイした後にどのように運用、管理をするかというイメージが 自分の中で言語化できていない インフラのチームにコミュニケーションをとって 構築したリソースを本番環境にデプロイ後にどのような業務をしているのか 聞いてみるところから始める
今後の展望・課題 リソース管理の最適化 まだ、最適な構成でリソースやモジュールの管理が出来てはいないと思う ここもインフラチームにコミュニケーションを密にとってキャッチアップして 構成を進化させていきたい 今だとterragrunt 気になっている
今後の展望・課題 作業の分担が難しい state で管理するといった性質上、アプリケーションのコードのように 複数人での分担や並行でタスクを進めていくことが難しい 細かい単位でPR を出して細かい単位でapply していくといった方針で plan 結果を細かい単位で反映し、タスクを分割できる状態に整理する
モジュール管理やstate の単位を適切な範囲で行うよう構成を進化させていきたい
今後の展望・課題 ポイントの見積もり精度 まだまだ不慣れな領域のため、見積もりの精度が悪い 難しそう、時間がかかりそうと言った所感で見積もったが、 意外とすぐ終わってしまったというケースが多く、ベロシティがブレてしまった ただ、うまく見積もれていないということに気づけていることはプラス
今後の展望・課題 組織の取り組みの展開、文化の醸成 今回のような取り組みを組織へ展開、共有することで 領域による縦割りの体制からよりアジャイルな組織へと進化していけると 感じた そのために、組織へ取り組みを展開することで 領域に関係なく開発組織全体がDevOps としてワンチームで同じ方向に向いてい けるキッカケになればと良いなと思う
Copyright © DIP Corporation, All rights reserved. ご清聴ありがとうございました! 少しでもIaC のハードルが下がっていれば幸いです!