$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gunosyの地味で高速な 新規事業開発・改善の実際 / How to make your t...
Search
Seiji Takahashi
October 14, 2017
Programming
12
16k
Gunosyの地味で高速な 新規事業開発・改善の実際 / How to make your team productive.
The presentation slides at Forkwell Meetup #5
Seiji Takahashi
October 14, 2017
Tweet
Share
More Decks by Seiji Takahashi
See All by Seiji Takahashi
権限と承認 〜ユーザー信頼性に繋がる管理画面の根幹について〜
timakin
0
580
Go Backends for frontends with GraphQL and gRPC
timakin
6
4.1k
Design Pattern for Image and Text Composition in Go
timakin
5
6.7k
Golang API Testing the HARD way
timakin
13
6.8k
Head First Golang Image Package
timakin
2
10k
React Native Beyond Prototype
timakin
2
1.7k
Performance Optimization on Google AppEngine
timakin
5
6.4k
testcache.pdf
timakin
1
170
How Go cache
timakin
1
110
Other Decks in Programming
See All in Programming
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
110
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
150
Building AI with AI
inesmontani
PRO
1
460
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
15
6k
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
250
CSC305 Lecture 17
javiergs
PRO
0
240
データファイルをAWSのDWHサービスに格納する / 20251115jawsug-tochigi
kasacchiful
2
100
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
130
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
310
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
10k
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
530
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
220
Featured
See All Featured
BBQ
matthewcrist
89
9.9k
Practical Orchestrator
shlominoach
190
11k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
How to Ace a Technical Interview
jacobian
280
24k
Speed Design
sergeychernyshev
33
1.3k
Code Review Best Practice
trishagee
73
19k
Music & Morning Musume
bryan
46
7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Agile that works and the tools we love
rasmusluckow
331
21k
Why Our Code Smells
bkeepers
PRO
340
57k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Statistics for Hackers
jakevdp
799
230k
Transcript
GunosyͷຯͰߴͳ ৽نࣄۀ։ൃɾվળͷ࣮ࡍ @__timakin__ / Forkwell Meetup#5
ࣗݾհ • Seiji Takahashi • Github: timakin / Twitter: @__timakin__
• גࣜձࣾGunosy ৽نࣄۀ։ൃࣨ • Go / Swift
ΞδΣϯμ • Gunosy৽نࣄۀ։ൃࣨͱʁ • ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ
Gunosy৽نࣄۀ։ൃࣨͱʁ
Gunosyͷ5ʙ10ޙͷΛ࡞Δ͘ɺ VRARɺԻUIͳͲࠓޙීٴ͢ΔՄೳੑͷ͋Δ ৽͍͠σόΠεٕज़Λݚڀ͠ɺ ৽نαʔϏεͷ্ཱͪ͛ͳͲΛߦ͏෦ॺ
Δ͜ͱ • Ϧαʔν • ւ֎ͷઌਐࣄྫͷ·ͱΊ • SDKͷެࣜDocsGithub repoͷίʔυΛړͬͯ࠷৽ٕ ज़ͷνϡʔτϦɾԠ༻ྫΛ୳Δ •
SlackʹRSS௨ɺϨϙʔτڞ༗ • ։ൃ • ͓ன͍ͭͰʹνϡʔτϦϋοΧιϯ • ্ཱ͕ͪΓظۃྗখنνʔϜͰ
࣮ࡍͷ༷ࢠ
None
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ
ͦͦੜ࢈ੑͱʁ
ੜ࢈ੑ = Output / Input
ࢿޮੑͰ͋ͬͯ ੜ࢈(Output)૯ྔͰͳ͍
Output: ࿑ಇʹΑΔՌ • ϢʔβʔͷՃՁ • اۀͷܦࡁతՃՁʢརӹʣ • ଈ࠲ʹརӹʹ݁͠ͳ͍͕ ओཁKPIʹߩݙ͢ΔऔΓΈ
Input: ࢿݯͷೖྔ • ਓతࢿݯͷೖྔ • ্هؚΉࢿݯͷࡒݯͷೖྔ • ࡞ۀ࣌ؒ
ੜ࢈ੑΛ্͛Δํ๏ OutputΛ૿͢ InputΛݮΒ͢
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
νʔϜنͷ੍ • Ϧαʔν • جຊ։ൃνʔϜ • ࣄۀ෦શମͰɺଞͷνʔϜ͔Βڵຯ͋ΔਓSlackͳ ͲͰίϝϯτ • ։ൃ
• ։ൃɺ༷ࡦఆશମΛΤϯδχΞ2, 3໊Ͱߦ͏
νʔϜ͕গͳ͍ͱɺ ࡞ۀ / ਓ͕ΒΜͰ ਏ͍ݱʹͳΔͷͰʁ
ͦ͏Ͱͳ͍Ͱ͢Αʂ
খنνʔϜͷϝϦσϝ • ҙࢥܾఆ͕୯७ʹ্ ͕Δ • Ϗδϣϯͷޡ͕ࠩগͳ͘ ͯ͢Ή • ਐḿ֬ೝʹཁ͢Δ͕࣌ؒ গͳ͍
• গͰΓΔ੍ => ҙࣝతʹແବͳ։ൃ Λ͠ͳ͘ͳΔ ϝϦοτ σϝϦοτ • ୯७ʹ࣮Մೳͳػೳͷ ͕ݮΔ • ٕज़ελοΫ͕ภΔͱΧ όʔࠔ • ༷ݮͷྗΛ੯͠Ή ͱࣦഊ͍͢͠
খنνʔϜͷϝϦσϝ • ҙࢥܾఆ͕୯७ʹ্ ͕Δ • Ϗδϣϯͷޡ͕ࠩগͳ͘ ͯ͢Ή • ਐḿ֬ೝʹཁ͢Δ͕࣌ؒ গͳ͍
• গͰΓΔ੍ => ҙࣝతʹແବͳ։ൃ Λ͠ͳ͘ͳΔ ϝϦοτ σϝϦοτ • ୯७ʹ࣮Մೳͳػೳͷ ͕ݮΔ • ٕज़ελοΫ͕ภΔͱΧ όʔࠔ • ༷ݮͷྗΛ੯͠Ή ͱࣦഊ͍͢͠
ࠓඞཁͳͷΛݟۃΊͯ ༰ࣻແ͘ྔΛݮΒ͢ ͕ॏཁ
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
։ൃظؒͱ༷ͷ੍ ෆཁͳػೳΛॳظ༷͔ΒΔج४ 1. ΞϓϦͷίϯηϓτΛ࠷খݶͷൣғͰݕূ͢Δͷʹඞཁ ͔ 2. ඦສDAUʹεέʔϧ͢Δମ੍͕͏͔ 3. ੳɾӡ༻ɾվળͷϑϩʔΛΓͳ͘౿ΉͨΊͷػೳ͕ ἧ͍ͬͯΔ͔
༷ΛΔͱྑ͍͜ͱ • ίϯϙʔωϯτؒͷ࣭͕ۉҰʹͳͬͯɺ ϦϦʔε࣌Ͱͷૈ͕ݮΔ • ͕໌ྎʹͳΔͷͰϞνϕͷԼ͕ গͳ͘ͳΔ • ୯७ʹૣ͘ؼΕΔ
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
֤ΤϯδχΞͷ୲ͷ֦ு ৽نࣄۀ։ൃࣨͷجຊελϯε ෯͍։ൃՄೳൣғ ࣄۀ࡞ΓʹϑΥʔΧε
෯͍։ൃՄೳൣғ ❌ ઙ͘͘ ઈରʹTܕਓࡐɺΠܕਓࡐͰߏ͢Δɻ ex) iOS͕ಘҙͰɺͦͷͰଞͷਓͷഒͷ ɹ ੜ࢈ੑΛग़ͤΔ͕ɺ͍͟ͱͳͬͨΒ ɹ αʔόʔαΠυରԠՄೳͰڵຯ͋Δɻ
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
খ͍͞νʔϜͰͷ࣮ελϯε ۪ʹҰ͔Β࣮ͯͨ͠Βؒʹ߹Θͳ͍ => ࣗಈԽͰ͖Δ࡞ۀపఈͯ͠ޮԽ
۩ମతͳվળϙΠϯτ • AWS OpsworksʹΑΔηοτΞοϓ • codenize-toolsʹΑΔInfrastructure as Code • DigdagʹΑΔETL
Workflow • CircleCI 2.0ʹΑΔtest, vet, deploy • Pushج൫ͳͲOSSͷAPIΛར༻
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
ΠϯηϓγϣϯσοΩͱʁ ϓϩδΣΫτͷશମ૾ (తɺഎܠɺ༏ઌॱҐɺํੑ)Λ తʹ͑ΔͨΊͷυΩϡϝϯτ ֎͚ͷҙٛ: తʹϓϩμΫτΛઆ໌Ͱ͖Δ ͚ͷҙٛ: Ϗδϣϯͷ౷Ұ
ཧ͢Δ߲ • ϓϩμΫτͷҙٛ(ͳͥզʑ͜͜ʹ͍Δͷ͔) • ΤϨϕʔλʔϐον༻ͷจݴ • Δ/Βͳ͍͜ͱϦετ • νʔϜߏ •
ඪKPIͱୡظؒ • είʔϓ, ༧ࢉ, ࣌ؒ, ࣭ͳͲͷΣΠτ • ࣮ࡍʹඞཁͳࢿݯ
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
KPT Keep: ࠓޙଓ͚͍͖ͯ͘ྑ͔ͬͨ͜ͱ Problem: վળ͖͢ Try: վળࢪࡦ৽ࢪࡦͱͯ͠ࢼ͢͜ͱ Λఆظత(݄Ұఔ)ʹ֬ೝ
εϓϦϯτ͝ͱͷҙࣝ߹Θͤ ࠓͷSprintͰूத͖͢͜ͱ ɹ࠷ॏཁKPIͷݟ͠ɺඪͷઃఆ εέδϡʔϧ ɹϦϦʔε༧ఆͱଧͪख ࠔΓ͝ͱ ɹ͙͢ରॲ͢Δ͔ஔ͍ͱ͍ͯΔ͖͜ͱ
ੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ • νʔϜنͷ੍ • ։ൃظؒͱ༷ͷ੍ • ֤ΤϯδχΞͷ୲ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ •
ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗
ڞ༗ͯ͠·͔͢ʁ ڞ༗ํ๏ • Slack • ຖͷேձ • Sprint͝ͱͷৼΓฦΓ ͳͲͳͲ
ͳͥڞ༗͖͔͢ʁ ࣈਆΑΓਖ਼͍͠ ϏδϣϯνʔϜΛޑ͢Δͷʹྑ͍͕ɺ ࣈͱ͍͏ࣄ࣮͔ΒΛഎ͚ͯ ݴ͍༁ʹ͍ͬͯͳ͍͔ʁ ࣮ࡍͷϢʔβʔͷಈ͖Λݟͯɺ ҙຯͷ͋ΔվળํΛݟۃΊΔ
ͳͥڞ༗͖͔͢ʁ KPIʹޮ͔ͳ͍ࢪࡦΛଧ͍ͬͯͳ͍͔ʁ ࣮ࡍͷϢʔβʔͷಈ͖Λݟͯɺ ҙຯͷ͋ΔվળํΛݟۃΊΔ
ͳͥৗʹڞ༗͖͔͢ʁ ཧͱݱ࣮༰қʹͣΕΔ ͷͰɺ͍ͭͷ·ʹ͔ζϨ͕ੜ͡ͳ͍Α͏ʹৗʹࣈΛݟͯɺ ɾKPIͱͷࠩ ɾ૿ݮ, पظ ɾظతʹҙຯ͕͋ΔࢪࡦΛଧ͍ͯͯΔ͔ ͷೝࣝ߹ΘͤΛ͢Δɻ
ͲΜͳΛڞ༗͖͔͢ʁ • ظɾظܧଓ • ίϯόʔδϣϯ • ܧଓʹޮ͖͍͢ػೳͷར༻ • PushڐՄ, ։෧
• ABࢪࡦͷޮՌܭଌ݁Ռ • Ϣʔβʔ֫ಘܦ࿏ผ֫ಘɾܧଓ • ࠂޮՌ(CTR, CPI, CPD, etc…)
·ͱΊ • ੜ࢈ੑ = Output / Input • νʔϜߏɺKPIڞ༗ɺ༷ͷμΠΤοτɺ Ϗδϣϯ߹ΘͤɺࣗಈԽͳͲͳͲɺ
ΕΔ͜ͱΛຯʹɺॗʑͱɻ • શͯ৽نνʔϜͰΕͯΔ͜ͱɻ Ϧιʔεͷ͋ΔେنνʔϜͳΒঘߋΔ͖ɻ