Slide 1

Slide 1 text

࠶ൃ๷ࢭࡦΛߟ͑Δٕज़ @sota1235 PHPΧϯϑΝϨϯε෱Ԭ2018લ໷ࡇϦδΣΫτίϯ 2018/6/15

Slide 2

Slide 2 text

ͪͳڈ೥

Slide 3

Slide 3 text

https://twitter.com/hasegawayosuke/status/873390578678996992

Slide 4

Slide 4 text

ຯΛ઎ΊͨCfP • ࠶ൃ๷ࢭࡦΛߟ͑Δٕज़

Slide 5

Slide 5 text

ຯΛ઎ΊͨCfP • ࠶ൃ๷ࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘΋…

Slide 6

Slide 6 text

ຯΛ઎ΊͨCfP • ࠶ൃ๷ࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘΋… • JavaScriptϢχοτςετͷཧ૝ͱݱ࣮

Slide 7

Slide 7 text

ຯΛ઎ΊͨCfP • ࠶ൃ๷ࢭࡦΛߟ͑Δٕज़ • PHP͡Όͳͯ͘΋… • JavaScriptϢχοτςετͷཧ૝ͱݱ࣮ • JavaScript͸PHPͩͬͨͷ͔

Slide 8

Slide 8 text

͍͢·ͤΜͰͨ͠ ྑ͍ൃද͢Δͧ

Slide 9

Slide 9 text

var_dump($me); • Sota Sugiura(͖ΓΜ) • @sota1235 • Mercari, Inc. • কདྷͷເ͸JavaScriptʹ ͳΔ͜ͱͰ͢

Slide 10

Slide 10 text

ձ৔ɺ੝Γ্͕ͬͯ·͔͢ʁ

Slide 11

Slide 11 text

։ൃɺͯ͠·͔͢ʁ

Slide 12

Slide 12 text

γεςϜো֐ɺى͖ͯ·͔͢ʁ

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

ςʔϚ γεςϜো֐

Slide 15

Slide 15 text

ςʔϚ γεςϜো֐ʹཱͪ޲͔͏࿩

Slide 16

Slide 16 text

ΞδΣϯμ • 1ষ ࠶ߟ γεςϜো֐ͱ͸ • 2ষ γεςϜো֐ʹཱͪ޲͔͏ • 3ষ ࣮ફʂ࠶ൃ๷ࢭࡦ

Slide 17

Slide 17 text

1ষ ࠶ߟ γεςϜো֐ͱ͸

Slide 18

Slide 18 text

ఆٛ “γεςϜো֐ͱ͸ɺ৘ใγεςϜ͕ԿΒ͔ͷෆ ۩߹ʹΑͬͯͦͷػೳʹࢧোΛདྷͨ͠ɺຊདྷͷ ػೳ͕ར༻Ͱ͖ͳ͍ঢ়ଶͷ͜ͱͰ͋Δɻ” Ҿ༻: https://www.weblio.jp/content/γεςϜো֐

Slide 19

Slide 19 text

ఆٛ “γεςϜো֐ͱ͸ɺ৘ใγεςϜ͕ԿΒ͔ͷෆ ۩߹ʹΑͬͯͦͷػೳʹࢧোΛདྷͨ͠ɺຊདྷͷ ػೳ͕ར༻Ͱ͖ͳ͍ঢ়ଶͷ͜ͱͰ͋Δɻ” Ҿ༻: https://www.weblio.jp/content/γεςϜো֐

Slide 20

Slide 20 text

୭͕ར༻͢Δػೳʁ • to CͳΒΞϓϦΛμ΢ϯϩʔυ͓ͨ͠٬͞· • to BαʔϏεͳΒܖ໿ઌͷࣾһ͞Μ • ࣾ಺γεςϜͳΒࣗࣾࣾһ

Slide 21

Slide 21 text

ҙਤ͠ͳ͍ڍಈ

Slide 22

Slide 22 text

͓٬͞·ʹӨڹͷग़Δ ҙਤ͠ͳ͍ڍಈ

Slide 23

Slide 23 text

͜Ε͸ʁ • ΦϖϨʔγϣϯϛε • ࢓༷௨Γ͕͓ͩ٬͞·ʹӨڹͷग़Δػೳ

Slide 24

Slide 24 text

γεςϜো֐ͱ͸ɺ݁Ռ ݪҼ ɾγεςϜόά ɾΦϖϨʔγϣϯϛε ɾӡ༻ϛε ݁Ռ ɾը໘ʹΤϥʔ͕දࣔ ɾϨΠςϯγ͕̎ഒʹ ɾςετPush௨஌

Slide 25

Slide 25 text

͡Ό͋͜Ε͸ʁ • όά͚ͩͲӨڹൣғ֎ • ͓٬͞·ʹΤϥʔ͸දࣔ͞Εͳ͍͕ϩά͕ߥ ΒͿΔ • ෆཁͳ৘ใ͕Ϩεϙϯεʹࠞͬͯ͟Δ

Slide 26

Slide 26 text

