Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Shifter 開発の舞台裏 三種の神器編 -SaaSの開発、運用体制などの話 - / 20190920-go-saas

Shifter 開発の舞台裏 三種の神器編 -SaaSの開発、運用体制などの話 - / 20190920-go-saas

#Go_SaaS 三種の神器 オンボーディングセミナー#2(東京)

75486cbfd37125f121cf4a6c5614601c?s=128

Hidetaka Okamoto

September 20, 2019
Tweet

Transcript

  1. S h i f t e r ։ ൃ ͷ

    ෣ ୆ ཪ ࡾ छ ͷ ਆ ث ฤ - S a a S ͷ ։ ൃ ɺ ӡ ༻ ମ ੍ ɺ Ω ϟ ο γ ϡ ϑ ϩ ʔ ͷ Ҡ ߦ ͳ Ͳ ͷ ࿩ - # G o _ S a a S ࡾ छ ͷ ਆ ث Φ ϯ Ϙʔ σΟ ϯ άη ϛ φ ʔ # 2 ( ౦ ژ ) #Go_SaaS
  2. H i d e t a k a O k

    a m o t o • Digitalcube Co. Ltd. • Nishinomiya / Kobe • Alexa Campions • AWS Samurai 2017 in Japan
  3. None
  4. https://stripe.com/partners/digitalcube

  5. S a a S Λ ࡞ Δ ͨ Ί ʹ

    S a a S Λ ࢖ ͏ ΂ ͖ ཧ ༝
  6. ΍ Β ͳ ͍ ͜ ͱ Λ ܾ Ί Δ

    ͜ ͱ
  7. S a a S Λ ࢖ ͬͯɺ ʮ ΍ Β

    ͳ ͍ ͜ ͱ ʯ Λ ૿ ΍ ͢ • ࣗ෼Ͱ΍Δ΂͖͔ɺ΍Δ·͍͔ • Ϗδωεͷத਻ͱඞཁͳ΋ͷͷҧ͍ • ShifterͰબΜͩ΋ͷɾબ͹ͳ͔ͬͨ΋ͷ • ΍Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
  8. S a a S Λ ࢖ ͬͯɺ ʮ ΍ Β

    ͳ ͍ ͜ ͱ ʯ Λ ૿ ΍ ͢ • ࣗ෼Ͱ΍Δ΂͖͔ɺ΍Δ·͍͔ • Ϗδωεͷத਻ͱඞཁͳ΋ͷͷҧ͍ • ShifterͰબΜͩ΋ͷɾબ͹ͳ͔ͬͨ΋ͷ • ΍Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
  9. Making Your Own Power Doesn't Make Your Beer Taste Better

    ࣗ෼ͷྗͰ΍Δ = ࠷্ͱ͸ݶΒͳ͍ ੲ: Ϗʔϧ޻৔͸ࣗલͰൃిػΛॴ༗ ࠓ: ిؾ͸ൃిॴ͔Βങ͏΋ͷ -> ిؾͷॴ༗͔Βར༻΁ͷมԽ
  10. ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ

    ར ༻ • ઃඋΛ༻ҙ͢Δ͜ͱͰɺࣗڅࣗ଍͕ՄೳʹͳΔ -> ॴ༗ • ΦϯϓϨαʔόʔ / ࣗࣾ։ൃ / ϑϧεΫϥον • ୈࡾऀ͕༻ҙͨ͠΋ͷΛೖख͢Δ -> ར༻ • Ϋϥ΢υαʔόʔ / SaaS / ϑϨʔϜϫʔΫ
  11. ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ

    ར ༻ • ॴ༗ɿ҆৺ײ΍ॊೈͳΧελϚΠζੑͷ֬อͳͲ͕ظ଴Ͱ͖Δ • ར༻ɿඞཁͳ࣌ʹඞཁͳ͚ͩखʹೖΕΔ͜ͱ͕Ͱ͖Δ • ॴ༗ɿ४උʹ࣌ؒͱίετ͕͔͔Δ / ϝϯςφϯεͷඞཁੑ • ར༻ɿαʔϏεଆͷ࢓༷΁ͷґଘ / ো֐ͷυϛϊ౗͠
  12. ࣗ ෼ Ͱ ༻ ҙ ͢ Δ ͔ ɺ Կ

    ͔ Λ ར ༻ ͢ Δ ͔ • APIϕʔεͷαʔϏεͷ૿ՃɿStripe / Auth0 / AWS / etc… • ෳ਺ͷAPIΛ૊Έ߹ΘͤͰɺϏδωεϩδοΫͷߏங͕Մೳʹ • ඞཁͳ෦඼Λ֎஫ͭͭ͠ɺࣗ෼ͷ঎඼Λ૊ΈཱͯΔ • ʮ૊Έཱ͍ͯͨ΋ͷʯͷͨΊʹ࢖͑Δ΋ͷ͸ͳʹ͔ʁ
  13. S a a S Λ ࢖ ͬͯɺ ʮ ΍ Β

    ͳ ͍ ͜ ͱ ʯ Λ ૿ ΍ ͢ • ࣗ෼Ͱ΍Δ΂͖͔ɺ΍Δ·͍͔ • Ϗδωεͷத਻ͱඞཁͳ΋ͷͷҧ͍ • ShifterͰબΜͩ΋ͷɾબ͹ͳ͔ͬͨ΋ͷ • ΍Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
  14. ॴ ༗ ͢΂ ͖ ػ ೳ ͱ ඞ ཁ ͳ

    ػ ೳ • ͦͷϏδωεͷجװ -> ॴ༗͢΂͖ • αʔϏεԽ͢ΔͨΊʹඞཁͳػೳ -> ར༻Λݕ౼͢Δ • ΞΧ΢ϯτ؅ཧ / ܾࡁ / αʔόʔ / GUI / etc… • ʮͳ͍ͱࠔΔ͕ɺͲͷϏδωεͰ΋ඞཁͳ΋ͷʯ
  15. Ͳ ͜ · Ͱ Λ ॴ ༗ ͱ ͢ Δ

    ͔ ʁ • ίΞͱͳΔγεςϜ͸ࣗ෼Ͱ࡞Δ͔͠ͳ͍ • γεςϜΛߏ੒͢Δ΋ͷ͸ɺSaaSΛར༻Ͱ͖Δ • ೝূ / ೝՄ / ܾࡁͳͲɺʮඞਢ͚ͩͲίΞ͡Όͳ͍ʯΛݟۃΊΔ • ίΞ෦෼ͷ։ൃʹूத͢ΔͨΊʹɺSaaSΛར༻͢Δ
  16. S a a S Λ ࢖ ͬͯɺ ʮ ΍ Β

    ͳ ͍ ͜ ͱ ʯ Λ ૿ ΍ ͢ • ࣗ෼Ͱ΍Δ΂͖͔ɺ΍Δ·͍͔ • Ϗδωεͷத਻ͱඞཁͳ΋ͷͷҧ͍ • ShifterͰબΜͩ΋ͷɾબ͹ͳ͔ͬͨ΋ͷ • ΍Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
  17. - 15ਓͷνʔϜ
 - 100%ϦϞʔτϫʔΫ
 - 3ͭͷλΠϜκʔϯ
 ʢ೔ຊɺΦϥϯμ ɺϑΟϥσϧϑΟΞʣ 
 -

    ೔ຊޠͱӳޠ͕ࠞࡏ͢Δίϛϡχ έʔγϣϯ Small Team
  18. None
  19. • Stripe ϞχλϦϯάɾUI։ൃɾαϙʔτσεΫɾCRM … (શͯSaaS)

  20. • AWSΛશྗར༻ • APIΛ૊Έ߹Θͤͨ
 ɹΞϓϦߏ੒ جຊΞϓϦέʔγϣϯ (Serverless Architecture)

  21. • React (SPA / GUI) • Serverless FW (API) •

    Netlify (Server) • AWS (API Server) User Interface
  22. • ঎඼Ϛελొ࿥ • ଟ௨՟ܾࡁ • ੥ٻ؅ཧ • ෆ৹੥ٻνΣοΫ • CRMͱͷ࿈ܞ

    ՝ۚɾ੥ٻ؅ཧ͸Stripe
  23. • PRͷࣄલςετ • ΞϓϦͷϏϧυ • σϓϩΠ σϓϩΠɾϫʔΫϑϩʔ͸Circle CI

  24. • ϦϦʔε࣌ʹଘࡏΛ ஌Βͳ͔ͬͨ • ੾ସ͑ݕ౼த • ؔ੢Ͱ΋WSΛ ೝূೝՄ͸Auth0ɾɾɾͰ͸ͳ͘AWS Cognito

  25. S a a S Λ ࢖ ͬͯ Α ͔ ͬ

    ͨ ͜ ͱ • ։ൃ଎౓͕ͱʹ͔͘ૣ͍ • ʮ͜ͷػೳཉ͍͠ʯ -> ʮAPI͋ΔͶʯ -> ʮ͡Ό͋ͦΕΑͿΘʯ • SaaSଆͷϞσϧΛϕʔεʹγεςϜͷઃܭ͕Ͱ͖Δ • ϩά / Ϣʔβʔ؅ཧ / ϚωίϯͳͲͷʮ͋Δͱخ͍͠ʯػೳ͕͋Δ • ࣗલͰ࡞Δͱ͍͍ͩͨޙճ͠ʹ͞Ε͕ͪͳ΋ͷ͕͍͍ͩͨ͋Δ • GDPR / PCI DSSͳͲͷΊΜͲ͍͘͞ ॏཁͳػೳ΋͍͍ͩͨαϙʔτ
  26. S a a S Λ ࢖ ͬͯ ͭ Β ͍

    ͜ ͱ • SaaSͷ࢓༷΍੍໿͕ͦͷ··ϓϩμΫτͷ੍ݶʹͳΔ • ্ݶ΍੍ݶͷ֬ೝ࿙ΕͰ੝େͳ࢓༷࠶ઃܭ͕͓͖Δ͜ͱ΋ • ্ݶ΍੍ݶ͸ඞͣ֬ೝ͔ͯ͠Βಈ͘ɻಈ࡞΋ࢼ͓ͯ͘͠ • ো֐ͷϐλΰϥεΠον • 1 SaaSͷো֐ͷר͖ఴ͑Ͱશମ͕མͪΔՄೳੑ͕͋Δ • API͕ΤϥʔΛฦͨ࣌͠ͷᷖճ࿏͸͋Δ͔ʁ͚ͦͩ͜ࡴͤΔ͔ʁ
  27. • πΫϧ͔Βɺ͏·͘πΧ΢΁
 ϑϥοτԽ͢Δੈքͱ
 σδλϧτϥϯεϑΥʔϝʔγϣϯ • Agility ͕ڧ͞ΛੜΉ࣌୅
 ʮେ͖͍΋ͷ͕খ͍͞΋ͷʹউͭʯͷͰ͸ͳ͘
 ʮ଎͍΋ͷ͕஗͍΋ͷʹউͭʯ

  28. S a a S Λ ࣺ ͯ Δ ͱ ͍

    ͏ બ ୒ • ैྔ՝ۚܥSaaS͸ࣙΊ΍͘͢ɺτϥΠΞϧ͕͋Δ͜ͱ΋ଟ͍ • ґଘ͠ͳ͍Α͏ʹ૊ΈࠐΊ͹ɺ͙͢ʹࣙΊΔ͜ͱ΋Մೳ • ʮ·ͣSaaSͰࢼ͢ʯ -> ʮ෺଍Γͳ͍͔Β࡞Δʯͱ͍͏൑அ • ΍Ί΍͍͢ / ࣺͯ΍͍͔͢Βͦ͜ɺΑΓૉૣ͘มԽͰ͖Δ
  29. S a a S Λ ࢖ ͬͯɺ ʮ ΍ Β

    ͳ ͍ ͜ ͱ ʯ Λ ૿ ΍ ͢ • ࣗ෼Ͱ΍Δ΂͖͔ɺ΍Δ·͍͔ • Ϗδωεͷத਻ͱඞཁͳ΋ͷͷҧ͍ • ShifterͰબΜͩ΋ͷɾબ͹ͳ͔ͬͨ΋ͷ • ΍Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
  30. Ϣ ʔ β ʔ ͸ ʮ ମ ݧ ʯ ʹ

    ͓ ۚ Λ ෷ ͏ • ΧλϩάεϖοΫ΍ੑೳ͚ͩͰબͿέʔε͕ݮগ • ʮͦΕΛ࢖͏͜ͱͰɺͲΜͳମݧ͕Ͱ͖Δ͔ʁʯ • ϢʔβʔͷٻΊΔମݧ͸ৗʹมԽ͢Δ • มԽ͢Δظ଴ʹԠ͑ΔͨΊʹ΋ɺSaaSԽͯ͠ܧଓతͳؔ܎Λ໨ࢦ͢
  31. a s a S e r v i c e

    Խ ͭ͠ ͭ ͋ Δ ੈ ք https://boxil.jp/mag/a3600/
  32. a s a S e r v i c e

    Խ ͭ͠ ͭ ͋ Δ ੈ ք • Backend as a Service • Platform as a Service • Infrastructure as a Service • Software as a Service • etc…
  33. D i g i t a l c u b

    e ͷ a s a S e r v i c e Խ • AWS Marketplace AMI (AMIMOTO): Machine Imageͷఏڙ • AMIMOTO Managed: ϚωʔδυϗεςΟϯάʢSaaSԽʣ • Shifter: WordPressͷSaaSԽʢମݧʹϑΥʔΧεʣ
  34. “΋ͷͮ͘Γͷ৔߹ɺͲ͏ͯ͠΋ςΫϊϩδʔʹภΓ͕͋Δ͕ɺϢʔβʔ͔ Βͯ͠ΈΕ͹Χλϩάʹৄࡉʹܝࡌ͞Ε͍ͯΔεϖοΫͳͲ͸ɺϋϯόʔΨʔ ͷԣͷϙςτ΄ͲͷՁ஋΋ແ͍ɻͦΜͳΤϯδχΞͷΤΰͷΑ͏ͳ΋ͷ͸ ·ͣ͸๨Εͯɺސ٬͕৺஍Α͍ͱࢥ͑ΔαʔϏεઃܭΛߦ͏΂͖ͩɻ” ςΫϊϩδʔͰ͸ͳ͘ސ٬ࢹ఺ͰαʔϏεΛߟ͑Δ

  35. None
  36. S h i f t e r ͸ ɺ ୭

    ΋ ͕ ࢖ ͍ ׳ Ε ͨ Wo rd P re s s Ͱ ࡞ ੒ ͠ ͨ We b αΠ τ Λ อ क ෆ ཁ ͳ ελ ς Ο ο Ϋ α Π τ ʹ ม ׵ ͠ C D N Ͱ ߴ ଎ ഑ ৴ Ͱ ͖ Δ ϗ ε ς Ο ϯ ά ι Ϧϡ ʔ γ ϣ ϯ
  37. L I F E C Y C L E •

    WordPressͷϩάΠϯ࣌ʹDockerΛىಈ
 (Editorʣ • AWS ͷϦιʔεͰ੩తHTMLʹม׵
 (Generator) • CDN͔ΒίϯςϯπΛ഑৴
 (Contents Delivery) F E AT U R E • ߴ଎
 HTTP2ରԠ, ࣄલʹϏϧυ͞Εͨ੩తϑΝΠϧΛ
 ੈք100ΧॴҎ্ͷCDNڌ఺͔Βߴ଎഑৴ • ݎ࿚ͳηΩϡϦςΟ
 SSL, ύεϫʔυϨεϩάΠϯ, WordPress͸ৗ࣌ىಈෆཁ
 ϋοΫ͞ΕΔཁૉ͕ͳ͍ • ͍҆ίετͰ؆୯ʹεέʔϦϯά
 ಥൃతͳεύΠΫ͕དྷͯ΋҆৺ʂαΠτμ΢ϯ͠ͳ͍ɻ • ϢʔβʔϑϨϯυϦʔ
 ࢖͍׳ΕͨWordPressͰ։ൃɾӡ༻͕Մೳ
 OS/ϛυϧ΢ΣΞͷอक࡞ۀɾίετ͕ෆཁ
 ϑϩϯτͱόοΫΤϯυͷ෼཭ɺϏδωεʹूதͰ͖Δ؀ڥ
  38. None
  39. None
  40. None
  41. None
  42. C o n c l u s i o n

    • มΘΔχʔζ΍ؔ܎ੑʹରԠ͢ΔͨΊʹɺSaaSͱͯ͠ఏڙ͢Δ • খ͘͞͸͡Ίͯɺૉૣ͘ม͑Δ • SaaS / FaaSΛࢼͯ͠࢖͏͜ͱͰʮ΍Βͳ͍͜ͱΛ૿΍͢ʯ • ΍Βͳ͍͜ͱͰɺ΍Γ͍ͨ͜ͱ΁ͷϦιʔεΛ૿΍ͦ͏
  43. #GO_SaaS #GetShifter https://getshifter.io/