Slide 1

Slide 1 text

Gunosyͷ஍ຯͰߴ଎ͳ ৽نࣄۀ։ൃɾվળͷ࣮ࡍ @__timakin__ / Forkwell Meetup#5

Slide 2

Slide 2 text

ࣗݾ঺հ • Seiji Takahashi • Github: timakin / Twitter: @__timakin__ • גࣜձࣾGunosy ৽نࣄۀ։ൃࣨ • Go / Swift

Slide 3

Slide 3 text

ΞδΣϯμ • Gunosy৽نࣄۀ։ൃࣨͱ͸ʁ • ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ

Slide 4

Slide 4 text

Gunosy৽نࣄۀ։ൃࣨͱ͸ʁ

Slide 5

Slide 5 text

Gunosyͷ5ʙ10೥ޙͷ੒௕Λ࡞Δ΂͘ɺ VR΍ARɺԻ੠UIͳͲࠓޙීٴ͢ΔՄೳੑͷ͋Δ
 ৽͍͠σόΠε΍ٕज़Λݚڀ͠ɺ
 ৽نαʔϏεͷ্ཱͪ͛ͳͲΛߦ͏෦ॺ

Slide 6

Slide 6 text

΍Δ͜ͱ • Ϧαʔν • ւ֎ͷઌਐࣄྫͷ·ͱΊ • SDKͷެࣜDocs΍Github repoͷίʔυΛړͬͯ࠷৽ٕ ज़ͷνϡʔτϦɾԠ༻ྫΛ୳Δ • SlackʹRSS௨஌ɺϨϙʔτڞ༗ • ։ൃ • ͓ன͍ͭͰʹνϡʔτϦϋοΧιϯ • ্ཱ͕ͪΓظ͸ۃྗখن໛νʔϜͰ

Slide 7

Slide 7 text

࣮ࡍͷ༷ࢠ

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ

Slide 10

Slide 10 text

ͦ΋ͦ΋ੜ࢈ੑͱ͸ʁ

Slide 11

Slide 11 text

ੜ࢈ੑ = Output / Input

Slide 12

Slide 12 text

౤ࢿޮ཰ੑͰ͋ͬͯ
 ੜ࢈(Output)૯ྔͰ͸ͳ͍

Slide 13

Slide 13 text

Output: ࿑ಇʹΑΔ੒Ռ • Ϣʔβʔ΁ͷ෇ՃՁ஋
 • اۀͷܦࡁత෇ՃՁ஋ʢརӹʣ
 • ଈ࠲ʹརӹʹ௚݁͠ͳ͍͕
 ओཁKPIʹߩݙ͢ΔऔΓ૊Έ

Slide 14

Slide 14 text

Input: ࢿݯͷ౤ೖྔ • ਓతࢿݯͷ౤ೖྔ • ্هؚΉࢿݯ΁ͷࡒݯͷ౤ೖྔ • ࡞ۀ࣌ؒ

Slide 15

Slide 15 text

ੜ࢈ੑΛ্͛Δํ๏ OutputΛ૿΍͢ InputΛݮΒ͢

Slide 16

Slide 16 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 17

Slide 17 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 18

Slide 18 text

νʔϜن໛ͷ཈੍ • Ϧαʔν • جຊ͸։ൃνʔϜ • ࣄۀ෦શମͰɺଞͷνʔϜ͔Β΋ڵຯ͋Δਓ΋Slackͳ ͲͰίϝϯτ • ։ൃ • ։ൃɺ࢓༷ࡦఆશମΛΤϯδχΞ2, 3໊Ͱߦ͏

Slide 19

Slide 19 text

νʔϜ͕গͳ͍ͱɺ
 ࡞ۀ޻਺ / ਓ͕๲ΒΜͰ
 ਏ͍ݱ৔ʹͳΔͷͰ͸ʁ

Slide 20

Slide 20 text

ͦ͏Ͱ΋ͳ͍Ͱ͢Αʂ

Slide 21

Slide 21 text

খن໛νʔϜͷϝϦσϝ • ҙࢥܾఆ଎౓͕୯७ʹ্ ͕Δ • Ϗδϣϯͷޡ͕ࠩগͳ͘ ͯ͢Ή • ਐḿ֬ೝʹཁ͢Δ͕࣌ؒ গͳ͍ • গ਺Ͱ৐Γ੾Δ੍໿
 => ҙࣝతʹແବͳ։ൃ Λ͠ͳ͘ͳΔ ϝϦοτ σϝϦοτ • ୯७ʹ࣮૷Մೳͳػೳͷ ਺͕ݮΔ • ٕज़ελοΫ͕ภΔͱΧ όʔࠔ೉ • ࢓༷࡟ݮͷ౒ྗΛ੯͠Ή ͱࣦഊ͠΍͍͢

