Slide 1

Slide 1 text

ʮͱ΋ʹͭ͘ΔʯσϞͷ͸ͳ͠ Shinichi Nakagawa @shinyorkeʢJX Press Corporation Senior Engineerʣ Developers Summit2020 2/14 Party Session

Slide 2

Slide 2 text

ͦͷલʹ

Slide 3

Slide 3 text

΋͏Ұ౓סഋ͓͖ͯ͠·͠ΐ͏͔ ࠓ೔͸TGIFͰ͢Αʂ

Slide 4

Slide 4 text

סഋ

Slide 5

Slide 5 text

ʮͱ΋ʹͭ͘ΔʯσϞͷ͸ͳ͠ Shinichi Nakagawa @shinyorkeʢJX Press Corporation Senior Engineerʣ Developers Summit2020 2/14 Party Session

Slide 6

Slide 6 text

Who am I ?ʢ͓લ୭Αʣ • Shinichi Nakagawaʢத઒ɹ৳Ұʣ • JX Press Corporation/Senior Engineer • Python΋͘΋ࣗ͘शࣨΦʔΨφΠβʔ https://jisyupy.connpass.com/ • SNS౳͸@shinyorkeʢ͠ΜΑʔ͘ʣͱ͍͏໊લͰੜଉ • #Python #DataScience #Baseball⚾ #SABRmetrics #Agile

Slide 7

Slide 7 text

JX௨৴ࣾ & ࢲͷ࢓ࣄ • ςΫϊϩδʔͰʮࠓى͖͍ͯΔ͜ͱʯΛ໌Β͔ʹ͢Δใಓػؔ • BtoB SaaSͷʮFASTALERTʯ, ੈ࿦ௐࠪetc… • BtoCͷχϡʔε଎ใΞϓϦʮNewsDigestʯ ʮGoogle Play ϕετΦϒ2019ʯͰ෦໳৆Λड৆ • ࢲ͸ΤϯδχΞͱͯ͠σʔλج൫ͱ͔࠾༻ͱ͔΍ͬͯ·͢

Slide 8

Slide 8 text

ࠓ೔͸͜Μͳ࿩Λ͠·ͨ͠ʢ14-E-6ʣ དྷ͍͍ͯͨͩͨօ͞·͋Γ͕ͱ͏͍͟͝·ͨ͠, ͦ͏Ͱͳ͍ํ΋ͥͻεϥΠυͱ͔ΈͯͶ.

Slide 9

Slide 9 text

ຊฤͷൃදʹ͓͍ͯ ʮͱ΋ʹͭ͘Δʯ ͕Ұ౓΋Ͱͯ͜ͳ͔ͬͨͷͰ͕͢ ͪΌΜͱ΍ͬͨͷͰ൸࿐͍ͤͯͩ͘͞͞

Slide 10

Slide 10 text

్தͰԿ౓͔ొ৔ͨͪ͜͠ΒͷσϞΞϓϦ ࠓճͷొஃʹ߹Θͤͯ…ͱ͍͍͍ͨͱ͜ΖͰ͕͢ ผͷ໨త΋͋ͬͯ೥຤͔Βͣͬͱ։ൃͯ͠·ͨ͠.

Slide 11

Slide 11 text

ׂͱ͔ͬ͠Γͨ͠ߏ੒ͷσϞͩͬͨ༁Ͱ͕͢ʂʁ ʲਤʳσϒαϛ༻σϞΞϓϦͷߏ੒. جຊతʹMac্ͷDockerͰಈ͍͍ͯ·͢.

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

ʮͱ΋ʹͭ͘Δʯʹॿ͚ΒΕͨτί • αʔόʔαΠυʢWeb APIʣ • ಛ௃ྔΤϯδχΞϦϯά

Slide 14

Slide 14 text

※͜ͷઌ͸͢΂ͯPythonͷ࿩Ͱ͢

Slide 15

Slide 15 text

