Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
10個以上のプロダクトを3人のメンバーでローンチしたdiniiの開発の裏側
Search
dinii_otomo
October 21, 2022
Technology
4.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
10個以上のプロダクトを3人のメンバーでローンチしたdiniiの開発の裏側
Qiita Night フロントエンド 2022/10/21 開催の登壇資料となります。
dinii_otomo
October 21, 2022
More Decks by dinii_otomo
See All by dinii_otomo
スタートアップで React Native を採用してよかったこと
dinii_otomo
2
790
diniiでのHasura活用例
dinii_otomo
1
740
Other Decks in Technology
See All in Technology
第3回しろおびセキュリティスポンサーセッション
log0417
0
150
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
SnowflakeCoCoでデータエンジニアリング!
foursue
0
180
【CEDEC2026】専門性の高いデフォルメチームが挑んだ人材育成戦略 〜Cygames Academiaの企画から実施まで〜
cygames
PRO
0
520
Digitization部 紹介資料
sansan33
PRO
2
7.7k
AI駆動開発は個人技からチーム戦へ:組織でAIを使いこなすための実践設計
moongift
PRO
0
470
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
140
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
330
モバイルアプリ開発概論2026
recruitengineers
PRO
3
480
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
20260804_Q4AzureUpdateBite_FabricDataAgentの精度を高める設計.pdf
matayuuu
1
110
TypeScript入門 2026
recruitengineers
PRO
2
480
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
330
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Spectacular Lies of Maps
axbom
PRO
1
890
The Language of Interfaces
destraynor
162
27k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
How to Talk to Developers About Accessibility
jct
2
490
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Site-Speed That Sticks
csswizardry
13
1.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
190
Transcript
10ݸҎ্ͷϓϩμΫτΛ3ਓͷϝϯόʔͰ ϩʔϯνͨ͠diniiͷ։ൃͷཪଆ גࣜձࣾ dinii CTO େ༑Ұथ Qiita Night 202 2
2022/10/21
ࣗݾհ • ࢯ໊ɿେ༑Ұथ (@dinii_k_otomo ) • ॴଐɿגࣜձࣾ dini i ◦
ҿ৯ళͷϞόΠϧΦʔμʔͱPOSͷձࣾͰ͢ɻ ◦ ্ཱ͔ͪ͛Β͍ͬͯ·͢ɻ ◦ ෳճͷϐϘοτΛܦͯɺϞόΠϧΦʔμʔ & POS Λ։ൃɾӡ༻͍ͯ͠·͢ɻ • ڵຯؔ৺ɿ ◦ ͳͳμΠχʔՃໍళͰϑϥΠυϙςτͱϏʔϧΛҿΜͰ͍·͢ɻ 2
ࠓ͢͜ͱ 3 • ҿ৯ͷΠϯϑϥͱͯ͠ɺଟ͘ͷϓϩμΫτΛ࠷ॳ͔Βඋ͑Δඞཁ͕͋ͬͨ ◦ ελʔτΞοϓ্ཱͪ͛ͷϦιʔε͕গͳ͍ঢ়ଶ͔ΒɺͲͷΑ͏ʹ͠ ͯͦΕΛ࣮ݱ͔ͨ͠ʁ
ελʔτΞοϓͷ্ཱͪ͛ͱٕज़ 4 ϓϩμΫτେମ͏·͍͔͘ͳ͍ Կࣦഊ͢Δɺվળ͢Δɺͦͷࢼߦճ͕উෛ → ͱʹ͔͙͘͢ʹಈ͘ͷΛ࡞Γɺͱʹ͔͘ϦϦʔε͠ɺֶͼΛಘΔճ͕ॏཁ https://blog.winnonapartners.com/what-is-a-pivot-top-10-best-tech-startup-pivots-case-study/
ελʔτΞοϓͷ্ཱͪ͛ͱٕज़ 5 • dinii Ͱɺ͕ࣗ͜Ε·Ͱॻ͍͖ͯͨίʔυɾ࡞͖ͬͯͨϓϩμΫτͷ΄ͲΜͲ͕͏ͳ͍ɻ ◦ ࠓ·Ͱ 4,5ճେ͖͘ϐϘοτ͍ͯ͠Δ 2018 2019
2020
աڈͷϐϘοτ͔Βͷֶͼ 6 • ҿ৯ళͷɺ”All in one SaaS” Λఏڙ͍ͯ͘͜͠ͱ ◦ ͭ·Γɺҿ৯ళͷӡ༻Λࢧ͑ΔશͯͷϓϩμΫτΛ࣮ɾӡ༻͢Δ͜ͱ͕Ωʔͩͬͨ
طଘͷҿ৯ళΛ ࢧ͑ΔγεςϜ ۈଵ ٤৯ใ ձܭใ ސ٬ใ ධՁ ࡏݿ … ͋ΒΏΔҿ৯ͷ σʔλΛ౷߹ ۈଵ ධՁ ࡏݿ … ٤৯ใ ձܭใ ސ٬ใ σʔλ͕அ
dinii ͷٕज़ελοΫ 7 ʮଟͷϓϩμΫτʯΛʮগਓʯͰʮߴʯ͔ͭʮ҆ఆʯʹ։ൃ͢Δઓུͱͯ͠ͷ TypeScript, React, GraphQL (Hasura) ͷҰۃूத Ϩδ
ΩΦεΫ ΩονϯσΟεϓϨΠ μογϡϘʔυ ϋϯσΟ ϞόΠϧΦʔμʔ ϓϦϯλ࿈ܞ ࣗಈમػ࿈ܞ ϓϦϯλ࿈ܞ LINE Mini App όοΫΤϯυ ৄͪ͘͜͠Β: https://note.com/dinii/n/n9be778bd7da3
dinii ͷٕज़ελοΫͷมભͱࣄۀن 8 ࠓ͜ͷล ࠷ॳ͜͏ͩͬͨ ͜ͷล͔Β ϓϩμΫτ૿Ճ
ࠓͷӡ༻͍ͯ͠ΔϓϩμΫτ 9 19 packages
dinii ͷϢʔβ/ΠϯλʔϑΣʔε/σʔλͷಛ 10 ϝχϡʔΛऔಘ จ จཤྺͷऔಘ ձܭ ςʔϒϧใΛऔಘ CMS ςʔϒϧใ
ϝχϡʔใ จใ Ϩδ ΩονϯσΟεϓϨΠ μογϡϘʔυ ϋϯσΟ ϞόΠϧΦʔμʔ …. ΠϯλʔϑΣʔε/αʔϏεΛ ར༻͢ΔϢʔβଟ͍ ফඅऀ ϗʔϧελοϑ Ωονϯελοϑ ຊ෦ࣾһ ΦϖϨʔγϣϯେମҰॹ ίΞͳσʔλ΄΅Ұॹ ձܭใ Ϣʔβ ϓϩμΫτ ΦϖϨʔγϣϯ σʔλ
dinii ͷϢʔβ/ΠϯλʔϑΣʔε/σʔλͷಛ 11 ϝχϡʔΛऔಘ จ จཤྺͷऔಘ ձܭ ςʔϒϧใΛऔಘ CMS ςʔϒϧใ
ϝχϡʔใ จใ Ϩδ ΩονϯσΟεϓϨΠ μογϡϘʔυ ϋϯσΟ ϞόΠϧΦʔμʔ …. ΠϯλʔϑΣʔε/αʔϏεΛ ར༻͢ΔϢʔβଟ͍ ফඅऀ ϗʔϧελοϑ Ωονϯελοϑ ຊ෦ࣾһ ΦϖϨʔγϣϯେମҰॹ ίΞͳσʔλ΄΅Ұॹ ձܭใ Ϣʔβ ϓϩμΫτ ΦϖϨʔγϣϯ σʔλ ಉ͡Α͏ͳσʔλϏδωεϩδοΫΛɺ ৭ʑͳΠϯλʔϑΣʔεͰޮతʹ࣮͍ͨ͠ (ͨ͘͠ͳΔͩΖ͏)
• ༷ʑͳΠϯλʔϑΣʔεͰϩδοΫɾݟͷ࠶ར༻ੑΛߴΊΔͨΊʹɺ͕ଟ͍ϑϩϯτΤϯυʹ༗ རͳશମͷٕज़બఆ dinii ͷϢʔβ/ΠϯλʔϑΣʔε/σʔλͷಛ 12 ϝχϡʔΛऔಘ จ จཤྺͷऔಘ ձܭ
ςʔϒϧใΛऔಘ CMS ςʔϒϧใ ϝχϡʔใ จใ Ϩδ ΩονϯσΟεϓϨΠ μογϡϘʔυ ϋϯσΟ ϞόΠϧΦʔμʔ …. ফඅऀ ϗʔϧελοϑ Ωονϯελοϑ ຊ෦ࣾһ ձܭใ Hasura / GraphQL όοΫΤϯυ PostgreSQL
Α͔ͬͨ͜ͱ / ͏·͍ͬͨ͘͜ͱ 13 • ։ൃऀͷٕज़తͳίϯςΩετεΠον͕࠷খʹ͑ΒΕΔ ◦ গਓͰ࠷େޮͰ։ൃʂʂ্ཱͪ͛࣌3ਓͰ12 packages Λ։ൃɾӡ༻ɻ
2020/10- 2021/04- 2021/10- 2022/04- 6ϲ݄σϓϩΠճ 477 932 1076 992 giniʢ։ൃ҆ఆʣ 0.50 0.51 0.57 0.40 ϓϩμΫτ(#packages) 12 15 15 19 ܭଌͷࢀߟ: https://qiita.com/hirokidaichi/items/ceece347f808cc9d14dd#%E6%B4%BB%E7%94%A8%E3%81%B8%E3%81%AE%E6%9C%9F%E5%BE%85 • αʔϏεॳظ͔Βଟ͘ͷϓϩμΫτͷ։ൃӡ༻Λଓ͚͍ͯΔ͕ɺ҆ఆతͳ։ൃΛҡ࣋ • ౷Ұ͞Εٕͨज़ελοΫͷͨΊɺڞ௨ϩδοΫͷ JS ϥΠϒϥϦԽ
େมͩͬͨ͜ͱ 14 • TS ϑϧελοΫਓࡐͷ࠾༻ ◦ ಛʹόοΫΤϯυʹਫ਼௨ͨ͠ํݱࡏෆத...ʂʂ • Node.js /
NestJS ͰͷϓϩμΫγϣϯόοΫΤϯυͷӡ༻ݟ ◦ ಛʹ ORM ͷऔΓѻ͍όοΫΤϯυΞʔΩςΫνϟͳͲɺख୳Γͳ෦େ͖͔ͬͨɻ • Hasura ʹΑͬͯϑϩϯτΤϯυͷ։ൃޮ͕ඇৗʹ্͕ͬͨҰํͰɺ Hasura ࣗମͷӡ༻Πϯϑϥͷ࠷దԽʹۤઓ ◦ ͪ͜Β͝ࢀর͍ͩ͘͞: https://speakerdeck.com/dinii_otomo/diniidefalsehasurahuo-yong- li?slide=10
·ͱΊ 15 • ϓϩμΫτ͕ଟ͍/ϩδοΫ͕͍ۙ͠ͱ͍͏Ϗδωεཁٻʹରͯ͠ɺٯࢉٕͨ͠ज़બఆͰΓͬͨ ◦ dinii ͷ߹ɺ͘ҿ৯υϝΠϯͰ 0→1 Λ͍ͬͯͨͷͰɺଟϓϩμΫτͷߏͱॏཁੑΛεέʔϧલʹ Ͱ͖ͨ͜ͱ͕ӡͩͬͨɻ
◦ ʮ͜͜࡞Βͳͯ͘ྑ͘ͳ͍ʁʯɺେׂͱ͙͢ʹ࡞Β͟ΔΛಘͳ͔ͬͨɻɻɻ • શϓϩμΫτͰڞ௨ͷٕज़બఆ/ΞʔΩςΫνϟͷͨΊɺνʔϜͷφϨοδγΣΞ͕ଅਐ ◦ શһϑϧελοΫԽ͍ٕ͢͠ज़ڥͰ։ൃΛଓ͚ΒΕ͍ͯΔ → αʔϏεͷॳظ͔ΒଟͷϓϩμΫτΛܧଓతʹఏڙ͠ଓ͚ΒΕ͍ͯΔ