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
0
4.5k
10個以上のプロダクトを3人のメンバーでローンチしたdiniiの開発の裏側
Qiita Night フロントエンド 2022/10/21 開催の登壇資料となります。
dinii_otomo
October 21, 2022
Tweet
Share
More Decks by dinii_otomo
See All by dinii_otomo
スタートアップで React Native を採用してよかったこと
dinii_otomo
2
750
diniiでのHasura活用例
dinii_otomo
1
720
Other Decks in Technology
See All in Technology
歴史から学ぶ、Goのメモリ管理基礎
logica0419
14
2.7k
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
3
2k
サラリーマンソフトウェアエンジニアのキャリア
yuheinakasaka
38
18k
ソフトとハード両方いけるデータ人材の育て方
waiwai2111
0
100
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
220
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
7
3.2k
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
510
テストセンター受験、オンライン受験、どっちなんだい?
yama3133
0
210
Redshift認可、アップデートでどう変わった?
handy
1
140
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
Master Dataグループ紹介資料
sansan33
PRO
1
4.2k
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
140
Featured
See All Featured
Making Projects Easy
brettharned
120
6.5k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
54
49k
Side Projects
sachag
455
43k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
0
140
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
790
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Balancing Empowerment & Direction
lara
5
840
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Limits of Empathy - UXLibs8
cassininazir
1
200
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
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 Λ͍ͬͯͨͷͰɺଟϓϩμΫτͷߏͱॏཁੑΛεέʔϧલʹ Ͱ͖ͨ͜ͱ͕ӡͩͬͨɻ
◦ ʮ͜͜࡞Βͳͯ͘ྑ͘ͳ͍ʁʯɺେׂͱ͙͢ʹ࡞Β͟ΔΛಘͳ͔ͬͨɻɻɻ • શϓϩμΫτͰڞ௨ͷٕज़બఆ/ΞʔΩςΫνϟͷͨΊɺνʔϜͷφϨοδγΣΞ͕ଅਐ ◦ શһϑϧελοΫԽ͍ٕ͢͠ज़ڥͰ։ൃΛଓ͚ΒΕ͍ͯΔ → αʔϏεͷॳظ͔ΒଟͷϓϩμΫτΛܧଓతʹఏڙ͠ଓ͚ΒΕ͍ͯΔ