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
スタディサプリENGLISH_モバイルチームの技術戦略.pdf
Search
yukiasai
February 05, 2020
Technology
1.9k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
スタディサプリENGLISH_モバイルチームの技術戦略.pdf
yukiasai
February 05, 2020
More Decks by yukiasai
See All by yukiasai
Swift in my home
yukiasai
1
1.1k
家庭内Slack導入までのお話
yukiasai
1
3k
ReactNative+GraphQLでなんか作る
yukiasai
1
1.3k
20170327_fastlane_jp_2.pdf
yukiasai
0
1.8k
コードとIBをつなぐオレオレスタイルシステム
yukiasai
1
1.8k
For nested apps
yukiasai
0
170
Other Decks in Technology
See All in Technology
Omarchy Quattro の日本語設定周り
simosako
2
180
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
200
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
110
range over func 2年間の軌跡 Issue #56413 はGoのエコシステムをどう変えたか
ryujicre8ive
0
190
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
2
1.6k
負債のメタファと2026年 / Debt Metaphor in Agentic Engineering Age 202609 Edition
twada
PRO
5
2.6k
AI時代、データエンジニアが一番おもろい
genshun9
0
600
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
3k
Railsのように考える: See through the Master
snoozer05
PRO
3
850
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
23
15k
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
0
2.6k
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
4
1.7k
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
670
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The Language of Interfaces
destraynor
162
27k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
330
BBQ
matthewcrist
89
10k
Agile that works and the tools we love
rasmusluckow
331
22k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
540
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
58k
Transcript
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 スタディサプリENGLISH モバイルチームの技術戦略 @yukiasai Study Sapuri/Quipper Product Meetup
#4
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 Agenda | 01 02 03 04 05
About me サービスとエンジニア組織の成長 これまでの技術戦略 これからの技術戦略 まとめ 2 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 About me 01 3 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 @yukiasai / 浅井勇樹 4 ➔ Engineering Manager
◆ スタディサプリ ENGLISH モバイルチーム ➔ 2017年3月〜 ◆ iOS Engineer ◆ Project Manager ◆ Engineering Manager スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 サービスとエンジニア組織の成長 01 5 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 サービスの一覧 6 ➔ 2015年 ◆ 日常英会話コース ➔
2017年 ◆ TOEIC®L&R TEST対策コース • パーソナルコーチプラン ◆ 苦手克服トレーニング ➔ 2019年 ◆ 英語4技能コース ◆ ビジネス英語コース ◆ 新日常英会話コース スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 エンジニア組織の成長 7 エンジニア数 約10人 約20人 37人(業務委託含み) -
iOS: 8名 - Android: 6名 - Web Frontend: 5名 - Server: 13名 - SRE: 5名 ➔ 2015年 ◆ 日常英会話コース ➔ 2017年 ◆ TOEIC®L&R TEST対策コース • パーソナルコーチプラン ◆ 苦手克服トレーニング ➔ 2019年 ◆ 英語4技能コース ◆ ビジネス英語コース ◆ 新日常英会話コース スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 これまでの技術戦略 02 8 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 ➔ 2015年 ◆ 日常英会話コース ➔ 2017年 ◆
TOEIC®L&R TEST対策コース • パーソナルコーチプラン ◆ 苦手克服トレーニング ➔ 2019年 ◆ 英語4技能コース ◆ ビジネス英語コース ◆ 新日常英会話コース これまでの技術戦略 9 英語学習の共通基盤(ECP基盤) スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 ECP基盤 10 日常英会話 TOEIC®L&R TEST対策 ビジネス英語 スタディサプリENGLISH
モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 TOEIC ビジネス英語 新日常英会話 ECP基盤 11 Apps ECP基盤
Server ・ ・ ・ ECP基盤 DB 学習コンテンツ 学習履歴 アカウント コースID 課金 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 これまでの技術戦略 12 ➔ ECP基盤 ◆ 英語学習の目的別にサービスを横展開する •
汎用的な英語学習のトレーニングを実装 • アカウント種別、課金体系などが存在 • → 汎用的な設計 ◆ 横展開したサービスを長期運用する • 共通基盤に対してプロダクト改善を実施 • → 変更に強くテスタビリティの高い堅牢な設計 ◆ 事業の拡大を加速する • 必然的に開発組織も拡大 • → チーム開発を強く意識したコードの責務が明確な設計 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 これまでの技術選定 13 ➔ ECP基盤 ◆ 2017年 •
Clean Architecture • iOS: Swift, RxSwift, Swinject, Code for UI, Screenshot tests… • Android: Java, RxJava, Dagger... ◆ 2020年現在 • iOS: iOS 11以降対応 (2 ver), Swift, Xcode (Latest), Color set (xcasset)... • Android: Kotlin化, Jetpack, Re-architecture スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 汎用性、堅牢さを重視 14 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 一方で負債も溜まっていく 15 ➔ 規模の拡大によりメンテナンス性、開発効率が低下している ◆ ビルド時間の増大 ◆
コードでのUI記述が複雑化 ◆ 依存関係の解決が複雑化 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 これからの技術戦略 03 16 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 これからの技術戦略 17 ➔ プロダクト、事業全体としての方向性 ◆ 学習体験の向上、品質の改善、技術負債の解消 ◆
より多くのエンハンス案件を実施していく ◆ 不具合の発生件数を減らしていく ◆ → メンテナンス性、開発効率の高い設計 ➔ モバイルチームの戦略 ◆ Re-Architecture ◆ iOS: Module分割、SwiftUI導入 (Combine導入) ◆ Android: DI改善、Jetpack compose導入 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 ここからiOSの話 18 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 SwiftUI導入 19 ➔ SwiftUIを導入するモチベーション ◆ コード or
xibでのUI実装よりもよりメンテナンス性、開発効率の点で優れて いる ◆ 将来のスタンダードになりえる技術 ➔ 今始めるモチベーション ◆ 2年弱でECP基盤への導入 ◆ 組織としてナレッジを蓄積 ◆ 既存の資産を再利用可能、UIKitとの共存や巻き戻しが容易 ➔ どう進めるか ◆ 小さいところから導入し将来のRe-Architectureの基礎を構築、移行 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 SwiftUI導入 小さく始める 20 ➔ TOEIC®L&R TEST対策コース パーソナルコーチプラン
◆ コーチとチャットや通話 ◆ コーチに日々の学習を報告 ◆ 学習者の学習履歴を共有 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 SwiftUI導入 小さく始める 21 TOEIC®L&R TEST対策 コーチ業務アプリ スタディサプリENGLISH
モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 Module分割〜SwiftUI導入 22 ➔ ECP基盤のModule分割 ◆ API、UIなど再利用可能なものを分割 ◆
機能ごとに分解 ➔ コーチ業務アプリのRe-Architecture、SwiftUI導入 ◆ ECP基盤で分割したModuleを再利用 ◆ UIの記述を再利用可能な形でSwiftUIで実装 ◆ SwiftUIに親和性の高いArchitectureの基礎を構築 ➔ ECP基盤のRe-Architecture、SwiftUI導入(2年弱後) ◆ 機能ごとに移行 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 設計開始、着手中 23 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 メンテナンス性、開発効率の高い 新技術への移行を早期に検討 24 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 まとめ 04 25 スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 まとめ 26 ➔ これまで ◆ ECP基盤を中心に磨き込み、事業拡大に貢献してきた ◆
汎用的、堅牢な設計を優先してきた ➔ これから ◆ 学習体験の向上、品質の向上、技術負債の解消を行っていく ◆ メンテナンス性、開発効率の高いアーキテクチャへ進化させる ◆ 小さく始めて数年かけて移行プランを実行していく ◆ 技術的に面白いことにも取り組める! スタディサプリENGLISH モバイルチームの技術戦略
#sapurimeetup スタディサプリENGLISH モバイルチームの技術戦略 ご清聴ありがとうございました 27 スタディサプリENGLISH モバイルチームの技術戦略