ηʔϑʁ https://giphy.com/gifs/wmwhitecaps-umpire-ump-david-gonzalez-3o6Zt4OIZEm5KE0DTi

Slide 27

Slide 27 text

Ξ΢τ • Өڹ͕ͰΔՄೳੑ͕͋Δɺ΋͘͠͸͋ͬͨ • જࡏతͳγεςϜো֐ • ͨ·ͨ·ηʔϑ͚ͩͬͨͩ

Slide 28

Slide 28 text

ͳͥ݁ՌηʔϑͰ΋ γεςϜো֐ʁ

Slide 29

Slide 29 text

ো֐͸ऩଋͯ͠΋ αʔϏε͸ଓ͔͘Β

Slide 30

Slide 30 text

1ষ·ͱΊ • γεςϜো֐ͱ͸݁Ռͱͯ͠ • ͓٬͞·ʹӨڹ͕ͰΔ΋ͷ • Өڹ͕Ͱ͔ͨ΋͠Εͳ͍΋ͷ • ݪҼ͸γεςϜతͳ΋ͷʹݶΒͳ͍

Slide 31

Slide 31 text

2ষ γεςϜো֐ʹཱͪ޲͔͏

Slide 32

Slide 32 text

Ͳ͏ཱͪ޲͔͏ʁ • ͓٬͞·ʹӨڹΛग़͞ͳ͍ͨΊʹ͸ো֐Λग़ ͞ͳ͚Ε͹͍͍ • ͭ·Γɺো֐Λग़͞ͳ͍։ൃΛ͢Ε͹͍͍ • ࠷ߴͰ͸ʁʁʁʁ

Slide 33

Slide 33 text

ো֐ग़ͣ͞ʹ։ൃͰ͖Δਓ

Slide 34

Slide 34 text

ݱ࣮͸ݫ͍͠+

Slide 35

Slide 35 text

ड͚ೖΕΔ΂͖ͨͬͨ1ͭͷࣄ࣮ ͲΜͳʹ༏लͳਓͰ΋ϛεΛ͢Δ

Slide 36

Slide 36 text

ো֐͸ʮى͖Δʯ • ਓ͕αʔϏεΛ࡞ΔݶΓɺ ϛε͸ى͖Δ • ͭ·Γো֐͸ແ͘ͳΒͳ͍ • ো֐Λແ͘͢ํ๏͸։ൃΛ ΍ΊΔ͜ͱ͚ͩ ը૾Ҿ༻: http://cartoontester.blogspot.com/2013/10/field-of-dreams-rip-off.html

Slide 37

Slide 37 text

Ͳ͏͢΂͖͔ • ো֐͕ى͖Δ֬཰ΛݮΒ͢

Slide 38

Slide 38 text

Automation & Karakuri

Slide 39

Slide 39 text

Automation ਓ͕͠ͳͯ͘΋͍͍͜ͱΛ͠ͳ͍ Karakuri ਓ͕ϛεͯ͠΋͍͍࢓૊ΈΛͭ͘Δ

Slide 40

Slide 40 text

Automation • ੩తղੳʹΑΔࣗಈϨϏϡʔ • ࠶ൃ๷ࢭͷࣗಈςετ

Slide 41

Slide 41 text

Karakuri • PushπʔϧͷValidationڧԽ • ϓϩάϥϜ্ͷϩδοΫͰ࿦ཧతʹى͖ͳ͍ Α͏վम͢Δ

Slide 42

Slide 42 text

Ҿ༻: https://qiita.com/hirokidaichi/items/f9f4549c88aaf8b38bda ਓؒͱ͍͏ίϯϙʔωϯτΛ ࠶ൃ๷ࢭʹೖΕͳ͍

Slide 43

Slide 43 text

2ষ·ͱΊ • ਓ͸ϛεΛ͢Δ • ࣦഊΛೝΊɺࣦഊ͔ΒֶͿ • ֶͼΛAutomation & KarakuriΛ࣠ʹ࣮ફ΁ͱ ঢ՚͢Δ

Slide 44

Slide 44 text

3ষ ࣮ફʂ࠶ൃ๷ࢭࡦ

Slide 45

Slide 45 text

ݱ৔ͷ࿩Λ͠·͢

Slide 46

Slide 46 text

ϝϧΧϦͷো֐ରԠϑϩʔ ো֐ൃੜ ऩଋ ৼΓฦΓ ରԠ

Slide 47

Slide 47 text

ϝϧΧϦͷো֐ରԠϑϩʔ ো֐ൃੜ ऩଋ ৼΓฦΓ ରԠ

Slide 48

Slide 48 text

ৼΓฦΓͰ͠ͳ͍͜ͱ • ੹೚ͷ௥ٻ • ൓লจͷಡΈ߹Θͤ

Slide 49

Slide 49 text

ৼΓฦΓͰ͢Δ͜ͱ • Automation & KarakuriΛ࣮ݱ͢Δ࠶ൃ๷ࢭ ͷݕ౼ • ໰୊ͷਂ۷Γ

Slide 50

Slide 50 text

