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

trocco® の品質を守る、とても普通な取り組み

trocco® の品質を守る、とても普通な取り組み

2022/06/07
BtoB SaaSプロダクトの勘所・アーキテクチャ裏側紹介 | BtoB tech meetup#1
https://btob-tech.connpass.com/event/247407/

trocco®の紹介
https://trocco.io/lp/index.html

primeNumberの求人一覧はこちら
https://herp.careers/v1/primenumber

E7d321bef653bcb8fce8032609321398?s=128

Kenta Suzuki

June 07, 2022
Tweet

More Decks by Kenta Suzuki

Other Decks in Programming

Transcript

  1. USPDDPšͷ඼࣭ΛकΔɺ ͱͯ΋ී௨ͳऔΓ૊Έ αϒλΠτϧUSPDDPšͷ 2"ΛҰॹʹ΍Γ·ͤΜ͔ɺͱ͍͏͓༠͍ ླ໦ ݈ଠ !LFLFLFOUB גࣜձࣾQSJNF/VNCFS$50 #UP#UFDINFFUVQ

  2. ླ໦ ݈ଠ !LFLFLFOUB $50 ࢲ גࣜձࣾQSJNF/VNCFS • ૑ۀ ◦ ຤

    γϦʔζ#ࢿۚௐୡ ◦ ࣾ಺Ͱ͸ɺ Q/ͱݺͿ͜ͱ͕ଟ͍ ◦ USPDDPšΛओྗࣄۀʹɺσʔλΛΩʔϫʔυ ͱͨ͠ϏδωεΛෳ਺ల։ • ಛ௃తͳ੍౓ ◦ ϋΠϒϦουग़ࣾʢिϦϞʔτʣ ◦ ϑϦʔϏʔϧ ◦ δϜશֹෛ୲  • ೥ೖࣾʢ൪໨ͷࣾһʣ • ೥͔Β$50 • Q/ͷ੍౓ͱࢲ ◦ ϋΠϒϦουग़ࣾ ▪ Ո͕͍ۙͷͰɺिͰग़ࣾ͢Δ͜ͱ͕ଟ͍ ▪ ਓͷগͳ͍ΦϑΟε޷͖ ◦ ϑϦʔϏʔϧɿΑ͘ར༻ͯ͠·͢ ◦ δϜશֹෛ୲ɿBOZUJNFߦͬͯ·͢
  3. ࠃ಺࠷େڃͷ σʔλΤϯδχΞ޲͚ίϛϡχςΟ %BUB&OHJOFFSJOH4UVEZΛӡӦ͍ͯ͠·͢ Լࠨӈͷؙ֯Λ׆͔ͨ͠ ͍৔߹͸ɺ͜ͷࣸਅΛબ ୒͠ɺϝχϡʔόʔ͔Β ʮը૾Λஔ׵ʯΛબͼ೚ ҙͷը૾ΛΞοϓϩʔυ ͍ͯͩ͘͠͞ɻ 

    ਫ ʙ .PEFSO%BUB4UBDLಛू
  4. USPDDPš͸ɺσʔλ΢ΣΞϋ΢ε΁ͷσʔλసૹπʔϧͰ͢ 4 ༷ʑͳσʔλιʔεʢ(PPHMF޿ࠂɺ.Z42-ʣͷσʔλΛσʔλ΢ΣΞϋ΢εʢ#JH2VFSZͳͲͷ෼ੳ޲͚%#ʣʹసૹ͠ɺ σʔλΛ౷߹͢ΔͨΊͷϓϩμΫτͰ͢ɻ σʔλΤϯδχΞͷํʑͷ༷ʑͳखؒΛ࡟ݮ͠ɺΑΓՁ஋͋Δۀ຿ʹूத͍ͯͨͩ͘͠ࣄΛ໨ࢦͯ͠ελʔτ͠·ͨ͠ɻ

  5. ෼ੳج൫ߏஙʹ͸ແͯ͘͸ͳΒͳ͍αʔϏεͱͯ͠ɺଟ͘ͷಋೖاۀ༷ʹධՁ ͍͍͍ͨͩͯ·͢ɻ 5

  6. σʔλసૹπʔϧ͔ΒɺσʔλϚωδϝϯτͷ૯߹ࢧԉαʔϏε΁ 6 σʔλ΢ΣΞϋ΢εʢ#JH2VFSZͳͲʣ΁ͷσʔλసૹʹಛԽͨ͠πʔϧͩͬͨUSPDDPš͸ɺ σʔλϚωδϝϯτͷ૯߹ࢧԉαʔϏε΁ͱਐԽ͍ͯ͠·͢ • ௚ۙ͸ɺҎԼͷςʔϚͰऔΓ૊ΜͰ͍·͢ ◦ %8)্ͷσʔλ؅ཧՄࢹԽʢσʔλΧλϩάʣ ◦ ECU࿈ܞʢσʔλϞσϦϯάʣ

    ◦ άϧʔϓػೳͷݟ௚͠ ◦ సૹઃఆ࡞੒ϑΥʔϜपΓͷ69վળ • ΋ͪΖΜɺطଘͷσʔλసૹݩઌͷ௥ՃͳͲ΋ ܧଓͯ͠औΓ૊ΜͰ͍·͢
  7. USPDDPšͷٕज़ελοΫ 7 • όοΫΤϯυ ◦ 3BJMT • ϑϩϯτΤϯυ ◦ 5ZQF4DSJQU

    ◦ 3FBDU • Πϯϑϥ ◦ LTʢ&,4ʣɿδϣϒج൫ଆ ◦ &$4ɿ6*ଆ • ͦͷଞ ◦ &NCVMLʢ+BWBʣɿσʔλసૹ044 ◦ &MBTUJD4FBSDI • $*$% ◦ $JSDMF$* ◦ (JU)VC"DUJPOT
  8. USPDDPšΛ։ൃ͢ΔνʔϜ 8 • 8&#ΤϯδχΞ ◦ ϑϧλΠϜ Y ◦ ෭ۀʢຊ৬͋ΓʣY ◦

    ϑϦʔϥϯεʢिۈ຿ʣ Y ◦ όΠτ Y • 43&ΤϯδχΞ ◦ ϑϧλΠϜ YɺϑϦʔϥϯε Y • 2"ςελʔʢόΠτʣ Y • ϓϩμΫτΦʔφʔ Y • ςΫχΧϧϥΠλʔ Y • ΧελϚʔαΫηεΤϯδχΞ Y ˞ʙͷମ੍ ༧ఆ
  9. ͳͥUSPDDPšʹͱͬͯ඼࣭͕େࣄͳͷ͔ʁ 9 • సૹσʔλ͸ͷ඼࣭Ͱసૹ͞ΕΔ͜ͱΛظ଴͞ΕΔ ◦ σʔλసૹπʔϧʹΑͬͯҙਤͤͣσʔλ͕มߋ͞ΕͨΒେ໰୊ ◦ σʔλ͕ޡ͍ͬͯΔͱɺਖ਼͍͠Ϗδωε൑அ͕Ͱ͖ͳ͍ • ϓϩμΫτͷ௿඼࣭͕ɺUSPDDPšΛར༻͠ͳ͍ཧ༝ʹͳΔ

    ◦ ͓٬༷͸ɺόά͕ଟ͍ϓϩμΫτͰେࣄͳσʔλͷసૹͨ͘͠ͳ͍ ◦ ΋ͪΖΜɺ USPDDPšʹݶͬͨ࿩Ͱ͸ͳ͘ɺ͢΂ͯͷϓϩμΫτʹ౰ͯ͸·Δ
  10. USPDDPšͷ඼࣭Λҡ࣋͢Δ೉͠͞ 10 • ઀ଓઌͷ਺͕ͱʹ͔͘ଟ͍ ◦ छྨ௒ʢ4ɺ($4ɺ,JOUPOFɺ(PPHMF"ETɺͳͲʣ ◦ αϙʔτ͢Δ઀ଓઌΛ૿΍͢͜ͱ͕ɺϓϩμΫτͷՁ஋ʹܨ͕ΔͨΊɺࠓޙ΋૿͑ͯ ͍͘ ▪

    ͨͱ͑Ұ෦ͷ͓٬༷ʹ͔͠࢖ΘΕͳ͍઀ଓઌͰ΋ɺͦͷ͓٬༷ͷ෼ੳج൫ߏஙʹ͓͍ͯ͸ͱͯ ΋ॏཁ • ઀ଓઌ͝ͱʹɺ݁ߏͳස౓Ͱͷ࢓༷มߋ͕͋Δ ◦ طଘͷ͓٬͞ΜͷσʔλసૹʹӨڹ͕͋ͬͯ͸͍͚ͳ͍ ▪ ͋Δ೔Λڥʹσʔλͷத਎͕มΘ͍ͬͯΔͳͲ͸΋ͪΖΜμϝ ◦ ࢓༷มߋྫ ▪ "1*ϨεϙϯεͷΧϥϜ໊มΘ͍ͬͯΔ ▪ Ṗʹߦ͕૿͍͑ͯΔɺͳͲ ◦ "1*ϨεϙϯεΛϞοΫΛ͢ΔςετͰ͸୲อ͖͠Εͳ͍ ▪ ࣮σʔλΛ༻͍ͨݕূΛߦ͏ඞཁ͕͋Δ
  11. ຖ೔໿ ϓϧϦΫΤετΛϦϦʔε͍ͯ͠Δ 11 • ϦϦʔεͷλΠϛϯά ◦ ݄ʙ໦ʢཌ೔ٳΈͷ೔͸ϦϦʔε͠ͳ͍ʣ ◦ ೔ճ·ͱΊͯϦϦʔε ◦

    ·Ͱʹ࣮ࢪʢίΞλΠϜ಺ͰͷϦϦʔεʣ • ϦϦʔεϑϩʔ ◦ εςʔδϯά؀ڥͰಈ࡞֬ೝΛߦ͍ɺ໰୊ͳ͚Ε͹ϦϦʔε • ೔͋ͨΓͷϓϧϦΫΤετͷ਺ ◦ ໿  ϓϧϦΫΤετ೔ ˞ ͷϲ݄ؒʹϚʔδ͞Εͨ13͔Βܭࢉ
  12. ඼࣭޲্ͷͨΊͷऔΓ૊ΈΛͭ঺հ͠·͢ 12

  13.  ϦϦʔεલͷεςʔδϯάಈ࡞֬ೝ 13

  14. • ֤ϓϧϦΫΤετͷվम಺༰ʹ͍ͭͯɺ2"ςελʔͷํ͕ಈ࡞ݕূΛߦ͍ɺݕূ ϩάʹ࢒͢ • ݕূϩάͷ಺༰ΛΤϯδχΞ͕֬ೝ͠ɺμϒϧνΣοΫΛߦ͏ ϦϦʔεલͷεςʔδϯάಈ࡞֬ೝͷେํ਑ 14

  15. ࣮ࡍͷεςʔδϯάಈ࡞֬ೝͷྲྀΕ 15 ࣮૷ऀ͕ɺϓϧϦΫΤετʹεςʔδϯάͰͷ ಈ࡞ݕূ߲໨Λهࡌ͢Δɻ • 2"ςελʔͷํ͸ΤϯδχΞ΄Ͳٕज़஌͕ࣝͳ͍ͷͰɺ ʮίʔυͷ͜͜ͷมߋνΣοΫͯ͠ʯΈ͍ͨͳهࡌ͸/( • ֬ೝͷ೉қ౓͕ߴ͍৔߹͸ɺ࣮૷ऀ͕௚઀εςʔδϯά֬ ೝ͢Δͷ΋0,

    ࣮ࡍͷϓϧϦΫΤετͰͷݕূ߲໨هೖྫ
  16. ࣮ࡍͷεςʔδϯάಈ࡞֬ೝͷྲྀΕ 16 2"ςελʔͷํ͕ϓϧϦΫΤετͷهࡌ ಺༰Λݩʹɺεςʔδϯά֬ೝΛ࣮ࢪ͢ Δɻ ֬ೝ಺༰ΛʢඞཁͰ͋Ε͹ʣεΫγϣ෇͖ Ͱ(JU)VC্ʹϩάʹ࢒͢ɻ ΤϯδχΞ͕ݕূϩάͷνΣοΫΛߦ͍ɺ ໰୊ͳ͚Ε͹ϦϦʔε (JU)VC্ͰͷݕূϩάͱμϒϧνΣοΫͷ࣮ࢪ

  17. • εςʔδϯά֬ೝʹ͕͔͔࣌ؒΓɺ։ൃͷ͕࣌ؒѹഭ͞ΕΔ໰୊͕ൃੜ ◦ ֬ೝ࡞ۀΛ΍͍ͬͯͨΒɺؾ͚ͮ͹༦ํʹ🌇🌇 • ࣮૷ऀ͸։ൃ࣌ʹҰ౓ಈ࡞ݕূΛߦ͍ͬͯΔͷͰɺಉ͡ࣄΛ͔Βݕূ͢Δͷ͸ਫ਼ ਆతͳෛ୲Λײ͡Δ ◦ ·͞ʹमߦ🥷🥷🥷 ◦

    ʮϕϯνϟʔͩ͠࢓ํͳ͍ʯͱࣗ෼ʹݴ͍ฉ͔ͤͯऔΓ૊Ή Ҏલ͸࣮૷ऀࣗ਎͕εςʔδϯάಈ࡞֬ೝΛ࣮ࢪ͍ͯͨ͠ 17 2"ςελʔͷํʹೖ͍͖ࣾͨͩ֬ೝϑϩʔΛ੔උ͢Δ͜ͱͰɺ ΤϯδχΞͷෛՙܰݮʹͭͳ͕ͬͨ 🎉🎉 USPDDPš͸ΤϯδχΞ޲͚ͷϓϩμΫτͰɺ2"ςελʔʹ΋ٕज़Ϧςϥγʔ͕ٻΊΒΕΔͨΊʹ࠾༻͕೉͔͕ͬͨ͠ɺ ӡྑ͘ϦϑΝϥϧͰ࠾༻੒ޭ
  18. USPDDPšΛ࢖ͬͨUSPDDPšͷσʔλ඼࣭ݕূ 18

  19. Ϟνϕʔγϣϯ 19 • ϦϦʔεʹΑͬͯɺطଘͷઃఆͷసૹ݁Ռ͕มΘͬͯ͠·͏͜ͱΛ๷ ͍͗ͨ ◦ ͜ΜͳࣄނΛ๷͍͗ͨ💥💥 ▪ "1*ΞοϓσʔτରԠΛೖΕͨΒ஋͕มΘͬͯ͠·ͬͨ ▪

    ίʔυʹόά͕༗Γɺσʔλநग़࣌ͷݕࡧ৚͕݅มߋ͞Εͯ ͠·ͬͨ • "1*ͷ༧ظͤ͵࢓༷มߋΛͳΔ΂͘ૣ͘ݕ஌͍ͨ͠
  20. σʔλ඼࣭ͷݕূํ๏ 20 • ಉ͡৚݅ͰσʔλసૹΛ࣮ߦ͠ɺຖճసૹ݁Ռ͕ظ଴௨ΓʹͳΔ͜ͱ Λ֬ೝ • ྫ͑͹(PPHMF"ET͔Βͷσʔλసૹͷ඼࣭Λݕূ͢Δ৔߹ ◦ ΩϟϯϖʔϯϨϙʔτ ͷσʔλΛ#JH2VFSZʹసૹ

    ◦ సૹ݁Ռςʔϒϧͱظ଴͢Δసૹ݁Ռ͕׬શҰக͢Δ͜ͱΛ֬ೝ Google 広告 5"#-&@"$56"- 5"#-&@&91&$5&% సૹ݁Ռςʔϒϧ ظ଴͢Δసૹ݁Ռ ʹ #JH2VFSZ
  21. USPDDPšͷϫʔΫϑϩʔ σʔλύΠϓϥΠϯͷґଘؔ܎Λ6*্Ͱ૊Ή͜ͱ͕ग़དྷΔ • ྫ.Z42-ˠ#JH2VFSZ΁ͷసૹޙɺ#JH2VFSZ͔Β)VC4QPUʹసૹ

  22. #JH2VFSZσʔλνΣοΫ • ϫʔΫϑϩʔͷλεΫͱͯ͠૊ΈࠐΈՄೳ • ΫΤϦΛೖྗ͠ɺΫΤϦ݁Ռʹରͯ͠Τϥʔ৚ ݅ΛઃఆՄೳ • ࢖༻ྫ ◦ ॏෳϨίʔυΛݕ஌͢ΔͨΊɺॏෳϨίʔ

    υ݅਺Λ$06/5͠ɺҎ্ͷ৔߹ʹΤϥ ʔͱ͢Δ
  23. ϫʔΫϑϩʔͱ#JH2VFSZΛ࢖ͬͨσʔλ඼࣭ݕূ σʔλసૹޙʹɺ#JH2VFSZσʔλνΣοΫΛ࣮ߦ͠ɺసૹσʔλΛݕূ

  24. ݕূͷϫʔΫϑϩʔ͸2"ςελʔͷํ͕த৺ʹ࡞੒ 24 • 2"ςελʔͷํ͕த৺ʹछྨ௒ͷసૹݩɾ ઌʹ͍ͭͯɺσʔλݕূ༻ͷϫʔΫϑϩʔΛ࡞੒ ◦ ΤϯδχΞͰͳ͘ͱ΋඼࣭୲อͷςετΛॻ͘͜ ͱ͕ग़དྷΔ • ϦϦʔεલʹ͢΂ͯ੒ޭ͢Δ͜ͱ֬ೝͯ͠ϦϦʔ

    ε͍ͯ͠Δ
  25. ։ൃɾಈ࡞֬ೝνΣοΫϦετͷಋೖ 25 • ػೳͷϦϦʔεޙʹɺେ͖ΊͷσʔλసૹͰͷύϑΥʔϚϯε໰୊͕ൃ֮͢Δ͜ͱ͕͋ͬͨ ◦ ࣮૷࣌ɺݕূ࣌ͷ֬ೝ߲໨͔Β࿙Ε͍ͯͨ • ࣮૷ऀɺϨϏϡʔऀɺςετऀʹΑΒͣɺ඼࣭Λ୲อͰ͖Δ࢓૊Έ͕ඞཁ ◦ 👉

    ઀ଓઌ௥Ճ࣌ͷνΣοΫϦετΛಋೖ • νΣοΫϦετͷ಺༰ ◦ ઀ଓઌͷ௥Ճ࣌ʹ͓͚ΔɺࣄલώΞϦϯά߲໨ɾ։ൃ࣌ʹඞͣ֬ೝ͢Δ΂͖ཹҙ఺ΛϦετԽ ▪ σʔλྔ ▪ ظ଴ύϑΥʔϚϯε ▪ εΩʔϚ ▪ ϖʔδϯάॲཧ ▪ "1*ͷεϩοτϦϯάɺͳͲͳͲ • ࠓޙ͞ΒʹνΣοΫϦετΛॆ࣮Խͤ͞ɺඞͣ֬ೝ͢Δ΂͖߲໨Ͱͷ࣮૷ɺݕূ࿙ΕΛͳ͍ͯ͘͘͠
  26. ࣮ࡍͷνΣοΫϦετྫ 26 εϓϨουγʔτͰӡ༻͍ͯ͠Δ

  27. 2"ͷࠓޙ 27 • ֬ೝɾσʔλνΣοΫͷ࣌ؒΛ୹ॖ͍ͨ͠ ◦ ϦϦʔε·Ͱʹ͕͔͔࣌ؒΔ༷ʹͳ͖ͬͯͨ ◦ ֬ೝऴΘΒͳ͔ͬͨͷͰɺཌ೔ʹϦϦʔεԆظ͢Δ͜ͱ͕ͨ·ʹ͋Δ • Χόʔ͖͠Ε͍ͯͳ͍ςετྖҬΛ௵͍ͯ͘͠

    ◦ ϑϩϯτͷࣗಈςετͱ͔औΓ૊ΜͰ͍͖͍ͨʢ"VUJGZ࢖ͬͯΈ͍ͨʣ • ͦͷଞɺ඼࣭Λ͋͛ΔͨΊʹ΍Δ΂͖͜ͱ͕ͨ͘͞Μ ◦ ੋඇɺ USPDDPšͷ 2"ΛҰॹʹ΍͍͖ͬͯ·ͤΜ͔ʁ 2"ΤϯδχΞʢϦʔυϙδγϣϯʣઈࢍืूதͰ͢ʂ
  28. 2"Ҏ֎ʹ΋ɺΤϯδχΞɺ43&ɺ1.ɺͳͲืूͯ͠·͢ 28 ͓٬༷ͷ਺͸ඈ༂తʹ৳ͼ͍ͯ·͕͢ɺ ·ͩ·ͩ΍Δ͜ͱ͹͔ΓͷϑΣʔζͰ͢ɻ ϓϩμΫτΛ৳͹͢͜ͱʹڵຯͷ͋Δํɺੋඇ͓࿩͠·͠ΐ͏ʂ ʮQSJNF/VNCFSٻਓʯͰݕࡧ 🔍