Slide 1

Slide 1 text

2022/04/20 @SaaS.tech #2 খࢁ ݈ଠ(Koyama Kenta) @doyaaaaaken ϓϥοτϑΥʔϜܕSaaSʹ͓͚Δ Ϛϧνςφϯτઃܭ

Slide 2

Slide 2 text

ࣗݾ঺հ • ࢓ࣄ • גࣜձࣾεϚʔτϥ΢ϯυ CTO / ૑ۀϝϯόʔ • αʔόαΠυKotlinɾVueJSΛར༻ • “Server-Side Kotlin Meetup” ͱ͍͏ΠϕϯτΛओ࠵ • OSS׆ಈ • kotlin-csvͷ࡞ऀʢ⭐: 400ʣ • KtorɾExposedɾkotest౳ͷίϯτϦϏϡʔλ @doyaaaaaken

Slide 3

Slide 3 text

Ϛϧνςφϯτͷσʔλ෼཭ઃܭ 3ύλʔϯ AWS SaaS FactoryϗϫΠτϖʔύͩͱҎԼͷఆٛ 1. αΠϩ 
 DBΠϯελϯεϨϕϧͰςφϯτ෼཭ 2. ϒϦοδ 
 DBΠϯελϯε͸ڞ༗͠ɺεΩʔϚϨϕϧͰςφϯτ෼཭ 3. ϓʔϧ 
 DBΠϯελϯεɾεΩʔϚ͸ڞ༻͠ɺςʔϒϧͰςφϯτIDΛ࠾൪͠෼཭ ࢀߟɿʰ1PTUHSF42-ͷߦϨϕϧͷηΩϡϦςΟΛඋ͑ͨϚϧνςφϯτσʔλͷ෼཭ʱIUUQTBXTBNB[PODPNKQCMPHTOFXTNVMUJUFOBOUEBUBJTPMBUJPOXJUIQPTUHSFTRMSPXMFWFMTFDVSJUZ

Slide 4

Slide 4 text

Ϛϧνςφϯτͷσʔλ෼཭ઃܭ 3ύλʔϯ AWS SaaS FactoryϗϫΠτϖʔύͩͱҎԼͷఆٛ 1. αΠϩ 
 DBΠϯελϯεϨϕϧͰ෼཭ 2. ϒϦοδ 
 DBΠϯελϯε͸ڞ༗ɺεΩʔϚΛ෼཭ 3. ϓʔϧ 
 DBΠϯελϯεɾεΩʔϚ͸ڞ༻ɺ֤ςʔϒϧͰςφϯτIDΛ࠾൪͠෼཭ ࢀߟɿʰ1PTUHSF42-ͷߦϨϕϧͷηΩϡϦςΟΛඋ͑ͨϚϧνςφϯτσʔλͷ෼཭ʱIUUQTBXTBNB[PODPNKQCMPHTOFXTNVMUJUFOBOUEBUBJTPMBUJPOXJUIQPTUHSFTRMSPXMFWFMTFDVSJUZ εϚʔτϥ΢ϯυ͸͜ͷઃܭ👇

Slide 5

Slide 5 text

Q. ͳͥϓʔϧܕʹͨ͠ͷʁ🤔

Slide 6

Slide 6 text

A. ϓϥοτϑΥʔϜܕSaaS͔ͩΒ

Slide 7

Slide 7 text

A. ϓϥοτϑΥʔϜܕSaaS͔ͩΒ 👀

Slide 8

Slide 8 text

લఏɿϏδωεϞσϧ ελʔτΞοϓ͕ձࣾܦӦ͢Δ্Ͱͷඞਢۀ຿Λαϙʔτ͢ΔSaaS • גओ૯ձ • ূ݊؅ཧʢגࣜɾετοΫΦϓγϣϯ؅ཧʣ • ࢿຊ੓ࡦ • ܦӦ؅ཧ • גओ໊฽؅ཧ • …etc

Slide 9

Slide 9 text

લఏɿϏδωεϞσϧ SaaSͳͷͰελʔτΞοϓʢ2,500ࣾʣ֤ࣾͷσʔλ͸ಠཱ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ גओ૯ձ גࣜɾSO ܾࢉ৘ใ BS/PL ࢿຊ੓ࡦ ݄࣍ܦӦࢦඪ ֤ࣾಠཱͨ͠σʔλΛ࣋ͭ גओ໊฽

Slide 10

Slide 10 text

͜͜·Ͱ͸SaaS😌

Slide 11

Slide 11 text

લఏɿϏδωεϞσϧ ౤ࢿՈʢVC΍ΤϯδΣϧʣ͕ελʔτΞοϓͷσʔλΛӾཡՄೳ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ౤ࢿՈ ౤ࢿՈ ౤ࢿՈ ౤ࢿՈ ౤ࢿઌ؅ཧɾ౤ࢿҊ݅؅ཧ4BB4 ձࣾܦӦαϙʔτ4BB4

Slide 12

Slide 12 text

લఏɿϏδωεϞσϧ ࢜ۀʢหޢ࢜ɾ੫ཧ࢜ɾ؂ࠪ๏ਓͳͲʣ͕ଞࣾʹΞΫηεՄೳ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ελʔτΞοϓ ౤ࢿՈ ౤ࢿՈ ౤ࢿՈ ౤ࢿՈ ࢜ۀ ࢜ۀ ࢜ۀ

Slide 13

Slide 13 text

SaaS͚ͩͲϓϥοτϑΥʔϜ😲

Slide 14

Slide 14 text

ϓϥοτϑΥʔϜܕSaaSͷ2ͭͷಛ௃ ಛ௃ᶃɿςφϯτΛލ͍ͩσʔλΞΫηε͕͋Δ ྫʣ౤ࢿՈ͕ෳ਺ͷ౤ࢿઌελʔτΞοϓ΁ͷ౤ࢿύϑΥʔϚϯεΛԣ۲ͰධՁ

Slide 15

Slide 15 text

ϓϥοτϑΥʔϜܕSaaSͷ2ͭͷಛ௃ ಛ௃ᶃɿςφϯτΛލ͍ͩσʔλΞΫηε͕͋Δ ϓʔϧܕͰͳ͍৔߹ʢDBΠϯελϯε΍εΩʔϚΛ෼཭ͨ͠৔߹ʣͷ՝୊ 
 ɹෳ਺ࣾσʔλͷҰׅऔಘ͕೉͍͠ 
 ʢSQLΛεΩʔϚ͝ͱ΍Πϯελϯε͝ͱʹ࣮ߦ͢Δඞཁ͋Γʣ ϓʔϧܕʢΠϯελϯεɾεΩʔϚڞ༗ܕʣ͕ϕλʔ

Slide 16

Slide 16 text

ϓϥοτϑΥʔϜܕSaaSͷ2ͭͷಛ௃ ಛ௃ᶄɿςφϯτ਺͕ଟ͍ͨΊɺϚΠάϨʔγϣϯʹ͕͔͔࣌ؒΔ ࢀߟɿʰͭΒ͘ͳ͍ϚϧνςφϯγʔΛٻΊͯશͯݟͤ·͢ʂ4NBSU)3σʔλϕʔεҠߦϓϩδΣΫτͷཪଆCVJMEFSTDPOʱIUUQTTQFBLFSEFDLDPNQVSJOUBJCVJMEFSTDPO ྫʣSmartHR͞Μ͕ϚϧνςφϯτϚΠάϨʔγϣϯ100࣌ؒΛղܾͨ͠࿩

Slide 17

Slide 17 text

ϓϥοτϑΥʔϜܕSaaSͷ2ͭͷಛ௃ ಛ௃ᶄɿςφϯτ਺͕ଟ͍ͨΊɺϚΠάϨʔγϣϯʹ͕͔͔࣌ؒΔ ϓʔϧܕͰͳ͍৔߹ʢDBΠϯελϯε΍εΩʔϚΛ෼཭ͨ͠৔߹ʣͷ՝୊ 
 Πϯελϯε΍εΩʔϚΛ෼཭͢ΔͱϚΠάϨʔγϣϯ͕࣌ؒ௕͘ͳΔ ʢ1ςφϯτͷϚΠάϨʔγϣϯ͕30ඵͱ͢Δͱ10,000ςφϯτͰ83࣌ؒ…ʣ ࢀߟɿʰͭΒ͘ͳ͍ϚϧνςφϯγʔΛٻΊͯશͯݟͤ·͢ʂ4NBSU)3σʔλϕʔεҠߦϓϩδΣΫτͷཪଆCVJMEFSTDPOʱIUUQTTQFBLFSEFDLDPNQVSJOUBJCVJMEFSTDPO ϓʔϧܕʢΠϯελϯεɾεΩʔϚڞ༗ܕʣ͕ϕλʔ

