Slide 1

Slide 1 text

4 Years Startup & Architecture @mootoh

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

https://commons.wikimedia.org/wiki/File:Evolution-des-wissens.jpg Evolution

Slide 4

Slide 4 text

Evolution - Product ! ! " #

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

Evolution - Scale • Product • ΍Γ͍ͨ͜ͱ͸૿͑Δ • Organization • ΍Γ͍ͨ͜ͱ͕Ұഋ → ਓ΋Ұഋ͍Δ

Slide 7

Slide 7 text

Architecture Changes https://commons.wikimedia.org/wiki/File:Fachada_del_Nacimiento_-_Templo_de_la_Sagrada_Fam%C3%ADlia,_Barcelona_3.jpg

Slide 8

Slide 8 text

Phase 1 https://commons.wikimedia.org/wiki/File:Sleeping_baby_cat.jpg

Slide 9

Slide 9 text

0 → 1 • 5 months old • 2~3 engineers • Startup!

Slide 10

Slide 10 text

Problem to Solve • Deliver MVP FAST
 to survive

Slide 11

Slide 11 text

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/

Slide 12

Slide 12 text

Architecture for 0→1 • MVA for MVP • DIY tiny architecture • &Not so huge Activity, reasonably small • Tightly coupled networking/model/view

Slide 13

Slide 13 text

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/

Slide 14

Slide 14 text

Growing Up • 1~3 years old • 2~5 engineers • (Original Members Gone (to other projects)

Slide 15

Slide 15 text

Problem to Solve • Growth ↗↗↗ • Product requirements increased ↗ • A/B testing → code complexity ↗ • +"

Slide 16

Slide 16 text

Architecture https://ja.wikipedia.org/wiki/%E4%B9%9D%E9%BE%8D%E5%9F%8E%E7%A0%A6#/media/File:Kowloon_Walled_City_199

Slide 17

Slide 17 text

Architecture • Built on top of Phase 1 architecture • ૿ங/վங

Slide 18

Slide 18 text

Problems • Τϯτϩϐʔͷ૿େ • Classes Getting bigger • ͍ΖΜͳ design pattern ͕ࠞࡏ • Getting harder to change • Hard for new members • ➡ ౷Ұ Architecture χʔζͷߴ·Γ

Slide 19

Slide 19 text

Phase 3 https://commons.wikimedia.org/wiki/File:Northeast_View_in_the_East_Room_during_the_White_House_Renovation-06-21-1951.jpeg

Slide 20

Slide 20 text

Refactoring+ • ঃʑʹҰ෦ʹϞμϯͳςΫϊϩδʔΛಋೖ • okhttp/RxJava/DI • MVVM • Started off with networking layer • ੜଘڝ૪

Slide 21

Slide 21 text

Phase 4 https://commons.wikimedia.org/wiki/File:Big-bang-explosion-2.jpg

Slide 22

Slide 22 text

Fork by Region • Problem to Solve • Region ಠࣗͷ UI, ࢪࡦΛ͢͹΍࣮͘૷ • ࣌ࠩͷ͋ΔίʔυϨϏϡʔΛ͠ͳ͍

Slide 23

Slide 23 text

" • +Complete rewrite • MVVM + (Service, Repository) • ͱͯ΋Ϟμϯ

Slide 24

Slide 24 text

!,# • ·ͩڞ௨ Architecture • based on Phase 3 • ৽ن࣮૷͸
 MVVM+Rx+DI

Slide 25

Slide 25 text

http://www.picserver.org/f/future.html

Slide 26

Slide 26 text

Future • Problem to Solve • Scale: Product / Organization

Slide 27

Slide 27 text

Architecture https://commons.wikimedia.org/wiki/File:CAPSULE_HOTEL,_TOKYO.jpg

Slide 28

Slide 28 text

Architecture - • Component based • Project, ਓ͕૿͑ͯ΋ conflict ͠ͳ͍ɺׯব͠ͳ͍ • Project ͝ͱʹ Component ͕͋ΔΠϝʔδ • Uber RIB ؾʹͳ͍ͬͯΔ • VIPER base, Android / iOS ڞ௨

Slide 29

Slide 29 text

͓ΘΓʹ • Startup ʹ࠷దͳ Architecture: phase ͰҟͳΔ • Scale to Product / Organization • ·ͩ࠷దղ͸ͳ͍ → ݟ͚ͭΑ͏ • We are hiring

Slide 30

Slide 30 text

No content