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
Go コードベースの構成と AI コンテキスト定義
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ANDPAD inc
December 08, 2025
Programming
0
200
Go コードベースの構成と AI コンテキスト定義
奥村 雅敏
2025 年 12 月 8 日
GO・GMOペパボ・アンドパッド "Go" 同勉強会
ANDPAD inc
December 08, 2025
Tweet
Share
More Decks by ANDPAD inc
See All by ANDPAD inc
小規模 SRE チームで支える、 Atlantis で実現するインフラ管理のセルフサービス化
andpad
1
48
「もっと正確に、もっと効率的に」ANDPADの写真書き込み機能における、 現場の声を形にしたエンハンス
andpad
0
970
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
280
Building the Real World with Ruby
andpad
0
69
Catch Up: Go Style Guide Update
andpad
0
330
OSS開発者という働き方
andpad
5
1.9k
Vue・React マルチプロダクト開発を支える Vite
andpad
0
190
プロダクト開発を支えるデータ利活用:中央集権から「民主化」までの軌跡
andpad
0
280
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
730
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
330
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
420
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
410
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.3k
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
3
380
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
2.1k
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
300
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
1
120
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
2
180
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
120
2026年は Rust 置き換えが流行る! / 20260220-niigata-5min-tech
girigiribauer
0
210
文字コードの話
qnighy
43
16k
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
210
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
96
[SF Ruby Conf 2025] Rails X
palkan
2
800
Become a Pro
speakerdeck
PRO
31
5.8k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
ラッコキーワード サービス紹介資料
rakko
1
2.5M
Ethics towards AI in product and experience design
skipperchong
2
210
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
New Earth Scene 8
popppiees
1
1.7k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Transcript
© 2025 ANDPAD All Rights Reserved. 1 Goコードベースの構成とAIコンテキスト定義 奥村 雅敏
© 2025 ANDPAD All Rights Reserved. Confidential 2021年に自動車業界からSWEに転身 2024年 アンドパッド入社
アンドパッドでは請求管理プロダクトでバックエンド開発に従事 奥村 雅敏 株式会社アンドパッド 開発本部 Profile | 経 歴 2 自己紹介
© 2025 ANDPAD All Rights Reserved. Confidential テスト 3 開発でのAI活用
機能実装 リファクタリング ドキュメント作成・要約
© 2025 ANDPAD All Rights Reserved. Confidential 4 AIに対してプロジェクトの内容を伝える難しさ AIには背景情報を理解した上で回答してほしい
• 一般的なことではなくプロジェクト固有の文脈を理解してほしい • 質問のたび同じことを説明する手間 ➢ ドメイン知識 ➢ プロジェクトの構成 ➢ コーディングルール AIに伝わりやすくするための試みと知見を共有します
© 2025 ANDPAD All Rights Reserved. Confidential 5 AIにプロジェクトを伝える工夫 〜コンテキストを書く〜
複数のAIツールが共通して参照できるコンテキストを1箇所で管理する チームの開発環境では複数のAIツールを使っている Github上での自動レビュー Github Copilot AI統合エディタ Cursor / Claude Code MCP連携 Gemini 共通コンテキスト
© 2025 ANDPAD All Rights Reserved. Confidential • ディレクトリ構造の詳細 ◦
ツリー形式で構造を説明 + 各層の詳細を説明 ▪ 各層の責務と役割 • 依存関係のルール • 何を書くのかだけでなく、何を書いてはいけないのか • テストのガイドライン ◦ どのようにテストを書くのか ◦ お手本にするファイルを示す 6 共通コンテキストに書くこと①
© 2025 ANDPAD All Rights Reserved. Confidential 7 共通コンテキストに書くこと② •
実行してほしいコマンドを明確に書く ◦ AIが書いたものはAIでLintやテストをしてほしい ◦ 環境依存のコマンドをシームレスに実行 ▪ 環境変数などの設定も含めて一括で実行してもらう • 指定していても環境変数をうまく設定できないことが良くある ◦ 使ってほしいコマンドを使ってくれない時が良くある ▪ “RECOMMENDED”や「頻繁に使用」といった脚注を追記すると 従ってくれやすくなる様子
© 2025 ANDPAD All Rights Reserved. Confidential 8 共通コンテキストに書くこと③ •
技術スタックや使用技術 ◦ 使用言語 / インフラ / DB ◦ 全体像の把握に役立ちそう ▪ 人間が最初に見るような場所はAI向けにも有効そう • 外部ライブラリ使用のガイドライン ◦ AIは一般的なライブラリを引っ張ってきてしまいがち • 関連リポジトリ・周辺サービス・監視体制 ◦ 一応記述。影響するかも?
© 2025 ANDPAD All Rights Reserved. Confidential 詳細なREADMEを書く感覚 • チームにジョインした新メンバーのために、
丁寧に文書を残すように伝える • 細かいことでも書けることは書く 9 共通コンテキストを書く
© 2025 ANDPAD All Rights Reserved. Confidential とは言え、 AIにプロジェクト固有のルールを 毎回把握してもらい、
適切な出力をしてもらうのは難しい 10 AIに歩み寄った実装をする
© 2025 ANDPAD All Rights Reserved. Confidential 特にクリーンアーキテクチャはAIと相性が良さそう • 広く認知されているため、AIとしても学習データが多そう
• どこに何を書くのかが的確 • 各層が独立しているため、層のルールに従えば適切なコードを書ける ◦ AIがプロジェクト全体を把握する必要が無い ◦ コンテキストを理解していなくても、ある程度正確に出力される 11 歩み寄る工夫①: 一般論に合わせる 一般的なアプリケーションアーキテクチャにこちらから寄せに行く
© 2025 ANDPAD All Rights Reserved. Confidential Goならではのメリット • コードスタイルが揺れない
• 制御フローが分かりやすい • 構造体に余計な機能がついていない ◦ 継承がない ◦ コンストラクタ・デストラクタがない • Goのインターフェースは依存関係が明確になるので積極的に使いたい 挙動が予測しやすいので、AIにも読みやすい言語と言える 12 歩み寄る工夫②: Go言語の「予測しやすさ」を活かす
© 2025 ANDPAD All Rights Reserved. Confidential • 値オブジェクトを使う ◦
Goなら型定義・型エイリアスを使う ◦ プリミティブ型の意図が分かりやすくなる ◦ Goだと変数名を省略しがちなので、より分かりやすさが 増すかも ◦ 感覚としてかなり有効なので、置き換えを進めている ▪ 一つパターンを用意すれば、 同じ様な置き換えは結構正確にやっていくれる 13 歩み寄る工夫②: Go言語の「予測しやすさ」を活かす
© 2025 ANDPAD All Rights Reserved. Confidential 1 まとめ: AIとの協業は「対話」と「設計」で
1. AIに「教える」 AIをチームの新メンバーと捉え、 詳細なREADMEを書くように プロジェクトを伝える 2. AIに「歩み寄る」 AIが理解しやすいように、 予測可能で責務が明確な コードベースを設計する AIとのスムーズな協業
© 2025 ANDPAD All Rights Reserved. Confidential 既存のパターンに沿った実装を正確に生成はしてくれるが、 ゼロから新しい機能を完全に自動生成するのは難しい。 設計の判断が必要な部分は人間が介入する必要がある。
15 AIと共に開発を進める中での課題 ゼロからの実装は難しい
© 2025 ANDPAD All Rights Reserved. Confidential コーディング規約は定めていても、 細かい部分は見落としてしまう。 Lintツールとの併用が必要
16 AIと共に開発を進める中での課題 AgentモードとPlanモードなどの違 いが明確に分かっていない 各種モードの 使い分けができていない 細部の記法は 見落としがち
© 2025 ANDPAD All Rights Reserved. Confidential 17 ご清聴ありがとうございました