Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
【iOSエンジニア特集】 iOSアプリ開発の裏側 開発組織が向き合う課題とこれから - 株式会...
Search
Akifumi Fukaya
May 20, 2025
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【iOSエンジニア特集】 iOSアプリ開発の裏側 開発組織が向き合う課題とこれから - 株式会社カウシェ
Akifumi Fukaya
May 20, 2025
More Decks by Akifumi Fukaya
See All by Akifumi Fukaya
LT: KaucheMockKit 導入した話
akifumifukaya
0
190
20220713-kauche-techtalk-lt
akifumifukaya
0
410
iOSDC21
akifumifukaya
7
10k
MVVM with Combine
akifumifukaya
2
840
MVVM with Combine in SwiftUI
akifumifukaya
6
2.4k
MVVM overview
akifumifukaya
5
1.3k
UIViewController in XIB + IBDesignable
akifumifukaya
2
4k
Other Decks in Technology
See All in Technology
ログラスのマルチプロダクトを 支える認証基盤 〜テナントごとに異なる統制とどう向き合うか〜
dada4386
2
190
【ゲームメーカーズスクランブル2026】『Shadowverse: Worlds Beyond』UIとアニメーションで実現する最高のユーザー体験を叶えるプロトタイピング
cygames
PRO
1
700
OpenClawでAzure DevOpsのWiki更新を自動化する - クラウドAIだけでは届かない場所へ
yutakaosada
0
130
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
Amazon Bedrock Agents ClassicからAmazon Bedrock AgentCoreへ移行した際、ガードレール設定が2箇所に割れた話
matsunobu
0
160
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
110
The kernel report
ennael
PRO
1
130
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
220
なぜAI任せのゲームは面白くならないのか?
hirohasuyoutube
0
290
行動するAIのためのオントロジー | DevRev — Encraft #26.pdf
dvrv_tknrszk
1
590
Claude起点の仕様駆動開発
tanakaseiya
0
110
ScotSecure West 2026 - Glasgow
raybugg
0
200
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
250
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
430
Balancing Empowerment & Direction
lara
6
1.3k
From π to Pie charts
rasagy
1
380
Designing for Performance
lara
611
70k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
Typedesign – Prime Four
hannesfritz
42
3.2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8k
Transcript
【iOSエンジニア特集】 iOSアプリ開発の裏側 開発組織が向き合う課題とこれから @akifumi
⾃⼰紹介 • 名前 ◦ 深⾕ 哲史 (Akifumi Fukaya) • 会社
◦ 株式会社カウシェ (2020/07 ~ ) • 役割 ◦ Engineering Manager (Mobile) • アカウント ◦ X: @akifumifukaya ◦ Facebook: fukaya.akifumi ◦ YOUTRUST: akifumi ◦ GitHub: akifumi
会社紹介
プロダクト 野菜がもらえる お買い物アプリ
開発体制
開発体制
開発体制
技術スタック
技術スタック 開発言語 Swift, Kotlin, Go アーキテクチャ MVVM, Clean Architecture UIフレームワーク
SwiftUI, Jetpack Compose インフラ Google Cloud 構成管理 Terraform 分析基盤 BigQuery モニタリング Firebase Crashlytics, Firebase Monitoring, Cloud Monitoring, Cloud Trace CI/CD Bitrise, GitHub Actions 開発ツール Notion, Slack, GitHub デザイン Figma Cloud Run Pub/Sub Cloud Spanner Firestore Cloud Storage Cloud Load Balancing BigQuery Cloud Logging Cloud Monitoring Cloud Scheduler Trace
アプリ構成 • 全体アーキテクチャ ◦ MVVM ◦ マルチモジュール ▪ XcodeGen &
SPM (徐々に移⾏中) ◦ SwiftUI をメインで利⽤
課題
課題 • レガシーコード改善 • 技術的な開発⽣産性アップ • 組織的な開発⽣産性アップ
課題① レガシーコード改善
課題①:レガシーコード改善 課題感 • 2020年9⽉ カウシェ v1.0.0 リリースしてから4年半が経過 ◦ リリース当初から SwiftUI
を採⽤しているが、アップデートの追従が⼤変 • アーキテクチャやパッケージ構成はレガシー化 ◦ SwiftUI + MVVM + XcodeGen • 上記の改善に取り組みやすいアーキテクチャの⼟壌作り ◦ 新しい技術の採⽤ ◦ 細かく改善していける ◦ 将来、新しいアーキテクチャなどを導⼊しやすい環境
課題①:レガシーコード改善 解決策:開発と平⾏してレガシーコードを改善できる⼟壌をつくる • レイヤー構成の変更 ◦ Domain, Data, Presentation, Shared レイヤーを作成
• ディレクトリ構成の変更 ◦ Packages ディレクトリを作成し、上記レイヤーを配置 • Swift Package Manager モジュール設計 ◦ モジュール依存管理を XcodeGen → SPM に徐々に移⾏
課題② 技術的な開発⽣産性アップ
課題②:技術的な開発⽣産性アップ 課題感 • ⽣成AIが⽬覚ましい進化を遂げている • 少⼈数でも、より「多くの施策」をより「早いスピード」で開発したい • ⽇々の開発業務でAIを活⽤することにより、⽣産性をさらに⾼い状態へ
課題②:技術的な開発効率性アップ 解決策:積極的なAI活⽤ • 少⼈数でより⽣産性の⾼い状態にするべく、 AI を活⽤した開発スタイルへとシフト • Mobile Engineer 全員で
Cline を利⽤ • AI 活⽤度をデイリーでモニタリング‧向上 • ノウハウを蓄積して共有
課題③ 組織的な開発⽣産性アップ
課題③:組織的な開発⽣産性アップ 課題感 • 現在のモバイルアプリ開発体制は2チーム‧2名ずつの少⼈数体制 • スタートアップであり、今後も少⼈数での開発体制を維持する • とはいえ、中⻑期的には作りたいものが増える • 少⼈数体制で開発⽣産性を向上する必要あり
課題③:組織的な開発⽣産性アップ 解決策:両OS 開発を促進する基盤づくり • 両OS 開発 ◦ iOS Engineer /
Android Engineer が両OS開発できる体制を構築 ◦ 領域を超えた相互レビュー体制 ◦ Cline を活⽤し、両OSの開発を促進 • Monorepo 化 ◦ コードの共有、AI コンテキスト‧ノウハウの共有、PRレビュー‧スイッチングコスト減少 • 組織的な技術⼒向上 ◦ オンボーディングタスク‧勉強会などを実施し、開発知識を増やしていく
今後の展望
• アーキテクチャ改善 ◦ 新しいアーキテクチャ導⼊‧パッケージ構成の変更 • AI 活⽤の加速化 ◦ AI ×
クロスプラットフォーム開発 模索 ▪ AI 活⽤した iOS/Android 開発を加速するために、Monorepo 化を選択 ▪ コードベース統合‧AI ルール整備‧フォーマット整備などにより、両OS 同時開発を模索 ◦ mcp server 連携 ▪ Figma/Notion/Slack mcp → App コード開発 • 品質保証の⾃動化 ◦ UI ⾃動テストによる品質向上 今後の展望
Thank you.