Slide 22

Slide 22 text

খن໛νʔϜͷϝϦσϝ • ҙࢥܾఆ଎౓͕୯७ʹ্ ͕Δ • Ϗδϣϯͷޡ͕ࠩগͳ͘ ͯ͢Ή • ਐḿ֬ೝʹཁ͢Δ͕࣌ؒ গͳ͍ • গ਺Ͱ৐Γ੾Δ੍໿
 => ҙࣝతʹແବͳ։ൃ Λ͠ͳ͘ͳΔ ϝϦοτ σϝϦοτ • ୯७ʹ࣮૷Մೳͳػೳͷ ਺͕ݮΔ • ٕज़ελοΫ͕ภΔͱΧ όʔࠔ೉ • ࢓༷࡟ݮͷ౒ྗΛ੯͠Ή ͱࣦഊ͠΍͍͢

Slide 23

Slide 23 text

ࠓඞཁͳ΋ͷΛݟۃΊͯ ༰ࣻແ͘ྔΛݮΒ͢ ͕ॏཁ

Slide 24

Slide 24 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 25

Slide 25 text

։ൃظؒͱ࢓༷ͷ཈੍ ෆཁͳػೳΛॳظ࢓༷͔Β࡟Δج४ 1. ΞϓϦͷίϯηϓτΛ࠷খݶͷൣғͰݕূ͢Δͷʹඞཁ ͔ 2. ਺ඦສDAUʹεέʔϧ͢Δମ੍͕੔͏͔ 3. ෼ੳɾӡ༻ɾվળͷϑϩʔΛ଺Γͳ͘౿ΉͨΊͷػೳ͕ ἧ͍ͬͯΔ͔

Slide 26

Slide 26 text

࢓༷Λ࡟Δͱྑ͍͜ͱ • ίϯϙʔωϯτؒͷ඼࣭͕ۉҰʹͳͬͯɺ ϦϦʔε࣌఺Ͱͷૈ͕ݮΔ • ׬੒஍఺͕໌ྎʹͳΔͷͰϞνϕͷ௿Լ͕ গͳ͘ͳΔ • ୯७ʹૣ͘ؼΕΔ

Slide 27

Slide 27 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 28

Slide 28 text

֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு ৽نࣄۀ։ൃࣨͷجຊελϯε ෯޿͍։ൃՄೳൣғ ࣄۀ࡞ΓʹϑΥʔΧε

Slide 29

Slide 29 text

෯޿͍։ൃՄೳൣғ ❌ ઙ͘޿͘ ઈରʹTܕਓࡐɺΠܕਓࡐͰߏ੒͢Δɻ ex) iOS͕ಘҙͰɺͦͷ෼໺Ͱ͸ଞͷਓͷഒͷ
 ɹ ੜ࢈ੑΛग़ͤΔ͕ɺ͍͟ͱͳͬͨΒ
 ɹ αʔόʔαΠυ΋ରԠՄೳͰڵຯ΋͋Δɻ

Slide 30

Slide 30 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 31

Slide 31 text

খ͍͞νʔϜͰͷ࣮૷ελϯε ۪௚ʹҰ͔Β࣮૷ͯͨ͠Βؒʹ߹Θͳ͍ => ࣗಈԽͰ͖Δ࡞ۀ͸పఈͯ͠ޮ཰Խ

Slide 32

Slide 32 text

۩ମతͳվળϙΠϯτ • AWS OpsworksʹΑΔηοτΞοϓ • codenize-toolsʹΑΔInfrastructure as Code • DigdagʹΑΔETL Workflow • CircleCI 2.0ʹΑΔtest, vet, deploy • Pushج൫ͳͲ͸OSSͷAPIΛར༻

Slide 33

Slide 33 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 34

Slide 34 text

ΠϯηϓγϣϯσοΩͱ͸ʁ ϓϩδΣΫτͷશମ૾
 (໨తɺഎܠɺ༏ઌॱҐɺํ޲ੑ౳)Λ
 ୺తʹ఻͑ΔͨΊͷυΩϡϝϯτ ֎޲͚ͷҙٛ: ୺తʹϓϩμΫτΛઆ໌Ͱ͖Δ ಺޲͚ͷҙٛ: Ϗδϣϯͷ౷Ұ

Slide 35

Slide 35 text

੔ཧ͢Δ߲໨ • ϓϩμΫτͷҙٛ(ͳͥզʑ͸͜͜ʹ͍Δͷ͔) • ΤϨϕʔλʔϐον༻ͷจݴ • ΍Δ/΍Βͳ͍͜ͱϦετ • νʔϜߏ੒ • ໨ඪKPIͱୡ੒ظؒ • είʔϓ, ༧ࢉ, ࣌ؒ, ඼࣭ͳͲͷ΢ΣΠτ • ࣮ࡍʹඞཁͳࢿݯ

