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
4 Years Startup & Architecture
Search
Motohiro Takayama
July 14, 2017
Technology
3
1k
4 Years Startup & Architecture
Case study for architecture changes in startup company
Motohiro Takayama
July 14, 2017
Tweet
Share
More Decks by Motohiro Takayama
See All by Motohiro Takayama
High 意識 Android - Mercari Day
mootoh
14
16k
近未来的並列 LL
mootoh
1
290
Other Decks in Technology
See All in Technology
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
430
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
3
200
The Rise of LLMOps
asei
7
1.5k
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
600
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
590
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
For a Future-Friendly Web
brad_frost
175
9.4k
The World Runs on Bad Software
bkeepers
PRO
65
11k
GitHub's CSS Performance
jonrohan
1030
460k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Transcript
4 Years Startup & Architecture @mootoh
None
https://commons.wikimedia.org/wiki/File:Evolution-des-wissens.jpg Evolution
Evolution - Product ! ! " #
Evolution - Organization https://pixabay.com/ja/photos/military%20men/ https://pixabay.com/ja/%E8%88%B9%E5%93%A1-%E7%B7%8F%E5%93%A1-%E6%B5%B7%E8%BB%8D-%E8%BB%8D%E4%BA%8B-%E4%BA%BA-%E3 %E7%94%B7%E6%80%A7-%E5%A5%B3%E6%80%A7-%E7%BE%A4%E8%A1%86-903044/ Future Now
Evolution - Scale • Product • Γ͍ͨ͜ͱ૿͑Δ • Organization •
Γ͍ͨ͜ͱ͕Ұഋ → ਓҰഋ͍Δ
Architecture Changes https://commons.wikimedia.org/wiki/File:Fachada_del_Nacimiento_-_Templo_de_la_Sagrada_Fam%C3%ADlia,_Barcelona_3.jpg
Phase 1 https://commons.wikimedia.org/wiki/File:Sleeping_baby_cat.jpg
0 → 1 • 5 months old • 2~3 engineers
• Startup!
Problem to Solve • Deliver MVP FAST to survive
Architecture https://pixabay.com/ja/%E5%B0%8F%E5%B1%8B-%E4%B8%B8%E5%A4%AA%E5%B0%8F%E5%B1%8B-%E7%B4%8D%E5%B1%8B-heustadel-%E9%A2%A8%E6%99%AF- %E8%87%AA%E7%84%B6-%E8%8D%89-792305/
Architecture for 0→1 • MVA for MVP • DIY tiny
architecture • &Not so huge Activity, reasonably small • Tightly coupled networking/model/view
Phase 2 https://pixabay.com/ja/%E6%A4%8D%E6%9C%A8%E9%89%A2-%E6%88%90%E9%95%B7-%E8%91%89-%E6%A4%8D%E7%89%A9-148267/
Growing Up • 1~3 years old • 2~5 engineers •
(Original Members Gone (to other projects)
Problem to Solve • Growth ↗↗↗ • Product requirements increased
↗ • A/B testing → code complexity ↗ • +"
Architecture https://ja.wikipedia.org/wiki/%E4%B9%9D%E9%BE%8D%E5%9F%8E%E7%A0%A6#/media/File:Kowloon_Walled_City_199
Architecture • Built on top of Phase 1 architecture •
૿ங/վங
Problems • Τϯτϩϐʔͷ૿େ • Classes Getting bigger • ͍ΖΜͳ design
pattern ͕ࠞࡏ • Getting harder to change • Hard for new members • ➡ ౷Ұ Architecture χʔζͷߴ·Γ
Phase 3 https://commons.wikimedia.org/wiki/File:Northeast_View_in_the_East_Room_during_the_White_House_Renovation-06-21-1951.jpeg
Refactoring+ • ঃʑʹҰ෦ʹϞμϯͳςΫϊϩδʔΛಋೖ • okhttp/RxJava/DI • MVVM • Started off
with networking layer • ੜଘڝ૪
Phase 4 https://commons.wikimedia.org/wiki/File:Big-bang-explosion-2.jpg
Fork by Region • Problem to Solve • Region ಠࣗͷ
UI, ࢪࡦΛ࣮͘͢ • ࣌ࠩͷ͋ΔίʔυϨϏϡʔΛ͠ͳ͍
" • +Complete rewrite • MVVM + (Service, Repository) •
ͱͯϞμϯ
!,# • ·ͩڞ௨ Architecture • based on Phase 3 •
৽ن࣮ MVVM+Rx+DI
http://www.picserver.org/f/future.html
Future • Problem to Solve • Scale: Product / Organization
Architecture https://commons.wikimedia.org/wiki/File:CAPSULE_HOTEL,_TOKYO.jpg
Architecture - • Component based • Project, ਓ͕૿͑ͯ conflict ͠ͳ͍ɺׯব͠ͳ͍
• Project ͝ͱʹ Component ͕͋ΔΠϝʔδ • Uber RIB ؾʹͳ͍ͬͯΔ • VIPER base, Android / iOS ڞ௨
͓ΘΓʹ • Startup ʹ࠷దͳ Architecture: phase ͰҟͳΔ • Scale to
Product / Organization • ·ͩ࠷దղͳ͍ → ݟ͚ͭΑ͏ • We are hiring
None