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
1.1k
3
Share
4 Years Startup & Architecture
Case study for architecture changes in startup company
Motohiro Takayama
July 14, 2017
More Decks by Motohiro Takayama
See All by Motohiro Takayama
High 意識 Android - Mercari Day
mootoh
14
17k
近未来的並列 LL
mootoh
1
330
Other Decks in Technology
See All in Technology
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
260
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
0
170
AIのために、AIを使った、Effect-TSからの脱却 〜テストを活用した安全なリファクタリングの進め方〜
bitkey
PRO
1
200
最新技術を"今は選ばない"という技術選定
leveragestech
PRO
0
350
Loadbalancing exporter internals
ymotongpoo
1
120
JaSSTに関わることで変わった人生観 #jasstnano
makky_tyuyan
0
170
AIコーディングエージェントの活用で、コードは静かに肥大化した
yosukeshinoda
1
140
続 運用改善、不都合な真実 〜 物理制約のない運用改善はほとんど無価値 / 20260518-ssmjp-kaizen-no-value-without-physical-constraints
opelab
2
310
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.7k
R&D 祭 2024 アニメエフェクト作成の効率化
olmdrd
PRO
0
110
AI時代に求められる思考のパラダイムシフト
nrinetcom
PRO
0
110
コーディングエージェントはTypeScriptの 型エラーをどう自己修正しているのか
melonps
3
270
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
370
Git: the NoSQL Database
bkeepers
PRO
432
67k
Test your architecture with Archunit
thirion
1
2.2k
We Have a Design System, Now What?
morganepeng
55
8.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Design in an AI World
tapps
1
210
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
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