Slide 36

Slide 36 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 37

Slide 37 text

KPT Keep: ࠓޙଓ͚͍ͯ͘΂͖ྑ͔ͬͨ͜ͱ Problem: վળ͢΂͖໰୊ Try: վળࢪࡦ΍৽ࢪࡦͱͯ͠ࢼ͢͜ͱ Λఆظత(݄Ұఔ౓)ʹ֬ೝ

Slide 38

Slide 38 text

εϓϦϯτ͝ͱͷҙࣝ߹Θͤ ࠓͷSprintͰूத͢΂͖͜ͱ ɹ࠷ॏཁKPIͷݟ௚͠ɺ໨ඪ஋ͷઃఆ εέδϡʔϧ ɹϦϦʔε༧ఆ೔ͱଧͪख ࠔΓ͝ͱ ɹ͙͢ରॲ͢Δ͔͸ஔ͍ͱ͍ͯ΍Δ΂͖͜ͱ

Slide 39

Slide 39 text

ੜ࢈ੑΛ্͛ΔͨΊͷऔΓ૊Έ • νʔϜن໛ͷ཈੍ • ։ൃظؒͱ࢓༷ͷ཈੍ • ֤ΤϯδχΞͷ୲౰෼໺ͷ֦ு • ։ൃϑϩʔͷࣗಈԽ • ΠϯηϓγϣϯσοΩ • εϓϦϯτ • ੵۃతͳKPIڞ༗

Slide 40

Slide 40 text

਺஋ڞ༗ͯ͠·͔͢ʁ ڞ༗ํ๏ • Slack • ຖ೔ͷேձ • Sprint͝ͱͷৼΓฦΓ ͳͲͳͲ

Slide 41

Slide 41 text

ͳͥ਺஋ڞ༗͢΂͖͔ʁ ਺ࣈ͸ਆΑΓਖ਼͍͠ Ϗδϣϯ͸νʔϜΛޑ෣͢Δͷʹྑ͍͕ɺ
 ਺ࣈͱ͍͏ࣄ࣮͔Β໨Λഎ͚ͯ
 ݴ͍༁ʹ࢖͍ͬͯͳ͍͔ʁ
 
 ࣮ࡍͷϢʔβʔͷಈ͖Λݟͯɺ
 ҙຯͷ͋Δվળํ޲ΛݟۃΊΔ

Slide 42

Slide 42 text

ͳͥ਺஋ڞ༗͢΂͖͔ʁ KPIʹޮ͔ͳ͍ࢪࡦΛଧ͍ͬͯͳ͍͔ʁ
 ࣮ࡍͷϢʔβʔͷಈ͖Λݟͯɺ
 ҙຯͷ͋Δվળํ޲ΛݟۃΊΔ

Slide 43

Slide 43 text

ͳͥৗʹ਺஋ڞ༗͢΂͖͔ʁ ཧ૝ͱݱ࣮͸༰қʹͣΕΔ ͷͰɺ͍ͭͷ·ʹ͔ζϨ͕ੜ͡ͳ͍Α͏ʹৗʹ਺ࣈΛݟͯɺ
 
 ɾKPIͱͷࠩ෼
 ɾ૿ݮ܏޲, पظ
 ɾ௕ظతʹҙຯ͕͋ΔࢪࡦΛଧ͍ͯͯΔ͔
 
 ͷೝࣝ߹ΘͤΛ͢Δɻ

Slide 44

Slide 44 text

ͲΜͳ਺஋Λڞ༗͢΂͖͔ʁ • ୹ظɾ௕ظܧଓ཰ • ίϯόʔδϣϯ཰ • ܧଓ཰ʹޮ͖΍͍͢ػೳͷར༻཰ • PushڐՄ཰, ։෧཰ • ABࢪࡦͷޮՌܭଌ݁Ռ • Ϣʔβʔ֫ಘܦ࿏ผ֫ಘ਺ɾܧଓ཰ • ޿ࠂޮՌ(CTR, CPI, CPD, etc…)

Slide 45

Slide 45 text

·ͱΊ • ੜ࢈ੑ = Output / Input • νʔϜߏ੒ɺKPIڞ༗ɺ࢓༷ͷμΠΤοτɺ
 Ϗδϣϯ߹ΘͤɺࣗಈԽͳͲͳͲɺ
 ΍ΕΔ͜ͱΛ஍ຯʹɺॗʑͱɻ • શͯ৽نνʔϜͰ΍ΕͯΔ͜ͱɻ
 Ϧιʔεͷ͋Δେن໛νʔϜͳΒঘߋ΍Δ΂͖ɻ