Who? ো֐ऩଋ • ऩଋޙɺରԠؔ܎ऀ ͰใࠂॻΛॻ͘ • ৼΓฦΓΛ͢ΔͨΊ ͷ৘ใΛॻ͘

Slide 51

Slide 51 text

Who? ো֐ऩଋ ౰ࣄऀɺνʔϜͰߟ͑Δ • ·ͣ͸౰ࣄऀɺνʔ ϜͰ࠶ൃ๷ࢭࡦΛߟ ͑Δ

Slide 52

Slide 52 text

Who? ো֐ऩଋ ౰ࣄऀɺνʔϜͰߟ͑Δ ΈΜͳͰߟ͑Δ • ߟ͑ͨ΋ͷΛΈΜͳ ͰϨϏϡʔ͢Δ • νʔϜͰग़ͯ͜ͳ͍ ΞΠσΟΞ͕ग़ͯ͘ Δ͜ͱ΋͋Δ

Slide 53

Slide 53 text

How? • िʹ1౓ɺSlack্ͰΦϯϥΠϯͰ࣮ࢪ • ୭Ͱ΋ࢀՃͰ͖Δ • [ݕࡧ][ϝϧΧϦͷ3ͭͷValueͰऔΓ૊ΉΠϯ γσϯτରԠ] http://tech.mercari.com/entry/2018/04/10/090453

Slide 54

Slide 54 text

ΈΜͳͰݟΔඞཁ͋Δʁ • ࣾ಺ͷྺઓͷ໠ऀ͔Β஌ݟ͕΋Β͑Δ • ผ৬छͷࢹ఺͕ಘΒΕΔ • OKͳΒOKͰ͓ർΕ༷Ͱͨ͠ͱͳΔ

Slide 55

Slide 55 text

࠶ൃ๷ࢭͷࢦඪ • ৽ਓ͕ಉ͜͡ͱΛͯ͠΋࠶ൃ͠ͳ͍͔ʁ • ਓ͕࡞ۀ͠ͳ͍Α͏ʹͰ͖Δ͔ʁ • ೋ౓ͱى͖ͳ͍Α͏ʹͰ͖Δ͔ʁ Karakuri Automation Karakuri

Slide 56

Slide 56 text

Backendͷྫ • ࣗಈςετͷ௥Ճ • ಠࣗνΣοΫεΫϦϓτΛCIͰ࣮ߦ • ϝϯςφϯεϞʔυͷ࣮૷

Slide 57

Slide 57 text

ࣾ಺πʔϧͷྫ • ࣮ࡍͷো֐ʹج͍ͮͨݖݶ੍ޚ΍Validationॲ ཧͷ௥Ճ • खӡ༻Ͱ΍͍ͬͯͨ࡞ۀΛࣗಈԽ

Slide 58

Slide 58 text

ͦͷଞ • ϑΣʔϧιϑτ΁ͷࣗಈҠߦͷ࢓૊Έ࣮૷ • Ϋϥ΢υαʔϏεͷࡉ͔͍ϞχλϦϯά

Slide 59

Slide 59 text

શ෦࠶ൃ๷ࢭͰ͖Δͷʁ • ෆՄೳͰ͸ͳ͍(ͱ৴ͯ͡Δ) • ݱ࣮໰୊ɺίεύ͕ѱ͍΋ͷ΋͋Δ • ࠷খݶͷ౒ྗͷ݁Ռɺ࠷େݶʹਓؒͱ͍͏ί ϯϙʔωϯτ͕ؔΘΔՕॴΛڱ͘͢Δ

Slide 60

Slide 60 text

3ষ·ͱΊ • ϝϧΧϦͰ͸࠶ൃ๷ࢭʹՁ஋Λݟग़ͯ͠Δ • Automation&KarakuriΛ࣠ʹि1ճɺΈΜͳͰ ৼΓฦΓΛ͢Δ

Slide 61

Slide 61 text

·ͱΊ

Slide 62

Slide 62 text

ো֐ใࠂॻ͸ࢿ࢈ • ো֐͸αʔϏε͕૸ΔݶΓى͖ଓ͚Δ • ى͖ͨো֐͸͖ͪΜͱৼΓฦΓɺ࠶ൃ๷ࢭࡦ Λߟ͑ͯࢿ࢈΁ͱঢ՚ͤ͞Δ • େࣄͳͷ͸ະདྷͷ͓٬͞·΁ͷӨڹΛͲΕͩ ͚ݮΒͤΔ͔

Slide 63

Slide 63 text

࠶ൃ๷ࢭࡦ΋ਐԽ͕ඞཁ • ੒௕Λଓ͚ΔαʔϏε͸ͦͷ෼ɺো֐΋૿͑ ΍͍͢ • Microservices΍ٕज़ͷଟ༷Խ͕ਐΉͱ࠶ൃ๷ ࢭͷ೉қ౓΋্͕͍ͬͯ͘ • ࠶ൃ๷ࢭͷ࢓૊Έ΋ৗʹਐԽ͍ͯ͘͠ඞཁ͕ ͋Δ

Slide 64

Slide 64 text

Thank you