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
カオナビのチーム開発の裏側
Search
Genki Sano
April 11, 2022
Programming
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
カオナビのチーム開発の裏側
Genki Sano
April 11, 2022
More Decks by Genki Sano
See All by Genki Sano
社外コミュニティの歩き方
sanogemaru
0
65
VSCode中心だった自分がターミナル沼に入門した話
sanogemaru
0
1.3k
EMの透明性はどう作られるのか ―社内ラジオを続けて分かったこと
sanogemaru
1
500
薪ストーブへの憧れ
sanogemaru
0
97
やる気のない自分との向き合い方
sanogemaru
2
1k
リーダーになったら未来を語れるようになろう
sanogemaru
0
890
ソフトウェアの複雑性と認知負荷
sanogemaru
0
83
なぜスクラムはこうなったのか?歴史が教えてくれたこと
sanogemaru
5
2.7k
ソフトウェアは捨てやすく作ろう
sanogemaru
12
7.7k
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
740
Contextとはなにか
chiroruxx
1
370
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
190
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
610
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
130
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
390
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.7k
1B+ /day規模のログを管理する技術
broadleaf
0
110
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
170
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.7k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
13k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
240
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
340
Music & Morning Musume
bryan
47
7.2k
Scaling GitHub
holman
464
140k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
200
How to Ace a Technical Interview
jacobian
281
24k
Un-Boring Meetings
codingconduct
0
320
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
290
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
ࠤ ݩؾ ΧΦφϏͷνʔϜ։ൃͷཪଆ !1)1FS,BJHJ
ࣗݾհ !TBOPHFNBSV 2 גࣜձࣾΧΦφϏ αʔόʔαΠυΤϯδχΞ ΤϯδχΞϦϯάϚωʔδϟʔ ࠤ ݩؾ (FOLJ 4BOP
3 νʔϜ։ൃͯ͠·͔͢ʁ
4 ͍ͬͯΔͱࠔΔ͜ͱ͕ͨ͘͞Μ͋Δ ࠔͬͯΔͷʹԿݴͬͯ͘Εͳ͍ ϝϯόʔ͕ݮͬͯ͠·ͬͨ ϝϯόʔಉ࢜ͷഅ͕߹Θͳ͍ εέδϡʔϧ௨ΓʹऴΘΒͳ͍ ͓ޓ͍ʹ͍ͬͯΔ͜ͱ͕ݟ͑ͳ͍ ίϛϡχέʔγϣϯ্͕ख͘ͱΕͳ͍ ҙݟ͕߹Θͳ͍ ઃܭํ͕όϥόϥͰෛ࠴͕ग़དྷͯ͠·ͬͨ
5 ຊͷ
ຊͷ 6 ࣗͰॴଐͨ͠νʔϜͰͷମݧஊ l ͲΜͳ͜ͱͰࠔͬͨͷ͔ l ͦΕΛͲ͏ͬͯΓӽ͔͑ͨ l ͬͯΑ͔ͬͨ͜ͱ l
͚ͬͨͲ্ख͘ߦ͔ͳ͔ͬͨ͜ͱ
ຊͷ 7 ϓϩδΣΫτհ ࠔΓ͝ͱͱͦͷղܾํ๏ ·ͱΊ
8 ࣾһͷݸੑɾ࠽ೳΛൃ۷͠ઓུਓࣄΛՃͤ͞Δ λϨϯτϚωδϝϯτγεςϜʰΧΦφϏʱ © kaonavi Inc.
9 ϓϩδΣΫτհ
ϓϩδΣΫτհ 10 γʔτཤྺػೳͷ։ൃ l ։ൃظؒ ɿ̍ l ։ൃख๏ ɿΞδϟΠϧʢεΫϥϜʣ l
نײ ɿ̓ʙ໊̔
ϓϩδΣΫτհ 11 جຊใ l ࢯ໊ l ࣾһ൪߸ l ॴଐ l
ೖࣾ l ʜ l ༣ศ൪߸ l ಓݝ l ࢢ۠ொଜ l ொ໊ɾ൪ l ΞύʔτɾϚϯγϣϯ໊ l ʜ ݱॅॴ ࢁా ଠ γʔτ γʔτ
12 ϓϩδΣΫτհ ΤϯδχΞ 2"ΤϯδχΞ σβΠφʔ 10 εΫϥϜϚελʔ
13 ϓϩδΣΫτհ εϓϦϯτ ϓϥϯχϯά εϓϦϯτ ϨτϩεϖΫςΟϒ εϓϦϯτϨϏϡʔ σΠϦʔεΫϥϜ ຖ िؒ
ϦϦʔε
14 ࠔΓ͝ͱͱͦͷղܾํ๏
ࠔΓ͝ͱͱͦͷղܾํ๏ 15 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍ ͋Γ·ͤΜͱ͍͏
16 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍
17 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ l ։ൃਐḿ͕ѱ͔ͬͨ l ΤϯδχΞؒͰɺղܾ͢ΔͨΊʹ৭ʑࢼ͍ͯͨ͠ l 10͔ΒΤϯδχΞͰͷऔΈ͕ݟ͑ͣɺগ͠ෆ৴ײ͕ग़ͯ͠·ͬͨ l
ϑϧϦϞʔτͰͷࣄͩͬͨͷͰɺ༨ܭʹݟ͑ʹ͘͘ͳ͍ͬͯͨ
18 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ ͬͯΈͨ͜ͱ l 10ͱϦʔυΤϯδχΞͰPOΛߦ͏
19 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ POͷৄࡉ l ස ɿि̍ճ l ࣌ؒ ɿ̏̌
l ͢༰ɿࠔΓ͝ͱϞϠϞϠ͍ͯ͠Δ͜ͱͷڞ༗
20 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ Ͳ͏ͳ͔ͬͨ l ࠣࡉͳҾֻ͔ͬΓΛղফग़དྷͨ l ಉ͡ํΛ͍ͯࣄ͕ग़དྷ͍ͯΔ͜ͱΛఆظతʹ֬ೝͰ͖ͨ l ͦΕʹΑΓɺ͓ޓ͍ͷ৴པ্͕ͨ͠
21 ࠔΓ͝ͱͱͦͷղܾํ๏ 10ͱΤϯδχΞͰ্ख͘࿈ܞ͕औΕͳ͍ l ಛʹͳ͠ l ͠Β͘εΫϥϜϚελʔʹ ؒʹೖͬͯΒͬͨ l ΞδΣϯμΛ࡞Βͳ͔ͬͨ
ͬͯྑ͔ͬͨ͜ͱ ͬͯඍົͩͬͨ͜ͱ
22 ࠔΓ͝ͱͱͦͷղܾํ๏ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍
23 ࠔΓ͝ͱͱͦͷղܾํ๏ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍ l ઃܭͷ૬ஊΛ͢Δ͕࣌ؒଟ͘ൃੜ͍ͯͨ͠ l ઃܭͷ࣌ؒෆ֬ఆཁૉ͕ଟ͘ɺϓϥϯχϯά࣌ʹਖ਼֬ͳ࣌ؒΛݟੵΔ ͷ͔ͬͨ͠ ˞͜͜Ͱͷʮઃܭʯͱ l
ৄࡉઃܭϓϩάϥϜઃܭΈ͍ͨͳͷ l ࣮ࡍʹରͷΫϥεʹରͯ͠Ͳ͜·ͰΛ࣋ͨͤΔ͔ʁͳͲ
24 ࠔΓ͝ͱͱͦͷղܾํ๏ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍ ͬͯΈͨ͜ͱ l ϓϥϯχϯάͷલʹઃܭΛઃ͚ͯɺઃܭʹूத͢Δ࣌ؒΛ࡞ͬͨ l ઃܭΛϞϒϓϩͰͬͯΈͨ
25 ࠔΓ͝ͱͱͦͷղܾํ๏ CFGPSF ϓϥϯχϯά ઃܭ ࣮ ઃܭ ϓϥϯχϯά ࣮ BGUFS
26 ࠔΓ͝ͱͱͦͷղܾํ๏ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍ Ͳ͏ͳ͔ͬͨ l ෆ֬ఆཁૉ͕ݮΓɺϓϥϯχϯάͷਫ਼্͕͕ͬͨ l εϓϦϯτͰୡ͖͢͜ͱ͕໌֬ʹͳΓɺϞνϕʔγϣϯ্͕͕ͬͨ l ҰॹʹઃܭΛ͢Δ͜ͱͰɺ࣮ํͷบ͕ἧ͏Α͏ʹͳͬͨ
27 ࠔΓ͝ͱͱͦͷղܾํ๏ ϓϥϯχϯάͲ͓Γʹ։ൃ͕ਐ·ͳ͍ l ϓϥϯχϯάͰઃܭ͢Δ l εϓϦϯτͷ࠷ऴʹઃܭ Λઃ͚Δ l ઃܭͰ۩ମతͳ࣮ํ๏
ίʔσΟϯά༰ܾΊͳ͍ l ઃܭͰίϝϯτ͚ͩΛॻ͘ ͬͯྑ͔ͬͨ͜ͱ ͬͯඍົͩͬͨ͜ͱ
28 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏
29 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ l σΠϦʔεΫϥϜͷ ༰͕ࣅ௨ͬͯ͘Δ l ୶ʑͱࡢͱࠓͷ͕͋Γɺࠔ͍ͬͯΔ͜ͱͳ͍ ͰऴΘΔ l
͔͠͠ɺͳΜͱͳ্͘ख͘ߦ͍ͬͯΔ l ͕͋ͬͯগ͠ݴ͍ͮΒ͍ ঢ়گʢʁʣ
30 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ ͬͯΈͨ͜ͱ l ͪΐͬͱͨ͠͝ͱΛ 5SFMMPͰΧʔυ ʹͯ͠Βͬͨ l σΠϦʔεΫϥϜͷΞδΣϯμʹɺ5SFMMPͷ֬ೝͷ࣌ؒΛՃ
ͨ͠
31 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ 5SFMMPͷϦετ l ഉআ͍ͨ͠োɾࠔΓ͝ͱ l ͍͋·͍ͳ͜ͱ l ֬ೝɾରԠத
l ྃ
32 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ 5SFMMPͷϦετ l ഉআ͍ͨ͠োɾࠔΓ͝ͱ l ϓϩδΣΫτͷਐḿΛ્͢ΔΑ͏ͳཁҼΛॻ͍ͯஔ͘ॴ l ͍͋·͍ͳ͜ͱ
l Ͳ͏ͳ͍ͬͯΔͷ͔͍ͯ͠Δ͜ͱΛॻ͍ͯஔ͘ॴ
ࠔΓ͝ͱͱͦͷղܾํ๏ 33
34 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ Ͳ͏ͳ͔ͬͨ l ͪΐͬͱͨ͜͠ͱͰॻ͍ͯ͘Εͨ l ʹײ͍͕ͯͨ͡ɺேʹͳΔͱΕ͍ͯΔঢ়گ͕ݮͬͨ l ݦࡏԽ͍ͯ͠ͳ͍ΛૣΊʹͰ͖ΔΑ͏ʹͳͬͨ
35 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ l ϑΝΠϒϑΟϯΨʔ l ࢥ͍͍ͭͨλΠϛϯάʹ͙͢ هࡌͰ͖ΔॴΛͭ͘Δ l σΠϦʔεΫϥϜͰඞͣ৮ΕΔ
ͬͯྑ͔ͬͨ͜ͱ ͬͯඍົͩͬͨ͜ͱ
36 ࠔΓ͝ͱͱͦͷղܾํ๏ ͋Γ·ͤΜͱ͍͏ ϑΝΠϒϑΟϯΨʔ l ยखͷຊͷࢦͰࠓͷؾ࣋ͪঢ়گΛද͢؆୯ͳΞϯέʔτ l σΠϦʔεΫϥϜͰʮεϓϦϯτΰʔϧʹରͯ͠ͷਐḿʯʹ͍ͭͯฉ͍ͨ l ͕ಇ͍ͯɺগ͠ଟ͍ࣈΛग़ͯ͠͠·͏͜ͱ͕ଟ͔ͬͨ
l ͺͬͱৼΒΕΔͱযͬͪΌ͏ਓ͕͍ΔνʔϜʹ͔ͳ͍
·ͱΊ 37
·ͱΊ 38 ؾʹͳΔ͋Γ·ͨ͠Ͱ͠ΐ͏͔ʁ l ͜ͷ··ಋೖ্ͯ͠ख͘ߦ͔ͳ͍͜ͱ͕ଟ͍ͣ l ಋೖ͔ͯ͠ΒʮΧΠθϯʯ͢Δ͜ͱ͕ॏཁ l ͱΓ͋͑ͣͬͯΈΔྫͱͯ͠׆༻ͯ͠ཉ͍͠ l
ϋοϐʔͳνʔϜ։ൃϥΠϑΛʂ
© kaonavi Inc. 8&"3&)*3*/( IUUQTDPSQLBPOBWJKQSFDSVJUMJTU