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
Rails 移行を支える コードレビュー #finc_mw /support_to_rails...
Search
matsuhisa
February 16, 2017
Business
0
680
Rails 移行を支える コードレビュー #finc_mw /support_to_rails_from_code_review
2017年2月15日に行われた「Railsを使ってサービスの成長を継続させるぞ!(FiNC×みんなのウェディング)」の発表資料です
matsuhisa
February 16, 2017
Tweet
Share
More Decks by matsuhisa
See All by matsuhisa
Rails移行のレキシ/mobasif-to-ruby-on-rails2017
matsuhisa
1
1.5k
Railsでつくる 画像アップロード 2017 #railsdm /rails_developers_meetup6_image_upload
matsuhisa
0
1.1k
デザインレビューにエンジニアも参加してみよう/engineers-join-design-review-2017
matsuhisa
0
1k
「ふつう」のRuby on Rails ウェブアプリケーション #clipla_mwed /ruby_on_rails_for_minnano_wedding
matsuhisa
1
840
爆速のために 独自フレームワーク から Rails に移行した話/mobasif_to_ruby_on_rails
matsuhisa
3
2.7k
デザインレビューにエンジニアも参加してみよう/engineers-join-design-review
matsuhisa
0
260
1年間で起きたデザイナーとエンジニアの変化/1year-designer-engineer
matsuhisa
0
520
サービス改善のために エンジニアがすること、 しないこと
matsuhisa
0
1.7k
Other Decks in Business
See All in Business
私のスクラムフェスの歩き方
rakuraku0615
0
310
一般社団法人ディレクションサポート協会(DiSA)
masakisukeda
0
360
メタバースを活用した東京の魅力発信
tokyo_metropolitan_gov_digital_hr
1
420
プロダクトの大事なこと全部書く 〜わかりあいのワークショップ〜
watasuke
0
300
租税教育コンテンツの製作
tokyo_metropolitan_gov_digital_hr
0
450
Amazon 流のプロダクトマネジメント @ Product DeepLive 会場 + 懇親会スポンサーセッション
icoxfog417
3
380
エンジニア向け dely会社説明資料 / For Engineers
delyinc
0
210
採用ピッチブック
macloud
3
59k
Timeless Principles: Google’s Constant Journey Through Past, Present, and Future
chapter42
0
450
「つい進捗してしまう」タスク分解のやり方 / How to Break Down Tasks in a Way That Naturally Leads to Progress
uenitty
1
160
ポートフォリオEC「ENRAI」_概要資料
booklista_nakaya
1
920
Company Introduction Slides
recruiting
0
1k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
38
7k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
A designer walks into a library…
pauljervisheath
202
24k
Fireside Chat
paigeccino
32
3k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Scaling GitHub
holman
458
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Code Review Best Practice
trishagee
64
17k
We Have a Design System, Now What?
morganepeng
50
7.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Transcript
גࣜձࣾΈΜͳͷΣσΟϯά 3BJMTҠߦΛࢧ͑Δ ίʔυϨϏϡʔ ݄দٱߒ৳
݄ দٱߒ৳ ͋ͳͨͷେͳ͍ͭͰ͔͢ʁ ݄
w ΈΜͳͷΣσΟϯάʹ͍ͭͯ w αʔϏε w ։ൃͷྲྀΕ w αʔϏεΛࢧ͑ΔͭͷϨϏϡʔ w ίʔυϨϏϡʔͷ՝ͱղܾํ๏
w ৽ͨͳ՝ ͓͢͠Δࣄ
ΈΜͳͷΣσΟϯά
ΈΜͳͷʰେͳʱΛ;͢
αʔϏε εϚʔτϑΥϯ൛ ύιίϯ൛
ಛ ສ 6#݄ , ࣜ ສ ޱίϛ ݄ݱࡏ
։ൃͷྲྀΕ
1FSM͔Β3VCZʹҠߦத IUUQTTQFBLFSEFDLDPNNBUTVIJTBNPCBTJGUPSVCZPOSBJMT
w ։ൃ։࢝ w ίʔυϨϏϡʔΛ͏͚Δ w Ϛʔδ w εςʔδϯάʹࣗಈͰσϓϩΠ w ຊ൪ڥʹσϓϩΠ
։ൃ͔ΒσϓϩΠ·ͰͷྲྀΕ
w NBTUFSͷϚʔδʹίʔυϨϏϡʔඞਢ w ΤϯδχΞ͕ίʔυϨϏϡʔΛ͢Δ w ϚʔΫΞοϓ$44ͷΈͷ߹σβΠφʔͰՄ w σβΠϯมߋ͕͋ΕɺσβΠϯνΣοΫΛσβΠφʔ ʹͯ͠Β͏ ։ൃϧʔϧ
αʔϏεΛࢧ͑ΔେϨϏϡʔ
w εϓϦϯτϨϏϡʔ w σβΠϯϨϏϡʔ w ίʔυϨϏϡʔ αʔϏεΛࢧ͑ΔେϨϏϡʔ
w िؒʢεϓϦϯτʣʹճɺશ෦ॺΛूΊ࣮ͯࢪ w Ռɺ༧ఆΛڞ༗͢Δ w ෦ॺʢνʔϜʣҎ֎͔ΒͷϨϏϡʔΛड͚Δ w νʔϜ֎ՌΛઆ໌ʢࣗຫʣ͢Δ w νʔϜ֎͔ΒͷࢦఠΛड͚ೖΕΔɺઆ໌͢Δ
εϓϦϯτϨϏϡʔ
FTBʹ֤νʔϜͷͰ͖ͨ͜ͱɺͰ͖ͳ͔ͬͨ͜ͱɺདྷि ͷݟ௨͠Λॻ͘ εϓϦϯτϨϏϡʔ
w తΛ໌֬ʹ͠తΛୡ͍ͯ͠Δ͔ʁΛϨϏϡʔ w ओʹHJUIVC্Ͱߦͳ͍ͬͯΔʢର໘͋Δʣ w ΤϯδχΞɺσΟϨΫλʔࢀՃͰ͖Δ w υοΫϑʔσΟϯά͠ʹ͍͘αʔϏεͳͷͰϨϏϡʔ Ͱɺิ͏ w
ΤϯδχΞ͔Β͓ئ͍͢Δ͜ͱ͋Δ σβΠϯϨϏϡʔ
σβΠϯͷతͳͲΛॻ͍ͨJTTVF1VMM3FRVFTUΛ༻ ҙͯ͠σβΠφʔ͔ΒϨϏϡʔΛड͚Δ σβΠϯϨϏϡʔ
w εϓϦϯτϨϏϡʔ w σβΠϯϨϏϡʔ w ίʔυϨϏϡʔ αʔϏεΛࢧ͑ΔେϨϏϡʔ ࠓճʮίʔυϨϏϡʔʯʹ͍ͭͯͰ͢
՝
w ίʔυελΠϧ͕όϥόϥ w ίʔυͷଐਓԽ w ίʔυϨϏϡʔʹͳΕͳ͍ w ίʔυϨϏϡʔ͕ऴΘΒͳ͍ w ࣭ͷ্
՝
ίʔυελΠϧ͕όϥόϥ
w 1FSM͔Β3VCZʹҠͬͨͷͰɺ3VCZ3BJMTͬΆ͍͕ Θ͔Βͳ͍ w ϋογϡϩέοτΛ͏PSΘͳ͍ w 5JNFOPXʁ5JNF[POFOPXʁ5JNFDVSSFOUʁ w \^͍Δͷʁ͍Βͳ͍ͷʁ w
ॳΊͯͷ͜ͱͩΒ͚Ͱɺӈԟࠨԟ ՝
w πʔϧΛಋೖ͠ɺઌਓͷܙΛआΓΔ w 3VCPDPQɺIBNMMJOUɺFTMJOUɺCSBLFNBO w $*Ͱ࣮ߦ͍ͯ͠ΔʢFTMJOUΛআ͘ʣ ղܾɿπʔϧͷಋೖ
ίʔυͷଐਓԽ
w ʮ͋ͷਓʯ͡Όͳ͍ͱΘ͔Βͳ͍ίʔυઃܭ w ಠࣗϑϨʔϜϫʔΫ͔Β3BJMTͷҠ২࣌ʹฉ͍ͯҠ ২Λ࣮ߦ w ݁Ռɺ͕ࣗʮ͋ͷਓʯʹͳͬͯ͠·͏ w ෆ۩߹ͷԹচʹͳΓ͍͢ ՝
w ࠷ॳɺίʔυϨϏϡʔϥϯμϜͰIVCPU͕ࢦ໊ w ϥϯμϜ͗ͯ͢ϨϏϡʔͰ͖ͳ͍࣌ʢ3BJMTͷϞϯ Ωʔύονͱ͔ʣ w νʔϜͰϨϏϡʔΛ͢ΔΑ͏ʹͳͬͨ w ෳਓ͕ίʔυΛݟΔ͜ͱʹͳΓɺଐਓԽΛݮΒ͢ ղܾɿνʔϜͰϨϏϡʔ
ίʔυϨϏϡʔʹͳΕͳ͍
w ίʔυϨϏϡʔΛ͓ئ͍͢Δɺͩͱʜ w ʮਃ͠༁ͳ͍ʯײ͕ͰΔ w ਓͷ࣌ؒΛͬͯ͠·͏ w ίʔυͷؒҧ͍Λࢦఠ͞Εͯؾ͕͜Ή ՝
w CPX!ΛΘͳ͍ w ϨϏϡʔϓϩμΫτΛ࡞Δ্Ͱେͳ͜ͱɻؾΛ ্͛Δײ͡ʹ͍͖͍ͯͨ͠ w ͓ئ͍͢Δ࣌ʹɺͦͷਓʹ߹ΘͤͨֆจࣈΛͬͨΓɺ ؾΛ্͛ΔΑ͏ʹͨ͠ w EBOHP"CSFBE#LJNPOP$IFBSU♥
ͳͲ ղܾɿֆจࣈΛΘͳ͍͏
w ࢥ͍ΓΛͬͯɺࢦఠ Λ͢Δ w ݠڏ )VNJMJUZ w ଚܟ 3FTQFDU
w ৴པ 5SVTU ղܾɿ)35
w ྑ͍ߦಈΛ΄ΊΔɻྑ͍ߦಈΛܧଓ͍ͤͨ͞ɻ ղܾɿߦಈΛ΄ΊΔ
ϓϧϦΫΤετʹؾ͔ͮͳ͍
w HJUIVCͷ௨͕ଟ͗ͯ͢ಡΊͳ͍ w ϝʔϧݏ͍ʢݸਓͷײͰ͢ʣ w 4MBDLͷNFTTBHFͰʮ͓ئ͍CPXʯ͞ΕΔ w ݟͨΒिؒલͷϓϧϦΫΤετͩͬͨʂ w ࣮ɺ࠷ॳผͳਓ͕͓ئ͍͞Εͯͨ
՝
w ேձͰ͑Δɺٸ͗ͷ࣌ݴ͏ w +BTQFSΛ͏ʂ ղܾ
ϓϧϦΫΤετ͕ Θ͔Γʹ͍͘
w ϓϧϦΫΤετΛϚʔδ͢ΔͱԿ͕ى͖Δͷ͔Θ͔Βͳ ͍ w త͕Θ͔Βͳ͍ w ҙ͋Δʁ w ͙͢ʹϚʔδ͍͍ͯ͠ͷʁ ՝
w ྑ͍ϓϧϦΫΤετͷॻ͖ํΛFTBʹ༻ҙͨ͠ w ϨϏϡʔ͢Δ࣌ʹɺϓϧϦΫΤετͷॻ͖ํΛ͑ͨ ղܾ
w ϓϧϦΫΤετͷతɺ͑ΒΕΔ͜ͱΛॻ͘ w ද্ࣔͷࠩɺεΫϦʔϯγϣοτΛషΔ w ϨϏϡʔ͢Δਓ͕خ͍͠ɺ͓ͯͳ͕͋͠ΔϓϧϦΫΤ ετ͕ཧ ղܾ
࣭ͷ্
w ಠࣗϑϨʔϜϫʔΫ͔Β3BJMTʹҠΓɺΦϒδΣΫτࢦ ΞϓϦέʔγϣϯͱͯ͠దͳίʔυ͔ʁ w ςʔϒϧઃܭ͕೦ w 42-Ξϯνύλʔϯ͕৭ʑ w δΣΠΥʔΫɺϚϧνΧϥϜΞτϦϏϡʔτɺཧ আ
՝
w ΦϒδΣΫτࢦʹ͍ͭͯৄ͍͠ਓ͔ΒͷϨϏϡʔΛ Β͑ͨ w ؾ͖ͮΛಘΔ͜ͱ͕Ͱ͖ͨ w 4DIFNB͕HJUͰཧ͞ΕͯϨϏϡʔՄೳʹ w 42-Ξϯνύλʔϯʹؾͮ͘͜ͱ͕Ͱ͖Δ w
ύϑΥʔϚϯεΛؾ͖͘͢ͳΓɺϨϏϡʔͰࢦఠ Ͱ͖ΔΑ͏ʹͳͬͨ ղܾʁ
ίʔυϨϏϡʔͰ࣮ݱͰ͖ͨ ͜ͱ
w ίʔυελΠϧ͕ཧ͞Ε͖ͯͨ w ίʔυͷଐਓԽ͕ݮ͖ͬͯͨ w ࣭ͷ্ʢԼΛ͙ʣ w ৽͍͜͠ͱΛֶͿ͜ͱ͕Ͱ͖ͨ ࣮ݱͰ͖ͨ͜ͱ
w νʔϜʹKPJOͨ͠ਓʹ৽͍͜͠ͱʢ1FSM͔Β3VCZ ͱ͔ʣΛ͑Δػձ͕Ͱ͖Δ w Βͳ͍͜ͱΛνʔϜͰֶशͰ͖ΔػձͱͳΔ w ͍ͬͯΔਓ͔ΒֶͿػձɻڭ͑Δ͜ͱͰڧԽ͞ΕΔ w ΄ΊΔจԽͰ৺ཧత҆શΛ࡞Δ ༧ظ͠ͳ͔ͬͨ͜ͱ
৽ͨͳ՝
w ࣭ͷ্ʢৗʹʣ w ίʔυϨϏϡʔྃ·Ͱͷ࣌ؒ w ϓϧϦΫΤετ͕ͨ·ΓɺαʔϏεͷՁ͕ಧ͚ΒΕ ͍ͯͳ͍ w ϨϏϡʔ͢ΔਓͷภΓ w
ͭͷγεςϜͷଘࡏ ৽ͨͳ՝
·ͱΊ
w 3BJMTҠߦΛ͢͢ΊΔͱ͖ʹɺίʔυϨϏϡʔΛऔΓೖ Εͨ͜ͱͰ w ࣭ͷԼΛ͙͜ͱ͕Ͱ͖ͨ w ։ൃνʔϜʹֶश͢Δػձ͕Ͱ͖ͨ w ίʔυϨϏϡʔʹ͔͔Δ࣌ؒվળΛ͍͖͍ͯͨ͠ ·ͱΊ