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
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
Go Backends for frontends with GraphQL and gRPC
timakin
6
3.8k
Design Pattern for Image and Text Composition in Go
timakin
5
6.6k
Golang API Testing the HARD way
timakin
13
6.5k
Head First Golang Image Package
timakin
2
10k
React Native Beyond Prototype
timakin
2
1.6k
Performance Optimization on Google AppEngine
timakin
5
6.2k
testcache.pdf
timakin
1
140
How Go cache
timakin
1
74
How Go cache tests
timakin
1
3k
Other Decks in Programming
See All in Programming
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
160
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
750
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
250
Ruby on cygwin 2025-02
fd0
0
140
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
900
Honoとフロントエンドの 型安全性について
yodaka
7
1.2k
SpringBoot3.4の構造化ログ #kanjava
irof
2
990
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
160
sappoRo.R #12 初心者セッション
kosugitti
0
250
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
Featured
See All Featured
Speed Design
sergeychernyshev
27
790
The Invisible Side of Design
smashingmag
299
50k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Making Projects Easy
brettharned
116
6k
It's Worth the Effort
3n
184
28k
KATA
mclloyd
29
14k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Gamification - CAS2011
davidbonilla
80
5.1k
Unsuck your backbone
ammeep
669
57k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
4 Signs Your Business is Dying
shpigford
182
22k
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ڞ༗ɺ༷ͷμΠΤοτɺ Ϗδϣϯ߹ΘͤɺࣗಈԽͳͲͳͲɺ
ΕΔ͜ͱΛຯʹɺॗʑͱɻ • શͯ৽نνʔϜͰΕͯΔ͜ͱɻ Ϧιʔεͷ͋ΔେنνʔϜͳΒঘߋΔ͖ɻ