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
3.8k
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
630
diniiでのHasura活用例
dinii_otomo
1
630
Other Decks in Technology
See All in Technology
Taming you application's environments
salaboy
0
180
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
Engineer Career Talk
lycorp_recruit_jp
0
150
The Rise of LLMOps
asei
7
1.4k
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.8k
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
300
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
120
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
170
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
610
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Designing for humans not robots
tammielis
250
25k
Music & Morning Musume
bryan
46
6.2k
Designing the Hi-DPI Web
ddemaree
280
34k
Producing Creativity
orderedlist
PRO
341
39k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Done Done
chrislema
181
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
What's new in Ruby 2.0
geeforr
343
31k
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 Λ͍ͬͯͨͷͰɺଟϓϩμΫτͷߏͱॏཁੑΛεέʔϧલʹ Ͱ͖ͨ͜ͱ͕ӡͩͬͨɻ
◦ ʮ͜͜࡞Βͳͯ͘ྑ͘ͳ͍ʁʯɺେׂͱ͙͢ʹ࡞Β͟ΔΛಘͳ͔ͬͨɻɻɻ • શϓϩμΫτͰڞ௨ͷٕज़બఆ/ΞʔΩςΫνϟͷͨΊɺνʔϜͷφϨοδγΣΞ͕ଅਐ ◦ શһϑϧελοΫԽ͍ٕ͢͠ज़ڥͰ։ൃΛଓ͚ΒΕ͍ͯΔ → αʔϏεͷॳظ͔ΒଟͷϓϩμΫτΛܧଓతʹఏڙ͠ଓ͚ΒΕ͍ͯΔ