Slide 18

Slide 18 text

ʲ݁࿦ʳϓϥοτϑΥʔϜܕSaaS 
 Ͱ͸ϓʔϧܕ͕޲͍͍ͯΔ😉

Slide 19

Slide 19 text

εϚʔτϥ΢ϯυ͚ͩͷ 
 ٕज़త՝୊Ͱ͸ʁ😓

Slide 20

Slide 20 text

ଞͷձࣾͰ΋ϓϥοτϑΥʔϜܕ ʹͳΔ͜ͱ͸͋Γ͑·͢😉

Slide 21

Slide 21 text

ϓϥοτϑΥʔϜܕʹͳΓͦ͏ͳྫ • ςφϯτاۀෳ਺Λαϙʔτ͢ΔΑ͏ͳ৬ۀ͕͋Δ৔߹ • SmartHR͞ΜͰ͍͏ࣾ࿑࢜ • freee͞ΜͰ͍͏੫ཧ࢜ɾձܭ࢜ ࣗ͝਎ͷSaaSͷۀքʹ౰ͯ͸Ίͯ૝ఆͯ͠ΈΔͱ͍͍͔΋͠Ε·ͤΜ

Slide 22

Slide 22 text

͕࣌ؒ༨ͬͨͷͰ😉

Slide 23

