Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
磯野、モブプログラミングやろうぜ!! #モブの宮 #mobnomiya
Search
TAKAKING22
September 10, 2017
Technology
3
12k
磯野、モブプログラミングやろうぜ!! #モブの宮 #mobnomiya
2017年9月10日(日)モブの宮にて。
TAKAKING22
September 10, 2017
Tweet
Share
More Decks by TAKAKING22
See All by TAKAKING22
受託開発でもアジャイル開発できました / Agile in Contract Development
takaking22
19
7.4k
AI時代のアジャイル開発(XP祭り2024版) / Agile Development in the AI Era in XPJUG
takaking22
13
4.2k
我々はなぜテストを書くのか / Why we write test codes
takaking22
7
1k
AI時代のアジャイル開発 / Agile Development in the AI Era
takaking22
2
820
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい5個のコツ - / How to start Scrum that is not written in the Scrum Guide
takaking22
21
7.5k
よいチームをよい雰囲気を保ったままよい組織にスケールさせていくためにできること / What you can do to scale a good team into a good organization
takaking22
12
5.7k
Open Space Technology Introducion (EN)
takaking22
2
170
オープンプロポーザルの文化をよいものにしたい / improve the culture of open proposals
takaking22
1
1.1k
いきいきした受託開発をするためにアジャイルチームができること / What Agile Teams Can Do for Lively Contract Development
takaking22
2
2.8k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2024年11月度サービス・アップデート
oracle4engineer
PRO
0
180
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
150
[DevFestTokyo]Accelerating Flutter App Development Using Generative AI
korodroid
1
260
店舗向けSaaSにおける 顧客要望活用の実践アプローチ(20241205_pmconf)
yujirooo
0
2.4k
How is Cilium Tested?
yutarohayakawa
5
240
論理レプリケーションを使ったDB統合
kkato1
0
130
マルチプロダクト、マルチデータ基盤での Looker活用事例 〜BQじゃなくてもLookerはいいぞ〜
gappy50
0
130
農業用ダム監視を目的とした衛星SAR 干渉解析の適用性について
osgeojp
0
140
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
0
230
241130紅白ぺぱ合戦LT「編集の技術」
toya524287
5
610
Replit Agent
kawaguti
PRO
2
130
ポストモーテムレビューをブレームレスに運営し有効な改善アクションを引き出すために必要だったこと / What is needed to operate postmortem blamelessly and elicit improvement actions
yamaguchitk333
0
180
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Adopting Sorbet at Scale
ufuk
73
9.1k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Facilitating Awesome Meetings
lara
50
6.1k
The Cost Of JavaScript in 2023
addyosmani
45
6.9k
The Invisible Side of Design
smashingmag
298
50k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Writing Fast Ruby
sferik
627
61k
Transcript
!5",",*/( үɺϞϒϓϩάϥϛϯάΖ͏ͥ 2017/09/10 Ϟϒͷٶ Takao Oyobe (@TAKAKING22) Rakuten, Inc.
!5",",*/( !5",",*/( ٴ෦ܟ༤ ָఱגࣜձࣾΠϯΩϡϕʔγϣϯ։ൃ෦ Ұൠࣾஂ๏ਓΞδϟΠϧνʔϜΛࢧ͑ΔձΛࢧ͑Δձ ۭલઈޙͷΞδϟΠϧϞϯελʔ ઈౖ౭ͷے୲ ਪ͠ϝϯɿࢁຊ࠼
!5",",*/( Ϟϒϓϩͷਓ IUUQTTQFBLFSEFDLDPNUBLBLJOHNPCVQVSPHVSBNJOHVUPJVEPOHLJGBOHOVNCFSEFWMPWF
!5",",*/( ࠓͷ͓ ࣮ࡍʹϞϒϓϩάϥϛϯάΛମݧ͢Δલʹɺ Ϟϒϓϩάϥϛϯάͱ͍͏ಇ͖ํΛ օ͞ΜΑΓͪΐͬͱઌʹݱͰ࢝ΊͯΈͨܦݧ ͦ͜Ͱಘֶͨͼʹ͍͓ͭͯ͠·͢ɻ ମݧΛ͢Δ࣌ʹࣗͷݱͩͬͨΒʜ Λࢥ͍ු͔ΒΕΔΑ͏ʹΠϝʔδΛΒ·ͯ͠ΈͯԼ͍͞ʂʂ
!5",",*/( Ϟϒϓϩάϥϛϯάͱɺ νʔϜશһͰ ✓ ಉ͡ࣄΛ ✓ ಉ࣌ؒ͡ʹ ✓ ಉ͡ॴͰ ✓
ಉ͡ίϯϐϡʔλʔͰ ͢Δ͜ͱ
!5",",*/( Ϟϒϓϩάϥϛϯά ✓ ࠒʹ)VOUFS*OEVTUSJFT͕࢝Ίͨ ✓ "HJMFͰ8PPEZ;VJMM͕հͨ͠ ✓ ݄ʹॳΊͯͷ.PC1SPHSBNNJOH $POGFSFODF͕։࠵͞Εͨ
!5",",*/( IUUQTXXXZPVUVCFDPNXBUDI WQ@QWTM4H&* "EBZJOUIF)VOUFS*OEVTUSJFTMJGFJO
!5",",*/( )VOUFS*OEVTUSJFTͷϞϒϓϩάϥϛϯά ✓ ͭͷ෦ॺʢਓʣ͕ಋೖΛ͍ͯ͠Δ ✓ ͭͷϞϒʹࢀՃ͍ͯ͠Δͷʙਓ͕ଟ͍ ✓ ৗʹϞϒϓϩάϥϛϯάΛ͍ͯ͠Δ ✓ Ϟϒͷग़ೖΓࣗ༝
✓ ߩݙͰ͖ͳ͔ͬͨΒྡͷϞϒʹҠಈͯ͠Α͍
!5",",*/( ࢲͨͪͷϞϒϓϩάϥϛϯά
!5",",*/( )VOUFS*OEVTUSJFTͷ൴Βɺ ϓϥΫςΟεͱͯ͠Ͱͳ͘ ಇ͖ํͱͯ͠Ϟϒϓϩάϥϛϯά Λ͍ͬͯΔײ͡ )VOUFS*OEVTUSJFTΛ๚ͨ͠ޱ͞Μᐌ͘ɺ ͳͥϞϒϓϩάϥϛϯάΛ࢝Ίͨͷ͔ ʘͳʹͦΕɺΊͬͪΌ໘നͦ͏ʗ
!5",",*/(
!5",",*/( σΟεϓϨΠ 1$
!5",",*/( υϥΠόʔ φϏήʔλʔ φϏήʔλʔ φϏήʔλʔ φϏήʔλʔ (6&45
!5",",*/( ϓϩςΠϯ ).#
!5",",*/( ࢲͨͪͷϞϒϓϩάϥϛϯά ✓ ৗʹϞϒϓϩάϥϛϯά ✓ Ϟϒͷग़ೖΓࣗ༝ ✓ ϧʔϧࡉ͔ܾ͘ΊͣʹΓͳ͕Βม͍͑ͯ͘ ಇ͖ํͱͯ͠ͷϞϒϓϩάϥϛϯάΛ࢝ΊͯΈΔ
!5",",*/( ࢲͨͪͷνʔϜ ✓ ਓνʔϜ ✓ ৽نαʔϏεͷ্ཱͪ͛Λ10$͔Β࣮ࢪ ✓ ΰʔϧৗʹมԽ͢Δ ✓ ϓϩμΫτ։ൃӦۀͳΜͰΔ
اۀϦʔϯελʔτΞοϓνʔϜ
!5",",*/( ݸਓࣗ༝࣌ؒ Ϟϒελʔτηογϣϯ Ϟϒϓϩάϥϛϯά Ϟϒϥϯν Ϟϒϓϩάϥϛϯά Ϟϒ;Γ͔͑Γ ҰͷྲྀΕ
!5",",*/( Ϟϒϓϩάϥϛϯάʹ͍ͭͯ;Γ͔͑ͬͯΈͨ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ਓ͕ू·ͬͯͷίϯϐϡʔλʔͰ ࣄΛ͢ΔͳΜͯੜ࢈ੑԼ͕ΔΜ͡Όͳ͍ͷʁ ͜͏͍͏ٙΛ͍࣋ͬͯ·ͤΜ͔ʁ
!5",",*/( ୲࡞ۀͷ߹ ࢲୡͷීஈͷࣄΛੳͯ͠ΈΔͱʜ ࣮ಉظͷͨΊͷ͕࣌ؒଟ͘ɺ ࣮ࡍʹ࡞ۀΛ͍ͯ͠Δ࣌ؒҙ֎ͱগͳ͍ ˰୲͢ΔͨΊͷಉظɾ࡞ۀΛϚʔδ͢ΔͨΊͷಉظ FYேྱɺઃܭɺΩοΫΦϑɺೝࣝ߹Θͤʜ FYϨϏϡʔɺঝೝɺ;Γ͔͑Γʜ
!5",",*/( ୲࡞ۀͷ߹ ͪΖΜϛείϛϡχέʔγϣϯʹΑͬͯ खΓΛ͢Δͱ༨ܭʹ͕͔͔࣌ؒΔ ࢲୡͷීஈͷࣄΛੳͯ͠ΈΔͱʜ
!5",",*/( Ϟϒͷ߹ ৗʹҰॹʹࣄΛ͍ͯ͠ΔͷͰɺ ಉظͷͨΊͷ࡞ۀҰඞཁͳ͍ ࢲୡͷීஈͷࣄΛੳͯ͠ΈΔͱʜ
!5",",*/( Ϟϒͷ߹ ʮͬͯͳ͍ʯͰͳͯ͘ৗʹʮ͍ͬͯΔʯ ઃܭɺϨϏϡʔɺઃܭɺ߹ҙɺܭըɺݟੵΓʜ ࢲୡͷීஈͷࣄΛੳͯ͠ΈΔͱʜ
!5",",*/( ✓ ϛείϛϡχέʔγϣϯ ✓ ߹ҙܗ্ͷ ✓ ڊେͳϫʔΫϑϩʔ ✓ ݫ֨ͳϧʔϧ ✓
ͨ͘͞ΜͷϛʔςΟϯά ੜ࢈ੑΛഁյ͢Δͷͨͪ FUD
!5",",*/( ✓ ேྱ ✓ ίϛϡχέʔγϣϯͷͨΊͷϛʔςΟϯά ✓ ߹ҙܗͷͨΊͷυΩϡϝϯτ ✓ ϨϏϡʔશൠʢιʔείʔυɺυΩϡϝϯτʣ ✓
(JU'MPX ✓ Χϯόϯ ✓ ݟੵΓ ϞϒΛ࢝Ίͯͳ͘ͳͬͨͷ
!5",",*/( ✓ ఆϢʔβʔɾϏδωεϝϯόʔʹ εϐʔυͰڻ͖Λ༩͑ΒΕͨ ✓ ٕज़తʹϋϚΔ͕࣌ؒ࠷খݶʹͳΔ ✓ ޙ͍ίϛϡχέʔγϣϯ͕ෆཁʹͳΔ ✓ ಇ͘͜ͱʹूதͰ͖Δ
ੜ࢈ੑɾ։ൃεϐʔυ
!5",",*/( ਓ͕ू·ͬͯͷίϯϐϡʔλʔͰ ࣄΛ͢ΔͳΜͯੜ࢈ੑԼ͕ΔΜ͡Όͳ͍ͷʁ ͜͏͍͏ٙΛ͍࣋ͬͯ·ͤΜ͔ʁ ࢲͨͪੜ࢈ੑͷ͜ͱߟ͍͑ͯͳ͍͚Ͳɺ ϞϒϓϩάϥϛϯάϦʔϯͩͱ࣮ײ͍ͯ͠Δ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ͓ޓ͍ͷಘҙΛิ͠߹͑Δ ✓ Θ͔Βͳ͍͜ͱΛڭ͑߹͑Δ ✓ ॻ͖ํਐΊํʹର͢Δߟ͑ํ͍Λ ৗʹ͢Γ߹ΘͤΔ͜ͱ͕Ͱ͖Δ ✓ શһͰμϝͳΒ͠ΐ͏͕ͳ͍ͱࢥ͑Δ
✓ ୡײΛڞ༗Ͱ͖Δ ৺ཧత҆શੑ
!5",",*/( ʮͬͨʔʂʂʯΛڞ༗Ͱ͖Δ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ৗʹશһ͕͍ͬͯΔঢ়ଶΛ࡞ΕΔ ✓ ݁Ռ͚ͩ͡Όͳ͘աఔɾܦҢ͕Θ͔Δ ✓ ํΛৗʹ͢Γ߹ΘͤΒΕΔ ϊϋɾεΩϧൖ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ ࣄ ࣝൣғ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ ୲࡞ۀͷ߹ "͞Μͷࣝൣғ ͳͷͰରԠՄೳ "͞Μͷࣝൣғ֎Ͱɺ #͞ΜʹϨϏϡʔͯ͠
Βͬͨ߹ͷΈ ϑΥϩʔՄೳ "͞Μͷࣝൣғ֎Ͱɺ $͞ΜʹϨϏϡʔͯ͠ Βͬͨ߹ͷΈ ϑΥϩʔՄೳ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ Ϟϒͷ߹ ରԠՄೳ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ৗʹνʔϜʹର͕ੜ·Ε͍ͯΔ ✓ ಈ͘ϓϩμΫτ͕νʔϜͷத৺ʹ͋Δ ✓ िϖʔεͰސ٬ʹձ͍͑ͯΔ ✓ ܭըৗʹมԽ͍ͯ͠Δ ϓϩμΫτ։ൃ
!5",",*/( ͦͦৗʹରΛ͠ͳ͍ͱࣄ͕ਐ·ͳ͍
!5",",*/( ಈ͘ϓϩμΫτ ϝλϑΝͱͯ͠ಈ͘ϓϩμΫτ͕ৗʹνʔϜͷத৺ʹ͋Δ
!5",",*/( ✓ ৗʹνʔϜʹର͕ੜ·Ε͍ͯΔ ✓ ಈ͘ϓϩμΫτ͕νʔϜͷத৺ʹ͋Δ ✓ िϖʔεͰސ٬ʹձ͍͑ͯΔ ✓ ܭըৗʹมԽ͍ͯ͠Δ ϓϩμΫτ։ൃ
͜Εͬͯɾɾɾʂʁ
!5",",*/( IUUQBHJMFNBOJGFTUPPSHJTPKBNBOJGFTUPIUNM
!5",",*/( ͓·͚
!5",",*/( ۚ IUUQTXXXFWFOUCSJUFDPNFIVOUFSSFHJTUSBUJPO
!5",",*/( )VOUFS*OEVTUSJFT ͷΫϦεདྷ·͢ IUUQTUFDISBLVUFODPKQ
!5",",*/( IUUQTXXXGBDFCPPLDPNHSPVQT.PC-07& Ϟϒϓϩؔ࿈ͷ ใ͕ू·͖ͬͯ·͢
!5",",*/( IUUQTHJUIVCDPNZBUUPN.PC1SPHBNNJOH1BUUFSOTXJLJ
!5",",*/( ϞϒϓϩͱϖΞϓϩͷҧ͍ʁ ਐΊΔྲྀΕҙڞ௨͕ଟ͍Ͱ͢ɻ lಉظzΛ͢Δ͔͠ͳ͍͔͕ҧ͏ͱࢥ͍·͢ɻ ϖΞϓϩͷ߹ଞͷϖΞ͍ΔͷͰ ࡞ۀͷಉظඞཁͰ͕͢ɺ Ϟϒϓϩͷ߹ࣄʹਓ͕ू·ΔΠϝʔδ ͳͷͰಉظඞཁ͋Γ·ͤΜɻ
!5",",*/( ͬͯΈ͚ͨͲ͏·͍͔͘ͳ͔ͬͨ ͏·͍͔͘ͳ͍͜ͱ͕ൃݟͰ͖ͯΑ͔ͬͨ Ͱ͢Ͷɻ ͦͷ͏·͍͔͘ͳ͔ͬͨཧ༝Ϟϒϓϩ͕ ݪҼͰͳͯ͘νʔϜʹજࡏతʹଘࡏͯ͠ ͍͔ͨ͠Ε·ͤΜɻ
!5",",*/( ަͷλΠϛϯάʁ ࢲୡΩϦ͕͍͍λΠϛϯάͰมΘΔ ʮมΘΕʯʢզ͕ՈํࣜʣͰ͢ɻ λΠϚʔͰ࣌ؒΛܭͬͯຖʹมΘΔ ͳͲΛΒΕ͍ͯΔํ͍ΔΑ͏Ͱ͢ɻ
!5",",*/( εΩϧʹΒ͖͕ͭ͋Δ߹ʁ ʮࠓͷΘ͔Βͳ͔ͬͨʯॏཁͳใͰ͢ɻ ͨͩɺ͔ͳΓ͍͍νʔϜͰͳ͍ͱݴ͍ग़͠ ʹ͍͘͜ͱ͋ΔͷͰɺ͑ͯෆ׳Εͳਓʹ υϥΠόʔΛ୲ͯ͠Βͬͯ ʮϒϨʔΩΛ౿ΉݖརʯΛ্खʹ׆༻͢ Δ͜ͱΛ͓͢͢Ί͠·͢ɻ
!5",",*/( ·ͱΊ
!5",",*/( ✓ ͳͥࣄΛ୲͢Δඞཁ͕͋ΔͷͩΖ͏͔ ✓ ࣄΛ୲͢Δํ͕ޮతͳͷͩΖ͏͔ ✓ ͳͥಉظ͢Δඞཁ͕͋ΔͷͩΖ͏͔ ✓ ͳͥϒϥϯνΛ͏ඞཁ͕͋ΔͷͩΖ͏͔ ઌೖ؍ʹ͍࣋ͬͯͳ͍ͩΖ͏͔ʁ
!5",",*/( IUUQTTQFBLFSEFDLDPNUBLBLJOH IUUQTXXXTMJEFTIBSFOFU5BLBP0ZPCFQSFTFOUBUJPOT ࠷ऴతʹʮͬͱҰॹʹಇ͚͍͍ʯ ͱ͍͏݁ʹͳΔ͜ͱ͕ଟ͍
!5",",*/( ιϑτΣΞ։ൃ্ͷͷଟ͘ɺ ٕज़తͱ͍͏ΑΓࣾձֶతͳͷͰ͋Δ τϜɾσϚϧίςΟϞγʔɾϦελʔʢϐʔϓϧΣΞʣ
!5",",*/( ୲͢Δ͜ͱΛલఏʹɺ ͦͷͨΊͷίϛϡχέʔγϣϯΛ ͏·͘Ζ͏ͱ͍͗ͯ͢͠ͳ͔ͬͨͩΖ͏͔
!5",",*/( ϓϩμΫτ͕ಈ͍ͨ࣌ɺ ϓϩμΫτΛ͓ͬͨ٬͞Μ͕تΜͰ͘Εͨ࣌ɺ ؒͱҰॹʹʮͬͨʔʂʂʯͱݴ͍ͬͯ·͔͢ʁ
!5",",*/( ࢥ͍ग़ͤͯ͘͞Εͨͷ͕Ϟϒϓϩάϥϛϯάͩͬͨ
!5",",*/( ୭͕͜ͷಇ͖ํΛؾʹೖΔΘ͚Ͱͳ͍ ҙ
!5",",*/( ϞϒϓϩάϥϛϯάΛɺ ͬͯΈͯ ͬͯΈͳͯ͘ ͬͯΈͯ͏·͍͔͘ͳͯ͘ ͳΜ͍͍ͩͬͯ
!5",",*/( ूஂ ✓ ूஂʹਓͷू߹ ✓ ΞαΠϯ͞Εͯ͜ͳ͢ ✓ ड͚ͳ࢟ νʔϜ
✓ νʔϜʹ ✓ νʔϜʹߩݙ͢Δ ✓ ೳಈతͳ࢟ lू·ͬͯ͘Δz lूΊΒΕΔz
!5",",*/( νʔϜͱ৺ཧత҆શੑͷؔ ৺ཧతʹ҆શ͔ͩΒ ਓ͕ू·ͬͯ͘Δ
!5",",*/( Ϟϒϓϩάϥϛϯά·͞ʹ͜ͷߏਤ Ϟϒ
!5",",*/( ࣗͷνʔϜʹ͍ͭͯɺ ࢦ͢νʔϜʹ͍ͭͯߟ͑Δ͖͔͚ͬ ʹͳΔ͔͠Εͳ͍
!5",",*/( -FUT.PC !5",",*/(