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
モブプログラミングという働き方 #DevLOVE
Search
TAKAKING22
June 18, 2017
Technology
47
160k
モブプログラミングという働き方 #DevLOVE
2017年6月18日(日)DevLOVE 200 Bridgeにて。
TAKAKING22
June 18, 2017
Tweet
Share
More Decks by TAKAKING22
See All by TAKAKING22
受託開発でもアジャイル開発できました / Agile in Contract Development
takaking22
18
7.3k
AI時代のアジャイル開発(XP祭り2024版) / Agile Development in the AI Era in XPJUG
takaking22
13
4.1k
我々はなぜテストを書くのか / Why we write test codes
takaking22
7
980
AI時代のアジャイル開発 / Agile Development in the AI Era
takaking22
2
800
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい5個のコツ - / How to start Scrum that is not written in the Scrum Guide
takaking22
21
7.4k
よいチームをよい雰囲気を保ったままよい組織にスケールさせていくためにできること / What you can do to scale a good team into a good organization
takaking22
12
5.6k
Open Space Technology Introducion (EN)
takaking22
2
160
オープンプロポーザルの文化をよいものにしたい / improve the culture of open proposals
takaking22
1
1k
いきいきした受託開発をするためにアジャイルチームができること / What Agile Teams Can Do for Lively Contract Development
takaking22
2
2.8k
Other Decks in Technology
See All in Technology
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
490
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
Lexical Analysis
shigashiyama
1
150
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
180
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
450
SDN の Hype Cycle を一通り経験してみて思うこと / Going through the Hype Cycle of SDN
mshindo
1
120
The Role of Developer Relations in AI Product Success.
giftojabu1
1
140
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
710
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
220
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
組織成長を加速させるオンボーディングの取り組み
sudoakiy
2
220
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Producing Creativity
orderedlist
PRO
341
39k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Documentation Writing (for coders)
carmenintech
65
4.4k
For a Future-Friendly Web
brad_frost
175
9.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Building Adaptive Systems
keathley
38
2.3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Transcript
!5",",*/( Ϟϒϓϩάϥϛϯάͱ͍͏ಇ͖ํ ϞϒϓϩάϥϛϯάΛ௨ͯ͠ݟͨΞδϟΠϧͷਅ 2017/06/18 DevLOVE 200 Bridge Takao Oyobe (@TAKAKING22)
Rakuten, Inc.
!5",",*/( ݩؾ ࠓͷ͓࢈
!5",",*/( ҙࣄ߲ 0, ࣸਅࡱӨ0,Ͱ͢ γϟολʔԻʹ͝ҙΛ εϥΠυެ։ࡁͰ͢ ձࣾશମͷ͠·ͤΜ ࢲୡͷͰ͢ʢυϯʣ ڭՊॻͷ͠·ͤΜ ࢲୡͷͰ͢ʢυϯʣ
Ϟϒϓϩάϥϛϯά ۜͷؙͰ͋Γ·ͤΜ ແԻΧϝϥΞϓϦ͕͋Δͦ͏Ͱ͢
!5",",*/( ճ͓ΊͰͱ͏͍͟͝·͢
!5",",*/( ॳΊͯͷίϛϡχςΟࢀՃˍൃද%FW-07&Ͱͨ͠ IUUQTXXXTMJEFTIBSFOFUEBJQSFTFOUTEFWMPWFIBOHBSGMJHIUTOPXCBSSBHF
!5",",*/( !5",",*/( ٴ෦ܟ༤ ָఱגࣜձࣾΠϯΩϡϕʔγϣϯ։ൃ෦ Ұൠࣾஂ๏ਓΞδϟΠϧνʔϜΛࢧ͑ΔձΛࢧ͑Δձ ۭલઈޙͷΞδϟΠϧϞϯελʔ ઈౖ౭ͷے୲ ਪ͠ϝϯɿࢁຊ࠼
!5",",*/( ΤϯδχΞྺ ΞδϟΠϧྺ
!5",",*/( ࢲͷΞϓϩʔνํ๏ ΤϯδχΞͷཱͰ lϓϩμΫτͷޭͷͨΊz νʔϜͱҰॹʹվળ׆ಈΛͯ͠Ұॹʹ͢Δ CZ64"SNZ$PSQTPG&OHJOFFST IUUQTHPPHM38+QK
!5",",*/( Α͘Δ͜ͱ ✓ ;Γ͔͑Γ ✓ 4DSVN ✓ 91 ✓ %FW0QT
✓ ৫վળʢະདྷձٞʣ
!5",",*/( େͩͱࢥ͏͜ͱ 8IZ 8IBU )PX 4501 $0/5*/6& )PXͷલʹ 8IZͱ8IBUΛߟ͑Δ
ͷৎʹ߹Θͤͨ վળΛண࣮ʹ౿Ή ΊΔ͜ͱɾଓ͚Δ͜ͱ Λৗʹҙࣝ͢Δ νʔϜશһͰ νʔϜͷͨΊʹߟ͑ͯ νʔϜͷखʹΑͬͯਐΊΔ
!5",",*/( IUUQTTQFBLFSEFDLDPNUBLBLJOH IUUQTXXXTMJEFTIBSFOFU5BLBP0ZPCFQSFTFOUBUJPOT
!5",",*/( ෳͷݱͰ܁Γฦ͠࠶ݱ͖ͯͯ͠ ͜Ε͔ΒͨͿΜͰ͖ΔͰ͋Ζ͏ࣗ৴͋Δ ݱঢ়ΛΓɺ Λચ͍ग़͢ ༏ઌॱҐΛ͚ͭΔ ࣮ͭͣͭ֬ʹ ղܾΛ͢Δ νʔϜͷͱ Ϗδωεͷߩݙ
!5",",*/( ΤϯδχΞϦϯά νʔϜ Ϗδωε ϓϩμΫτ։ൃʹ͓͚Δཁૉ
!5",",*/( ΤϯδχΞϦϯά νʔϜ Ϗδωε ϓϩμΫτ։ൃʹ͓͚Δཁૉ ͜ͷ͋ͨΓ͔Βೖͬͯ
!5",",*/( ΤϯδχΞϦϯά νʔϜ Ϗδωε ϓϩμΫτ։ൃʹ͓͚Δཁૉ গ͍ͣͭ͛ͯ͘͠ Πϝʔδ
!5",",*/( ͕͔͔ͦͦ࣌ؒ͜͜Δ͠ɺ ຊͷಆ͍ͦͷઌʹ͋Δ 1IPUPCZ4QFODFS)BSSJT IUUQTHPPHMJ)C3O
!5",",*/( IUUQRJJUBDPN5",",*/(JUFNTFEGCFBCBE
!5",",*/( ࠓͷ͓ ΞδϟΠϧ։ൃΛ௨ͯ͡ ݱͷղܾͱ͖߹͍ଓ͚͖ͯͨࢲ͕ɺ Ϟϒϓϩάϥϛϯάͱ͍͏ಇ͖ํΛ ͡ΊͯΈͯಘΒΕֶͨͼؾ͖ͱɺ ͦͷதͰݟͨΞδϟΠϧͷਅʹ͍͓ͭͯ͠·͢ɻ
!5",",*/( Ϟϒϓϩάϥϛϯάͱ ✓ νʔϜશһ͕Օॴʹू·ͬͯɺ ͭͷը໘ɾͭͷ1$Ͱ࡞ۀΛߦ͏͜ͱ ✓ ࠒʹ)VOUFS͕ࣾऔΓΈ࢝Ίͨ ✓ "HJMFͰ8PPEZ;VJMM͕հͨ͠ ✓
݄ʹॳΊͯͷ.PC1SPHSBNNJOH $POGFSFODF͕։࠵͞Εͨ
!5",",*/( IUUQTXXXZPVUVCFDPNXBUDI WQ@QWTM4H&*
!5",",*/( )VOUFSࣾͷϞϒϓϩάϥϛϯά ✓ ͭͷ෦ॺʢਓʣ͕ಋೖΛ͍ͯ͠Δ ✓ ͭͷϞϒʹ͖ʙਓ͕ଟ͍ ✓ ৗʹϞϒϓϩάϥϛϯάΛ͍ͯ͠Δ ✓ Ϟϒͷग़ೖΓࣗ༝
✓ ߩݙͰ͖ͳ͔ͬͨΒྡͷϞϒʹҠಈͯ͠Α͍
!5",",*/( )VOUFSࣾͷ൴Βɺ ϓϥΫςΟεͱͯ͠Ͱͳ͘ ಇ͖ํͱͯ͠Ϟϒϓϩάϥϛϯά Λ͍ͬͯΔײ͡ )VOUFSࣾΛ๚ͨ͠ޱ͞Μᐌ͘
!5",",*/( ॳΊͯͷϞϒϓϩάϥϛϯά
!5",",*/( :ͬͨ͜ͱ ✓ (8୩ؒͷؒͰ͓ࢼ͠Ϟϒϓϩάϥϛϯά ✓ ̐ਓνʔϜ ✓ ৽نࣄۀ্ཱͪ͛ͷͨΊͷ10$ ✓
ٕज़ݕূΛ݉ͶͯϑΝʔετϓϩτλΠϓΛ࡞ ˎ10$1SPPG0G$PODFQUʢ֓೦࣮ূʣ
!5",",*/(
!5",",*/( σΟεϓϨΠ 1$
!5",",*/( υϥΠόʔ φϏήʔλʔ φϏήʔλʔ φϏήʔλʔ φϏήʔλʔ (6&45
!5",",*/( ϓϩςΠϯ ).#
!5",",*/( ఆΑΓ͏·͍ͬͨ͘ͷͰʜ ✓ ؒͯ͠࠷ऴʹϏδωεϝϯόʔ͚ʹ σϞΛ൸࿐ͨ͠ ✓ σϞ൸࿐·Ͱʹࣾʹ͍ΔఆϢʔβʔʹ ෳճϑΟʔυόοΫΛΒͬͯଈ࣌ө
!5",",*/( 8Θ͔ͬͨ͜ͱɾͰ͖ͨ͜ͱ ✓ ϋϚͬͨΓ͠ͳ͕Β࣮֬ͳखԠ͑ΛಘΒΕͨ ✓ ؒͰϑΟʔυόοΫϧʔϓΛճճͤΒΕͨ ✓ ఆϢʔβʔɾϏδωεϝϯόʔΛεϐʔυײͰ ڻ͔ͤΔ͜ͱ͕Ͱ͖ͨ Ϟϒϓϩάϥϛϯάୡײ͕͋ͬͯർΕΔ͚Ͳָ͍͠
!5",",*/( 5࣍ʹΔ͜ͱ ✓ ಇ͖ํͱͯ͠ͷϞϒϓϩάϥϛϯάΛଓ͚ͯΈΔ
!5",",*/( ࢲͨͪͷϞϒϓϩάϥϛϯά ʲܧଓதʳ
!5",",*/( ࢲͨͪͷϞϒϓϩάϥϛϯά ✓ ৗʹϞϒϓϩάϥϛϯά ✓ Ϟϒͷग़ೖΓࣗ༝ ✓ ϧʔϧࡉ͔ܾ͘ΊͣʹΓͳ͕Βม͍͑ͯ͘ ✓ ϦʔϯελʔτΞοϓ
✓ ։ൃӦۀͳΜͰϞϒͰߦ͏ ಇ͖ํͱͯ͠ͷϞϒϓϩάϥϛϯάΛऔΓೖΕΔ
!5",",*/( ݸਓͷ׆ಈ࣌ؒ લ;Γ͔͑ΓˍࠓΔ͜ͱ Ϟϒϓϩάϥϛϯά ன৯ Ϟϒϓϩάϥϛϯά Ϟϒ;Γ͔͑Γ ҰͷྲྀΕ
!5",",*/( ϞϒϓϩάϥϛϯάΛϲ݄ܦͬͨͷͰৼΓฦͬͯΈͨ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ఆϢʔβʔɾϏδωεϝϯόʔʹ εϐʔυͰڻ͖Λ༩͑ΒΕͨ ✓ ٕज़తʹϋϚΔ͕࣌ؒ࠷খݶʹͳΔ ✓ ޙ͍ίϛϡχέʔγϣϯ͕ෆཁʹͳΔ ✓ ಇ͘͜ͱʹूதͰ͖Δ
ੜ࢈ੑɾ։ൃεϐʔυ
!5",",*/( ✓ ேྱ ✓ υΩϡϝϯτ ✓ ϨϏϡʔ ✓ (JU'MPX ✓
Χϯόϯ ✓ εϓϦϯτϓϥϯχϯά ✓ εϓϦϯτόοΫϩά ✓ ݟੵΓ ϞϒΛ࢝Ίͯͳ͘ͳͬͨͷ ˰࡞ۀใࠂෆཁ ˰ඞཁ࠷ݶͷΈ ˰ෆཁ ˰࡞ۀϒϥϯνෆཁ ˰ΧονϦͨ͠ͷෆཁ ˰ࠓͷϑΣʔζͰෆཁ ˰ࠓͷϑΣʔζͰෆཁ ˰ࠓͷϑΣʔζͰෆཁ
!5",",*/( ୲࡞ۀͷ߹ ࡞ۀͷ༰Λਂ۷Γͯ͠ΈΔͱʜ ୲ͨ͠࡞ۀͷಉظ ୲͢ΔͨΊͷίϛϡχέʔγϣϯ ͷ͕࣌ؒҙ֎ͱଟ͍ FY ✓ ϨϏϡʔ ✓
ೝࣝ߹Θͤ ✓ ใࠂձ ✓ ேྱ
!5",",*/( ୲࡞ۀͷ߹ ࡞ۀͷ༰Λਂ۷Γͯ͠ΈΔͱʜ ͪΖΜϛείϛϡχέʔγϣϯʹ ΑͬͯखΓΛ͢ΔՄೳੑ͋Δ
!5",",*/( Ϟϒͷ߹ ࡞ۀͷ༰Λਂ۷Γͯ͠ΈΔͱʜ ✓ ୲͢ΔͨΊͷίϛϡχέʔγϣϯඞཁͳ͍ ✓ νʔϜͷϛείϛϡχέʔγϣϯʹΑΔ खΓجຊతʹͳ͍
!5",",*/( Ϟϒͷ߹ ࡞ۀͷ༰Λਂ۷Γͯ͠ΈΔͱʜ ʮͬͯͳ͍ʯͰͳͯ͘ৗʹʮ͍ͬͯΔʯঢ়ଶ ;Γ͔͑ΓɺϨϏϡʔɺઃܭɺೝࣝ߹ΘͤɺݟੵΓɺܭըʜ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ͓ޓ͍ͷಘҙΛิ͠߹͑Δ ✓ Θ͔Βͳ͍͜ͱΛڭ͑߹͑Δ ✓ ॻ͖ํਐΊํʹର͢Δߟ͑ํ͍Λ ৗʹ͢Γ߹ΘͤΔ͜ͱ͕Ͱ͖Δ ✓ શһͰμϝͳΒ͠ΐ͏͕ͳ͍ͱࢥ͑Δ
✓ ୡײΛڞ༗Ͱ͖Δ ৺ཧత҆શੑ
!5",",*/( ʮͬͨʔʂʂʯΛڞ༗Ͱ͖Δ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ৗʹશһ͕͍ͬͯΔঢ়ଶΛ࡞ΕΔ ✓ ݁Ռ͚ͩ͡Όͳ͘աఔɾܦҢ͕Θ͔Δ ✓ ํΛৗʹ͢Γ߹ΘͤΒΕΔ ϊϋɾεΩϧൖ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ ୲࡞ۀͷ߹ "͞Μͷࣝൣғ ͳͷͰରԠՄೳ "͞Μͷࣝൣғ֎Ͱɺ #͞ΜʹϨϏϡʔͯ͠
Βͬͨ߹ͷΈ ϑΥϩʔՄೳ "͞Μͷࣝൣғ֎Ͱɺ $͞ΜʹϨϏϡʔͯ͠ Βͬͨ߹ͷΈ ϑΥϩʔՄೳ
!5",",*/( νʔϜͷࣝൣғͱͯ͠ͷϕετ #͞Μ $͞Μ "͞Μ Ϟϒͷ߹ ରԠՄೳ
!5",",*/( ੜ࢈ੑɾεϐʔυ ৺ཧత҆શੑ ϓϩμΫτ։ൃ ϊϋɾεΩϧൖ
!5",",*/( ✓ ৗʹνʔϜʹର͕ੜ·Ε͍ͯΔ ✓ ಈ͘ϓϩμΫτ͕νʔϜͷத৺ʹ͋Δ ✓ िϖʔεͰސ٬ʹձ͍͑ͯΔ ✓ ܭըৗʹมԽ͍ͯ͠Δ ϓϩμΫτ։ൃ
!5",",*/( ͦͦৗʹରΛ͠ͳ͍ͱࣄ͕ਐ·ͳ͍
!5",",*/( ಈ͘ϓϩμΫτ ϝλϑΝͱͯ͠ಈ͘ϓϩμΫτ͕ৗʹνʔϜͷத৺ʹ͋Δ
!5",",*/( ✓ ৗʹνʔϜʹର͕ੜ·Ε͍ͯΔ ✓ ಈ͘ϓϩμΫτ͕νʔϜͷத৺ʹ͋Δ ✓ िϖʔεͰސ٬ʹձ͍͑ͯΔ ✓ ܭըৗʹมԽ͍ͯ͠Δ ϓϩμΫτ։ൃ
͜Εͬͯɾɾɾʂʁ
!5",",*/( IUUQBHJMFNBOJGFTUPPSHJTPKBNBOJGFTUPIUNM
!5",",*/( ࠓࣄྫͷΛத৺ʹͨ͠ͷͰ Ϟϒϓϩάϥϛϯάͷίπ)PXUPͷΛ͍ͯ͠·ͤΜ
!5",",*/( ࢲୡͱҰॹʹಇ͖·ͤΜ͔ʁ Ϟϒ͠ ✓ ϞϒݟֶˍମݧπΞʔ ✓ Ϟϒϓϩάϥϛϯάษڧձ $POUBDUNF!5",",*/(
!5",",*/( ·ͱΊ
!5",",*/( IUUQTTQFBLFSEFDLDPNUBLBLJOH IUUQTXXXTMJEFTIBSFOFU5BLBP0ZPCFQSFTFOUBUJPOT ࠷ऴతʹʮͬͱҰॹʹಇ͚͍͍ʯ ͱ͍͏݁ʹͳΔ͜ͱ͕ଟ͍
!5",",*/( ✓ ͳͥࣄΛ୲͢Δඞཁ͕͋Δͷ͔ ✓ ҰॹʹΔΑΓࣄΛ୲͢Δํ͕ޮతͳͷ͔ ✓ ͳͥόʔδϣϯཧ͕ඞཁͳͷ͔ ઌೖ؍ʹͱΒΘΕ͍ͯͳ͔͔ͬͨʁ
!5",",*/( ιϑτΣΞ։ൃ্ͷͷଟ͘ɺ ٕज़తͱ͍͏ΑΓࣾձֶతͳͷͰ͋Δ τϜɾσϚϧίςΟϞγʔɾϦελʔʢϐʔϓϧΣΞʣ
!5",",*/( ୲͢Δ͜ͱΛલఏʹɺ ͦͷͨΊͷίϛϡχέʔγϣϯΛ ͏·͘Ζ͏ͱ͍͗ͯ͢͠ͳ͔ͬͨͩΖ͏͔
!5",",*/( %FW -07&
!5",",*/( ϓϩμΫτ͕ಈ͍ͨ࣌ɺ ϓϩμΫτΛ͓ͬͨ٬͞Μ͕تΜͰ͘Εͨ࣌ɺ ؒͱҰॹʹʮͬͨʔʂʂʯͱݴ͍ͬͯ·͔͢ʁ
!5",",*/( IUUQBHJMFNBOJGFTUPPSHJTPKBNBOJGFTUPIUNM ΞδϟΠϧͷਅͦ͜ʹ͋ΔΜ͡Όͳ͍͔ͳʁ
!5",",*/( ࢥ͍ग़ͤͯ͘͞Εͨͷ͕Ϟϒϓϩάϥϛϯάͩͬͨ
!5",",*/( ୭͕͜ͷಇ͖ํΛؾʹೖΔΘ͚Ͱͳ͍ ҙ
!5",",*/( 1IPUPCZ5IF64"SNZ IUUQTHPPHM:F7VX ೃΕ߹͍Ͱͳܹ͘͠߹͑Δ ᪳͏͜ͱͳ͘ڞʹӽڥͰ͖Δ ઓ༑
!5",",*/( ͦ͏͍͏ਓୡͱࢲҰॹʹϞϒ͍ͨ͠ ͨΒ͖
!5",",*/( %FW -07&Ͱ͔͢ʁ !5",",*/(