Slide 23 text

Q. ϓʔϧܕͩͱηΩϡϦςΟ 
 ා͘ͳ͍ʁͲΜͳ޻෉ͯ͠Δͷʁ😲

Slide 24

Slide 24 text

A. ΞϓϦέʔγϣϯϨΠϠͰ 
 ଟ૚๷ޚ 💪

Slide 25

Slide 25 text

ଟ૚๷ޚͱͯ͠΍ͬͯΔ͜ͱͬ͘͟Γઆ໌ • ίϯτϩʔϥ૚ • URL಺ʹೖͬͨςφϯτIDΛνΣοΫ • υϝΠϯϞσϧ૚ • υϝΠϯϞσϧΛར༻͢ΔͱςφϯτͷऔΓҧ͕͑ͳ͘ͳΔΑ͏ͳ࣮૷্ͷ޻෉Λ͍ͯ͠Δ • σʔλΞΫηε૚ • શͯͷࢀরɾ࡞੒ɾߋ৽ɾ࡟আॲཧʹ͸ʢෆཁͰ͋ͬͯ΋ʣඞͣςφϯτIDͷνΣοΫΛೖΕΔ • ผͷIDͱऔΓҧ͑ͳ͍Α͏ઐ༻ͷܕʢྫɿStartupIdܕʣΛఆٛ • ςʔϒϧઃܭ • શͯͷςʔϒϧʹςφϯτIDΛೖΕΔʢͨͱ͑ෆཁͰ͋ͬͯ΋ҰԠೖΕΔʣ

Slide 26

Slide 26 text

DBϨΠϠͷ๷ޚҊ • ΞϓϦϨΠϠ͚ͩͩͱා͍ͷͰRow-Level Securityͱ͔͸ؾʹͳ͍ͬͯΔ ʰϚϧνςφϯτ4BB4ͷςφϯτ෼཭Λ3PX-FWFM4FDVSJUZʹҠߦͨ͠ʱIUUQTCVJMEFSTCPYDPSQTBOTBODPNFOUSZ

Slide 27

Slide 27 text

(࠷ޙʹ) εϚʔτϥ΢ϯυઈࢍ࠾༻தͰ͢ ελʔτΞοϓ2,500͕ࣾొ࿥͢Δσʔλڞ༗ɾ؅ཧϓϥοτϑΥʔϜΛ 
 Ұॹʹ࡞ͬͯ͘ΕΔํΛ୳͍ͯ͠·͢ ˞·ͣ͸ΧδϡΞϧ໘ஊ͔Βʂ5XJUUFS%.ɾ8BOUFEMZͳͲ͔Β͓ؾܰʹ͝࿈བྷ͍ͩ͘͞ɻ