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
ACES Meet におけるリリース作業改善の取り組み
Search
Masashi Fukuzawa
October 02, 2024
Programming
0
340
ACES Meet におけるリリース作業改善の取り組み
Presenting at the following event on October 2, 2024
https://cybozu.connpass.com/event/328524/
Masashi Fukuzawa
October 02, 2024
Tweet
Share
More Decks by Masashi Fukuzawa
See All by Masashi Fukuzawa
ACES Meet の「2025年」を振り返る
fukucheee
0
51
Other Decks in Programming
See All in Programming
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
650
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
160
GoLab2025 Recap
kuro_kurorrr
0
3.7k
GISエンジニアから見たLINKSデータ
nokonoko1203
0
190
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
630
Vibe codingでおすすめの言語と開発手法
uyuki234
0
170
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
540
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
4
720
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
410
Patterns of Patterns
denyspoltorak
0
440
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
130
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.6k
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
Producing Creativity
orderedlist
PRO
348
40k
BBQ
matthewcrist
89
10k
A Modern Web Designer's Workflow
chriscoyier
698
190k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
110
The World Runs on Bad Software
bkeepers
PRO
72
12k
Mind Mapping
helmedeiros
PRO
0
47
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
78
Building an army of robots
kneath
306
46k
Transcript
ACES, Inc. AI ソフトウェア事業部 福澤 将史 ACES Meet における リリース作業改善の取り組み
2 CONFIDENTIAL 自己紹介 福澤 将史 Masashi Fukuzawa 所属: 株式会社ACES /
AIソフトウェア事業部 ポジション: サーバーサイドエンジニア / テックリード 出身: 福岡 好きなラーメン屋: 一九ラーメン (粕屋店) その他: 社会人学生としてCSを学び直し中
3 CONFIDENTIAL 会社紹介 / サービス紹介
4 CONFIDENTIAL AI研究と社会実装をリードする東大松尾研究室メンバーを中心に創業。 AIアルゴリズムという独自の視点から事業を創出 東大松尾研AIベンチャー …
5 CONFIDENTIAL 活用が困難だったお客様とのやり取りをデータベース化し、 営業力を強化する活動に活用できる営業支援AIツールです。 ACES Meetとは お客様とのやり取り お客様とのやり取りをDB化・活用する 営業支援AIツール 営業力の強化
DB スキルアップ・育成 商談記録・引継ぎ 勝ちパターン 活用
6 CONFIDENTIAL ACES Meet におけるリリース作業改善の取り組み
7 CONFIDENTIAL ACES Meet はまだプロダクトマーケットフィット (PMF) したとは言えない 高速にリリースを回し、フィードバックをもらう機会を増やすことが重要 前提: ACES
Meet の プロダクト状況について 出典: https://knowledge-bridge.info/marketing/2038/
8 CONFIDENTIAL PMF に向けてリリース頻度を上げていきたいが、リリース前準備が煩雑 リリース頻度が増えるとその分リリース作業に時間が奪われ、開発生産性が低下 リリース作業に関する課題感
9 CONFIDENTIAL 手作業で実施している リリース作業 様々な歴史的経緯で複雑化した運用を簡易化・効率化したいと考え、黄色の ハイライト箇所から改善に取り組み始めた ▪ デプロイ前 - リリース時の注意事項のリストアップ・確認
- PR 一覧の抽出 & 貼り付け => 改善1 - DB マイグレーションの有無 & 対象テーブルのレコード数の確認 => 改善2 - リポジトリ間のリリース順の確認 - AIのモデルアップデートの有無 - etc... ▪ デプロイ - 手動タグ打ち & Push による CI/CD のトリガー => 改善3 - Slack でデプロイ開始報告 => 改善3 ▪ デプロイ後 - リリース内容の共有 => 改善3
10 CONFIDENTIAL ▪ デプロイ前 - リリース時の注意事項のリストアップ・確認 - PR 一覧の抽出 &
貼り付け => 改善1 - DB マイグレーションの有無 & 対象テーブルのレコード数の確認 => 改善2 - リポジトリ間のリリース順の確認 - AIのモデルアップデートの有無 - etc... ▪ デプロイ - 手動タグ打ち & Push による CI/CD のトリガー => 改善3 - Slack でデプロイ開始報告 => 改善3 ▪ デプロイ後 - リリース内容の共有 => 改善3 手作業で実施している リリース作業 様々な歴史的経緯で複雑化した運用を簡易化・効率化したいと考え、黄色の ハイライト箇所から改善に取り組み始めた
11 CONFIDENTIAL 改善1: PR の洗い出し作業の 簡易化 Squash merge を強制 &
デプロイ用の PR を作成する運用に変更することで、リ リース対象を正しく・自動的にリストアップできるようにし、余計な作業を削減 before after
12 CONFIDENTIAL ▪ デプロイ前 - リリース時の注意事項のリストアップ・確認 - PR 一覧の抽出 &
貼り付け => 改善1 - DB マイグレーションの有無 & 対象テーブルのレコード数の確認 => 改善2 - リポジトリ間のリリース順の確認 - AIのモデルアップデートの有無 - etc... ▪ デプロイ - 手動タグ打ち & Push による CI/CD のトリガー => 改善3 - Slack でデプロイ開始報告 => 改善3 ▪ デプロイ後 - リリース内容の共有 => 改善3 手作業で実施している リリース作業 様々な歴史的経緯で複雑化した運用を簡易化・効率化したいと考え、黄色の ハイライト箇所から改善に取り組み始めた
13 CONFIDENTIAL 改善2: DB マイグレーションの 事前検知 元々、ALTER 文実行時のトラブル (*) を未然に防ぐために、変更対象のテーブルの
リストアップおよびデータ容量・レコード数を手動で確認していた デプロイ用 PR 作成時に、アラートコメントが自動生成されるようにした (*) 例えば、MySQL では ALTER 文を実行する時、テーブルのコピーが作られるが、この仕組みを知らずにデータ容量の多いテーブルに ALTER 文を実行してしまうと、 DB のストレージを一時的に枯渇させる危険がある。
14 CONFIDENTIAL 手作業で実施している リリース作業 様々な歴史的経緯で複雑化した運用を簡易化・効率化したいと考え、黄色の ハイライト箇所から改善に取り組み始めた ▪ デプロイ前 - リリース時の注意事項のリストアップ・確認
- PR 一覧の抽出 & 貼り付け => 改善1 - DB マイグレーションの有無 & 対象テーブルのレコード数の確認 => 改善2 - リポジトリ間のリリース順の確認 - AIのモデルアップデートの有無 - etc... ▪ デプロイ - 手動タグ打ち & Push による CI/CD のトリガー => 改善3 - Slack でデプロイ開始報告 => 改善3 ▪ デプロイ後 - リリース内容の共有 => 改善3
15 CONFIDENTIAL 改善3: CI/CD のアップデート デプロイ用 PR が特定のブランチにマージされたらタグ打ち・リリースノート生成・ デプロイ開始通知が実行される GitHub
Actions を実装 これにより、デプロイ自体の簡易化も実現
16 CONFIDENTIAL before / after まとめ リリース作業を簡易化することで作業時間を削減 リリース頻度が上がっても開発生産性を低下させないプロセスにアップデートできた
17 CONFIDENTIAL チームの反応 / 所感 ▪ チームの反応 (Slack / レトロスペクティブ)
▪ 所感 - 今回の改善を通じて、確認作業系は際限なくToDoを増やせるうえ、困ったときにはダブルチェックに逃げやすい性質が あることを改めて感じました。歴史を繰り返さないよう、今後は運用負荷を上げずに課題を解決できるアイデアを出し合 えるチームにしていきたいです。
None
19 CONFIDENTIAL (参考) テーブルのデータ容量・ レコード数を取得するSQL MySQL では information_schema.TABLES から各テーブルのメタデータの 取得が可能