Yoshihiro Tanaka
● UPSIDER, Inc.
● Mobile Group / Engineering Manager
● 3 年くらい
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
Agenda
1. Mobile Group の置かれている状況
2. どこに AI を使っているか
3. AI 前の Flutter 開発 / AI 後の世界
4. AI 前の分析 / AI 後の世界
5. AI 前の CI/CD / AI 後の世界
6. まとめ
Slide 7
Slide 7 text
Mobile Group の置かれている状況
Slide 8
Slide 8 text
● Mobile といいつつ、複数の app に加え backend, infra の開発、分析など多岐に渡る
○ UPSIDER
○ PRESIDENT CARD
○ 今後は White label apps も展開
● Mobile を中⼼とした⼀貫した体験を設計‧展開する group という前提がある
● Before
○ Generator で API クライアントを生成するも、
enum など生成結果が Dart から使いづらく、
アプリ側で再定義が必要だった
● After
○ OAS から必要な型と通信コードを推測し、
skill として定義して生成する流れに変更
○ Small start で小さい API 群から段階移行、skill も都度調整
○ 再定義作業から解放、人が読みやすい形で出力できる
○ OAS が不十分だとクラス名などに影響が出るため、設計に時間をかける必要がある
OpenAPI Generator
Slide 14
Slide 14 text
● 例えば、secrets / API key の埋め込み、log への機微情報、deep link / URL scheme の取り扱
い、権限境界など
● How
○ Claude Code で security 観点の observation を走らせる
○ 見つけたものは修正させずにまず task 化
■ 観点 / 該当箇所 / 想定リスクを残す
○ 人が優先度・修正方針を判断したうえで対応
■ PR などで都度行うと diff が混在し正常な判断ができない可能性がある
● AI で気づき、人が判断する
Security risk
Slide 15
Slide 15 text
AI 前の backend,infra 開発 / AI 後の世界
Slide 16
Slide 16 text
● Before
○ Backend
■ Team の知見が溜まっており、各々が実装とレビューを回せていた
○ Infrastructure
■ 前提知識・運用知見が必要で、 infra team に実装自体を任せることも多かった
● After
○ Backend
■ Team がレビューできるところまで育っているので、 AI に多くを任せられる
○ Infrastructure
■ AI と実装することで自 team で実装を完結できる。 専門家のレビューが引き続き最重要
Slide 17
Slide 17 text
● AI は 100 の prompt には 100 以上で返すが、1 の prompt には 100 は返してくれない
● 知見が浅い領域を AI で完結させるのは危険。team の状況を冷静に見極める