βοι΢͔Βੜ͑Δٕज़બఆ • ౰ॳ͸responderΛ૝ఆ͍ͯͨ͠. ʢͪͳΈʹDjango/Flask͸࠷ॳ͔Β૝ఆ֎ʣ • ͍ͬͯ͏࿩Λಉ྅ʹβοι΢ʢࡶͳ૬ஊʣ ͨ͠ͱ͜Ζ, ʮ΋ͬͱ͍͍΍ͭ͋Δ΍Ͱʂʯ • ͦ͜ͰקΊΒΕͨͷ͕ʮFastAPIʯ, σϞ΋༧ఆ௨Γ׬੒ʂ

Slide 16

Slide 16 text

ͳͥFastAPI͕ΦεεϝͰग़͖͔ͯͨʁ • طʹԿਓ͔͕։ൃܦݧ͋Γ΋͘͠͸΍ͬͯΔ࠷தͩͬͨ • ͱ͍͏ࣄ৘Ͱϊ΢ϋ΢΍ܦݧ͕ੵ·Ε͓ͯΓ, shinyorkeͷཁ݅ɾ΍Γ͍ͨ͜ͱʹඞཁͳ৘ใ΋ฉ͚ͨ • ͍ͭͰʹϒϩά΋ॻ͍ͯେ౰ͨΓʢײँʣ https://shinyorke.hatenablog.com/entry/fastapi

Slide 17

Slide 17 text

ಛ௃ྔΤϯδχΞϦϯά • ϝδϟʔϦʔΨʔ໿20,000ਓͷσʔλʹରͯ͠ ಛ௃ྔʹج͍ͮͨείΞϦϯάΛ͢Δඞཁ͕ • ϩʔΧϧ؀ڥʢMacʣͰ΍ͬͯͨΒऴΘΒΜ… ͪͳΈʹίʔυ͸͢΂ͯPython • GCPͰ͍͍͡ΌΜʢ͍͍͡ΌΜʣ

Slide 18

Slide 18 text

σʔλج൫ߏஙͷϊ΢ϋ΢ۦ࢖Ͱ΍Γ͖Γ • JX௨৴ࣾͷσʔλج൫Λߏங͢ΔϛογϣϯͰ ࢄʑGCPͷαʔϏεΛ࢖ͬͯͨ͜ͱΛࢥ͍ग़͢ • Docker Image࡞ΕͨΒ͍͚Δ͡ΌΜʂ …ͬͯ͜ͱͰGCEͱGCSͰ͢΂ͯΛย෇͚ͨ ϗϯτ͸Cloud Runͷ͸͕ͣ๻ͷཧղ(ry • ։ൃ߹॓ͰGCPΛΨποͱ΍ͬͯͨϝϯόʔͷ஌ݟʹٹΘΕͨΓͱ͔

Slide 19

Slide 19 text

ʮͱ΋ʹͭ͘Δʯ͕΍Γ΍͍͢؀ڥ • JX௨৴ࣾ͸৭ΜͳྖҬͷ໘ന͍ΤϯδχΞ͕ू·͓ͬͯΓ, ϑϩϯτɾαʔόʔɾػցֶशʹΞϓϦͱฉ͚͹͍͍ͩͨ෼͔Δ • ڧ͍ਓͩͱ, ݱ৬ͷCTOʢͱࢲʣΛೖΕͯCTOܦݧऀ͕4໊͍Δ ͦͯ͠શମతʹ༏͍͠ਓ͕ͨ͘͞Μ͍ΔʢΤϯδχΞʹݶΒͣʣ • Slackͷ #dev νϟϯωϧʹ౤͛ΔͱάάΔΑΓ΋଎͘Ϩε͕ ͜Ε͕Θͨͨͪ͠ͷʮͱ΋ʹͭ͘ΔʯͰ͢ʂ

Slide 20

Slide 20 text

ʮͱ΋ʹͭ͘Δʯ ݴޠ΋Ϋϥ΢υ΋େࣄ͚ͩͲ ΍ͬͺΓνʔϜ΍Ͱʂ

Slide 21

Slide 21 text

ήʔϜηοτ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ Shinichi Nakagawa(Twitter/Facebook/etc… @shinyorke)