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

GCP サーバーレスサービス× 少数チームによる事業立ち上げ / gcp_serverless_startup_business

Bd73c8006f95df876a0dda5c8f43502b?s=47 mokuo
September 24, 2019

GCP サーバーレスサービス× 少数チームによる事業立ち上げ / gcp_serverless_startup_business

GCP サーバーレス サービスについて / アーキテクチャ / メリット / ハマりどころ / 今後の課題

Bd73c8006f95df876a0dda5c8f43502b?s=128

mokuo

September 24, 2019
Tweet

Transcript

  1. ($1αʔόʔϨεαʔϏεʷগ਺νʔϜ ʹΑΔࣄۀ্ཱͪ͛ 4FSWFSMFTTٕज़ษڧձʙϑϧϚωʔδυαʔϏε׆༻ࣄྫʙ %40$%FWFMPQNFOU(SPVQΤϯδχΞ໦ా༔Ұ࿠ 4BOTBOגࣜձࣾ

  2. Agenda - ࣗݾ঺հ - Sansan αʔϏε঺հ - ߴਫ਼౓ͳσʔλԽΛࢧ͑Δϊ΢ϋ΢ - GCP

    αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ 2
  3. ࣗݾ঺հ - ໦ా ༔Ұ࿠ - Sansanגࣜձࣾ DSOC Development Group ΤϯδχΞ

    - αʔόʔαΠυΛத৺ʹϑϩϯτΤϯυɾ Πϯϑϥʹ΋ڵຯ͕͋Γ·͢ - Sansan Tech Podcast ΍ͬͯ·͢ʂ 3
  4. Agenda - ࣗݾ঺հ - Sansan αʔϏε঺հ - ߴਫ਼౓ͳσʔλԽΛࢧ͑Δϊ΢ϋ΢ - GCP

    αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ 4
  5. ๏ਓ޲͚Ϋϥ΢υ໊ࢗ؅ཧαʔϏε ݸਓ޲໊͚ࢗΞϓϦ

  6. 6

  7. Agenda - ࣗݾ঺հ - Sansan αʔϏε঺հ - ߴਫ਼౓ͳσʔλԽΛࢧ͑Δϊ΢ϋ΢ - GCP

    αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ 7
  8. ߴਫ਼౓ͳσʔλԽΛࢧ͑Δϊ΢ϋ΢ ػցͷྗͱਓͷྗΛ૊Έ߹ΘͤΔ 8

  9. ϛεςΠΫσΟςΫλʔ 9 ޡΓͷ܏޲Λֶशͯ͠ϛεͷ ՄೳੑΛ༧ଌ ͜ΕʹΑΓɺΦϖϨʔλʔ͸ޮ཰తʹ ࠷ऴνΣοΫΛߦ͏͜ͱ͕ՄೳʹͳΓ·͢ɻ

  10. ݴޠॲཧ൑ఆ 10 ໊ࢗը૾͔ΒݴޠΛ൑ఆ • ̐ݴޠʢ೔ӳதؖʣʹରԠ
 • σʔλԽϑϩʔͷޮ཰Խ
 • ΦϖϨʔλ΁ͷৼΓ෼͚ͷࣗಈԽ
 •

    ਫ਼౓ 98 %
  11. ߲໨ηάϝϯςʔγϣϯ 11 จࣈΛಡΈऔΒͣʹɺ໊ࢗͷ σβΠϯ͔Β߲໨Λݟ෼͚Δ • ߲໨൑ผͷ݁ՌΛֶश
 • ୯ମϞσϧͰ߲໨ۣܗɺ߲໨໊ͷਪఆ
 • ਫ਼౓

    98 %
  12. ΦϖϨʔλʔʹΑΔೖྗ - Ұͭͷ߲໨ʹର͢Δɺෳ਺ͷΦϖϨʔλʹΑΔଟॏೖྗ - ೖྗ಺༰ʹର͢Δ໨ࢹνΣοΫ - ೖྗϧʔϧ΍τϨʔχϯά໰୊ͷ࡞੒ 12

  13. ৽ͨͳσʔλԽαʔϏεͷݕূ ຊ೔͸ɺߴਫ਼౓ͳσʔλԽϊ΢ϋ΢Λ׆༻ͨ͠ ʮ੥ٻॻͷσʔλԽʯʹؔ͢ΔऔΓ૊ΈΛ͝঺հ ※ ਖ਼ࣜͳ৽αʔϏεͷൃදͰ͸͍͟͝·ͤΜ 13

  14. Agenda - ࣗݾ঺հ - Sansan αʔϏε঺հ - ߴਫ਼౓ͳσʔλԽΛࢧ͑Δϊ΢ϋ΢ - GCP

    αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ 14
  15. GCP αʔόʔϨε αʔϏε׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ

  16. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 16
  17. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 17
  18. GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - Google App Engine - Cloud Firestore

    - Cloud Tasks - Stackdriver - Cloud Storage - Cloud Functions 18
  19. GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - Google App Engine - Cloud Firestore

    - Cloud Tasks - Stackdriver - Cloud Storage => AWS S3 - Cloud Functions => AWS Labmda 19
  20. Google App Engine PaaSʢPlatform as a Serviceʣ - εέʔϧΞ΢τɾσϓϩΠ͕ߴ଎ -

    Πϯελϯε͕θϩ·ͰεέʔϧΠϯ - αϙʔτϥϯλΠϜ - Java, Python, Go, PHP, Node.js, Rubyʢbetaʣ 20
  21. Cloud Firestore αʔόʔϨεͳυΩϡϝϯτࢦ޲ NoSQL σʔλϕʔε - ΞϓϦέʔγϣϯͷෛՙʹԠͯࣗ͡ಈతʹਫฏεέʔϦϯά - ڧ੔߹ੑ -

    ߴ͍Մ༻ੑ - ϚϧνϦʔδϣϯͰ 99.999% Ҏ্ - ϦʔδϣϯͰ 99.99% Ҏ্ 21
  22. Cloud Firestore ͷ֊૚σʔλ ྫʣͦΕͧΕͷνϟοτϧʔϜʹෳ਺ͷϝοηʔδ͕͋Δ - rooms - room-A - messages

    - message-1 - message-2 - … - room-B - … 22 name: “։ൃϧʔϜ” from: “ଠ࿠”, msg: “͜Μʹͪ͸ʂ” from: “࣍࿠”, msg: “Hello!”
  23. Cloud Firestore ͷ֊૚σʔλ ྫʣͦΕͧΕͷνϟοτϧʔϜʹෳ਺ͷϝοηʔδ͕͋Δ - rooms - room-A - messages

    - message-1 - message-2 - … - room-B - … 23 name: “։ൃϧʔϜ” from: “ଠ࿠”, msg: “͜Μʹͪ͸ʂ” from: “࣍࿠”, msg: “Hello!” ← ʢϧʔτʣίϨΫγϣϯ ← υΩϡϝϯτ ← rooms ͷαϒίϨΫγϣϯ ← υΩϡϝϯτ
  24. Cloud Firestore ͷσʔλܕ - Map - JavaScript ͷΦϒδΣΫτɺRuby ͷϋογϡɺPython ͷࣙॻܕͷΑ͏ͳ஋ΛೖΕΒ

    ΕΔ - Array - Boolean - Date and time - String - … ࢀߟ: https://firebase.google.com/docs/firestore/manage-data/data-types 24
  25. Cloud Tasks ϑϧϚωʔδυͳλεΫΩϡʔαʔϏε - ॲཧΛඇಉظͰ࣮ߦͰ͖Δ - HTTP Target λεΫʢbetaʣ -

    App Engine λεΫ - ಉ࣌λεΫͷ࠷େϨʔτ΍࠷େ਺ΛઃఆͰ͖Δ 25
  26. Stackdriver ΞϓϦέʔγϣϯɺΠϯϑϥετϥΫνϟͷϞχλϦϯάͱ؅ཧ - ϩΪϯά => Stackdriver Logging - Τϥʔ௨஌ =>

    Stackdriver Error Reporting - ϞχλϦϯά => Stackdriver Monitoring 26
  27. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 27
  28. ࢖༻ݴޠ 28 Cloud Functions Node.js όοΫΤϯυ Node.js, TypeScript, Express ࣗಈԽΤϯδϯ

    C# ϑϩϯτΤϯυ React, Redux, TypeScript
  29. αʔϏεͷશମ૾ 29 ੥ٻॻը૾ σʔλԽ݁Ռ ೖྗ / σʔλԽ γεςϜ ࣾ಺ΦϖϨʔλʔ ࣗಈԽΤϯδϯ

    Ϣʔβʔଆ γεςϜ σʔλԽ ੥ٻॻσʔλԽγεςϜ Ξοϓϩʔυ
  30. αʔϏεͷશମ૾ 30 ੥ٻॻը૾ σʔλԽ݁Ռ ೖྗ / σʔλԽ γεςϜ ࣾ಺ΦϖϨʔλʔ ࣗಈԽΤϯδϯ

    Ϣʔβʔଆ γεςϜ Ξοϓϩʔυ σʔλԽ ੥ٻॻσʔλԽγεςϜ
  31. ΞʔΩςΫνϟ KPI ج൫ ϩΪϯά / Τϥʔ௨஌ Stackdriver Ϣʔβʔଆ γεςϜ BigQuery

    Cloud Pub/Sub ࣗಈԽΤϯδϯ Cloud Dataflow App Engine Cloud Functions Cloud Storage Cloud Firestore Compute Engine Cloud Tasks ೖྗ / σʔλԽ γεςϜ
  32. ΞʔΩςΫνϟ KPI ج൫ ϩΪϯά / Τϥʔ௨஌ Stackdriver Ϣʔβʔଆ γεςϜ BigQuery

    Cloud Pub/Sub ࣗಈԽΤϯδϯ Cloud Dataflow App Engine Cloud Functions Cloud Storage Cloud Firestore Compute Engine Cloud Tasks ೖྗ / σʔλԽ γεςϜ
  33. ΦϖϨʔλʔ͔ΒͷೖྗΛड͚෇͚Δ 3 App Engine
 ʢNode.jsʣ Cloud Tasks Cloud Firestore ࣾ಺ΦϖϨʔλʔ

    App Engine ʢSPA ΞϓϦέʔγϣϯʣ ඇಉظॲཧ
  34. ϑΝΠϧΞοϓϩʔυͰಛఆͷॲཧΛߦ͏ - Cloud Functions ͷ Cloud Storage τϦΨʔ - Cloud

    Tasks ͷ App Engine λεΫ 34 Cloud Storage Cloud Functions App Engine Cloud Tasks
  35. ࣗಈԽΤϯδϯ - Compute Engine 35 ੥ٻॻը૾ͱΦϖϨʔλʔͷೖྗσʔλͷηοτΛֶश গͣͭࣗ͠ಈԽ͍ͯ͘͠ ※ Web API

    ͱͯ͠࿈ܞ
  36. KPI ج൫ - Google App Engine ͔Β Cloud Pub/Sub ܦ༝ͰϩάΛૹ৴

    - Tableau ͰՄࢹԽ 36 App Engine BigQuery Cloud Pub/Sub Cloud Dataflow
  37. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 37
  38. ϝϦοτ - ᶃ ΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ᶄ αʔόʔ؅ཧෆཁ - ᶅ ίετ࠷దԽ

    38
  39. ϝϦοτᶃɿΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ඇಉظ࣮ߦ - ఆظ࣮ߦ - σϓϩΠ - IPΞυϨε੍ݶ -

    τϥϑΟοΫ෼ׂ 39 App Engine
  40. ϝϦοτᶃɿΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ඇಉظ࣮ߦ - ఆظ࣮ߦ - σϓϩΠ - IPΞυϨε੍ݶ -

    τϥϑΟοΫ෼ׂ 40 Cloud Tasks App Engine Cron gcloud ίϚϯυ App Engine ϑΝΠΞ ΢Υʔϧ Traffic Splitting App Engine
  41. ϝϦοτᶃɿΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ඇಉظ࣮ߦ - ఆظ࣮ߦ - σϓϩΠ - IPΞυϨε੍ݶ -

    τϥϑΟοΫ෼ׂ 41 Cloud Tasks App Engine Cron gcloud ίϚϯυ App Engine ϑΝΠΞ ΢Υʔϧ Traffic Splitting App Engine
  42. τϥϑΟοΫ෼ׂ - Traffic Splitting - ෳ਺όʔδϣϯͷΠϯελϯεΛಉ࣌ʹಈ͔ͤΔ
 - IP ΞυϨε΍ Cookie

    ͰτϥϑΟοΫΛ෼ׂͰ͖Δ
 - ؅ཧը໘͔ΒΠϯελϯεͷόʔδϣϯΛมߋͰ͖Δ 42 App Engine
  43. τϥϑΟοΫ෼ׂ - Traffic Splitting - ෳ਺όʔδϣϯͷΠϯελϯεΛಉ࣌ʹಈ͔ͤΔ
 => ಈ࡞֬ೝ΍ςετ - IP

    ΞυϨε΍ Cookie ͰτϥϑΟοΫΛ෼ׂͰ͖Δ
 => A/B ςετ - ؅ཧը໘͔ΒΠϯελϯεͷόʔδϣϯΛมߋͰ͖Δ 43 App Engine
  44. τϥϑΟοΫ෼ׂ - Traffic Splitting - ෳ਺όʔδϣϯͷΠϯελϯεΛಉ࣌ʹಈ͔ͤΔ
 => ಈ࡞֬ೝ΍ςετ - IP

    ΞυϨε΍ Cookie ͰτϥϑΟοΫΛ෼ׂͰ͖Δ
 => A/B ςετ - ؅ཧը໘͔ΒΠϯελϯεͷόʔδϣϯΛมߋͰ͖Δ 44 App Engine
  45. τϥϑΟοΫ෼ׂ - Traffic Splitting - ෳ਺όʔδϣϯͷΠϯελϯεΛಉ࣌ʹಈ͔ͤΔ
 => ಈ࡞֬ೝ΍ςετ - IP

    ΞυϨε΍ Cookie ͰτϥϑΟοΫΛ෼ׂͰ͖Δ
 => A/B ςετ - ؅ཧը໘͔ΒΠϯελϯεͷόʔδϣϯΛมߋͰ͖Δ => ϩʔϧόοΫ 45 App Engine
  46. ϝϦοτᶄɿαʔόʔ؅ཧෆཁ - ෛՙʹԠͯ͡Φʔτεέʔϧ - αʔόʔͷϓϩϏδϣχϯά͕ෆཁ 46 App Engine Cloud Firestore

  47. ίετ࠷దԽ - جຊ࢖ͬͨ෼͚ͩ՝ۚ - Πϯελϯε͕θϩ·ͰεέʔϧΠϯͳͲ - Google App Engine /

    Standard Environment - Cloud Run 47
  48. ϝϦοτʢ;Γ͔͑Γʣ - ᶃ ΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ᶄ αʔόʔ؅ཧෆཁ - ᶅ ίετ࠷దԽ

    48
  49. ϝϦοτʢ;Γ͔͑Γʣ - ᶃ ΞϓϦέʔγϣϯͷίʔυʹूதͰ͖Δ - ᶄ αʔόʔ؅ཧෆཁ - ᶅ ίετ࠷దԽ

    49 => ݶΒΕͨϦιʔεͰ΋εϐʔυײΛ࣋ͬͯ։ൃͰ͖Δ
  50. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 50
  51. ϋϚΓͲ͜Ζ - ᶃ Google App Engine ؀ڥ - ᶄ App

    Engine ϑΝΠΞ΢Υʔϧ - ᶅ Cloud Firestore ͷσʔλϕʔεઃܭ 51
  52. ϋϚΓͲ͜ΖᶃɿGoogle App Engine ؀ڥ - ελϯμʔυ؀ڥ or ϑϨΩγϒϧ؀ڥ => ՄೳͳݶΓελϯμʔυ؀ڥΛ࢖͏

    - σϓϩΠ΍εέʔϦϯά͕ߴ଎ - Πϯελϯε͕θϩ·ͰεέʔϧΠϯ - ެࣜυΩϡϝϯτࢀর - https://cloud.google.com/appengine/docs/flexible/java/flexible-for- standard-users?hl=ja 52 App Engine
  53. GAE/FE Λ࢖͏৔໘ - Google App Engine / Flexible Environment -

    - GAEΠϯελϯεΛ VPC ωοτϫʔΫʹඥ෇͚͍ͨ࣌ - AWS ্ͷࣾ಺αʔϏεͱ VPN Ͱ઀ଓ͔ͨͬͨ͠ͷͰɺҰ෦ GAE/FE Λ ࢖༻ - ݱࡏ͸ Serverless VPC Access Λ࢖͑͹ɺελϯμʔυ؀ڥ͔Β VPC Ϧ ιʔεʹΞΫηεՄೳ - ৐Γ׵͑Λݕ౼த 53 App Engine
  54. GAE/FE Λ࢖͏৔໘ - Google App Engine / Flexible Environment -

    - ಛఆͷϥΠϒϥϦΛ࢖͍͍ͨ࣌ - ผαʔϏεʹ੾Γग़ͯ͠ Docker ΠϝʔδΛ࢖༻ - ݱࡏ͸ Cloud Run Λ࢖༻͢Δ͜ͱͰɺGAE/SE ͷΑ͏ͳεέʔϥϏϦ ςΟΛอͪͭͭɺDocker ΠϝʔδΛ࢖ͬͨߏ੒ʹͰ͖Δ 54 App Engine
  55. ϋϚΓͲ͜ΖᶄɿApp Engine ϑΝΠΞ΢Υʔϧ GCP αʔϏεؒͷ௨৴΋ϒϩοΫ͞ΕΔ͜ͱ͕͋Δ - Cloud Pub/Sub ͸άϩʔόϧͳαʔϏεͰ͋ΔͨΊɺ
 ϗϫΠτϦετ௥Ճ͸Ͱ͖ͳ͍

    - Cloud Tasks ͸಺෦తʹ URL ϑΣον αʔϏεΛ࢖͍ͬͯΔͨΊɺ
 URL ϑΣον αʔϏεͷ IP ΞυϨεΛڐՄ͢Δ 55 Cloud Storage Cloud Functions App Engine Cloud Tasks App Engine Cloud Pub/ Sub Cloud Storage App Engine
  56. ϋϚΓͲ͜ΖᶅɿCloud Firestore ͷσʔλϕʔεઃܭ SQL ͷΑ͏ͳ COUNT ؔ਺͸ͳ͍ - υΩϡϝϯτΛΨόͬͱऔ͖ͬͯͯΧ΢ϯτ͢Δ͜ͱ͸Ͱ͖Δ -

    ෼ࢄΧ΢ϯλΛ࢖͏ - ੍໿ɿ1 υΩϡϝϯτ͋ͨΓ 1 ඵؒʹ໿ 1 ճ͔͠ߋ৽Ͱ͖ͳ͍ - Χ΢ϯλ༻ͷυΩϡϝϯτΛෳ਺༻ҙͯ͠ɺϥϯμϜʹΠϯΫϦϝϯτ͢Δ - શυΩϡϝϯτΛऔಘͯ͠߹ܭΛܭࢉ͢Δ - FieldValue.increment() Λ࢖͏ʢv1.1.0 ͰϦϦʔεʣ - ཁ݅ʹΑͬͯ͸ɺRedis ͳͲͰΧ΢ϯτ͢Δͷ΋͋Γ 56 Cloud Firestore
  57. Firestore Ͱؔ࿈ΛͲͷΑ͏ʹ͔࣋ͭ ॻ͖ࠐΈ΍ಡΈࠐΈͷස౓Ͱ൑அ͢Δ - 1 : N ͷσʔλʹ͍ͭͯ - Ұॹʹѻ͏͜ͱ͕ଟ͍৔߹

    => Array ܕͱͯ͠ϑΟʔϧυʹ࣋ͨͤΔ - 1 υΩϡϝϯτ͋ͨΓ 1 ඵؒʹ໿ 1 ճ͔͠ߋ৽Ͱ͖ͳ͍ - ผʑʹѻ͏͜ͱ͕ଟ͍৔߹ => αϒίϨΫγϣϯʹ࣋ͨͤΔ - ίϨΫγϣϯͱαϒίϨΫγϣϯʹ·͕ͨͬͨΫΤϦ͸Ͱ͖ͳ͍ 57 Cloud Firestore
  58. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 58
  59. ࠓޙͷ՝୊ - ᶃɿ։ൃ؀ڥ - ᶄɿಈ࡞֬ೝ - ᶅɿ෼ੳܥΫΤϦ - ᶆɿΤϥʔ௨஌ =>

    ͜Ε͔Β੔͍͑ͯ͘ 59
  60. ࠓޙͷ՝୊ᶃɿ։ൃ؀ڥ - Cloud Firestore ͸ 1 ϓϩδΣΫτʹ 1 ͔ͭ͠ DB

    Λ࡞Εͳ͍ - ։ൃɾࣗಈςετ - Cloud Tasks ͸ Push ͳͷͰɺϩʔΧϧʹ޲͚ΒΕͳ͍ - ։ൃ࣌͸ Cloud Tasks ΛϞοΫ͢Δ͔ 60
  61. ࠓޙͷ՝୊ᶄɿಈ࡞֬ೝ - Heroku Review Apps ͷΑ͏ͳ͜ͱΛ͍ͨ͠ - PR ͝ͱʹ؀ڥΛཱͯΔ -

    Google App Engine ͸ෳ਺όʔδϣϯͷΠϯελϯεΛಉ࣌ʹಈ͔͢͜ͱ ͕Ͱ͖Δ 61
  62. ࠓޙͷ՝୊ᶅɿ෼ੳܥΫΤϦ - SQL ͷΑ͏ʹॊೈͳΫΤϦ͸ͳ͍ - BigQuery ʹσʔλΛΠϯϙʔτ͢Δ 62

  63. ࠓޙͷ՝୊ᶆɿΤϥʔ௨஌ - Stackdriver Error Reporting ͔Βͷ ϝʔϧ௨஌Λ Gmail ͷϑΟϧλػೳͰ Slack

    ʹ௨஌͍ͯ͠Δ - λΠϜϥά͕͋Δ - ςΩετΛΧελϚΠζͰ͖ͳ͍ - Datadog ΁ͷू໿Λݕ౼ 63
  64. GCP αʔόʔϨε αʔϏεͷ׆༻ࣄྫ ʙ৽ͨͳσʔλԽαʔϏεͷݕূʙ - GCP αʔόʔϨε αʔϏεʹ͍ͭͯ - ΞʔΩςΫνϟ

    - ϝϦοτ - ϋϚΓͲ͜Ζ - ࠓޙͷ՝୊ - ·ͱΊ 64
  65. ·ͱΊ GCP αʔόʔϨε αʔϏε - ݶΒΕͨϦιʔεͰ΋εϐʔυײΛ࣋ͬͯ։ൃͰ͖Δ - ϑϧϚωʔδυɺΦʔτεέʔϧͷྑ͞ΛڗडͰ͖ΔҰํͰɺ੍໿΍Ϋη͕ ͋Δ -

    ϝϯόʔ͕૿͑ͯ͘Δͱɺ։ൃ؀ڥͳͲͷ੔උʹ޻෉͕ඞཁ 65
  66. ͍͞͝ʹ

  67. We are hiring!

  68. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