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
全員でRuby/Rails移行を進めてきた話 / Shippai Night 2016
Search
Hirokazu Nishioka
December 19, 2016
Programming
4
1.7k
全員でRuby/Rails移行を進めてきた話 / Shippai Night 2016
2016-12-19 Shippai Night 発表資料
Hirokazu Nishioka
December 19, 2016
Tweet
Share
More Decks by Hirokazu Nishioka
See All by Hirokazu Nishioka
イエウール立ち上げに込めた想い / Speee Cafe Meetup 04
nisshiee
2
680
2016-09-07 社内勉強会資料
nisshiee
0
1.7k
Rails × Elasticsearch
nisshiee
0
2.1k
【16/06 SpeeeKaigi】人工知能
nisshiee
0
1.1k
Speee Introduction
nisshiee
0
1.8k
Ruby初心者チームが「Ruby日本一」を目指して半年の話
nisshiee
4
4.7k
ぼくらがScalaを選ぶ理由〜入門編〜
nisshiee
4
1.9k
「良いコード」とは何か
nisshiee
0
370
Scala vs Ruby
nisshiee
0
340
Other Decks in Programming
See All in Programming
AIコーディングエージェントを 「使いこなす」ための実践知と現在地 in ログラス / How to Use AI Coding Agent in Loglass
rkaga
4
1k
サービスクラスのありがたみを発見したときの思い出 #phpcon_odawara
77web
4
700
SwiftDataのカスタムデータストアを試してみた
1mash0
0
130
PHP で学ぶ OAuth 入門
azuki
1
220
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
190
SwiftUI API Design Lessons
niw
1
300
小田原でみんなで一句詠みたいな #phpcon_odawara
stefafafan
0
350
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
420
Cursor/Devin全社導入の理想と現実
saitoryc
25
18k
Flutterでllama.cppをつかってローカルLLMを試してみた
sakuraidayo
0
100
note の Elasticsearch 更新系を支える技術
tchov
0
180
Ruby on Railroad: The Power of Visualizing CFG
ydah
0
250
Featured
See All Featured
Embracing the Ebb and Flow
colly
85
4.7k
Facilitating Awesome Meetings
lara
54
6.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.4k
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Designing for Performance
lara
608
69k
[RailsConf 2023] Rails as a piece of cake
palkan
54
5.4k
It's Worth the Effort
3n
184
28k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
GraphQLとの向き合い方2022年版
quramy
46
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Transcript
全員でRuby/Rails 移行を進めてきた話 2016-12-19 Shippai Night 株式会社Speee 西岡寛兼
自己紹介 西岡寛兼( にしおかひろかず) https://nisshiee.org/ 株式会社Speee サー バサイドスペシャリスト イエウー ル ieul.jp
の立ち上げ 現在は医療事業でサー ビス新規開発 最近のマイブー ムは3D プリンタ遊びとRust 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 2
Speee の現状 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 3
Speee の現状 2015 年5 月に開発部組織改革を断行 改革内容の1 つとして、Ruby/Rails をメインに据える 当初、Rails 経験者は1
割未満 サー バサイド責任者もRails 未経験 1 年半経った現在 4 つのサー ビスをFuelPHP からRuby/Rails へ移行完了 3 つのサー ビスをRuby/Rails で新規構築 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 4
この1 年半のRuby/Rails 移行の結果 意外と「 すごいですね」 って言われる やってる間は「 スゴイことやってる感」 はなかった (
少なくとも僕は) 実際振り返ってどうだろう? 僕らのRuby/Rails 移行から何か学びを共有できないか スゴイかどうかはさておき 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 5
なぜSpeee はRuby/Rails 移行を ここまで進められたのか 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話
6
結論 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 7
エンジニアが全員で移行完了に向けて 頑張り続けることができたから 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 8
一般的によくありそうな言語移行失敗ケー ス そもそも前提として、 言語移行は大変です。 始めた人が、 やりきれないケー ス チー ムに頑張ってもらうのは自分が頑張るより100 倍大変
趣味じゃなくビジネスとして開発している 全員ががんばれないケー ス その新しい言語、FW をやりたい人はいいけど・・・ 習熟度に差が出てしまうのは避けられない 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 9
Speee の場合 運が良かった所 みんなPHP が書きたかったわけではなかったw 2016-12-19 Shippai Night | 全員でRuby/Rails
移行を進めてきた話 10
とはいえ、 やっぱりSpeee も苦労した Speee は他事業展開組織 Rails プロジェクトを始めるタイミングは事業によってまちまち 事業責任者もそれぞれで、 理解を求める必要 Ruby/Rails
に詳しいメンバー が居たわけではなかった 先行して引っ張る側がそもそも・・・・ 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 11
まずは先行するメンバー が頑張る 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 12
先行メンバー 「Ruby 推進委員会」 と命名 とにかくやる気のあるメンバー ちょうど新規開発を始められるチー ム( 移行はコスト高い) 俺 パイオニアになれる人たちが、
道路を作る 道路の作り方は、 井原さんに教わる 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 13
Ruby 推進委員会の仕事 コー ディング規約作った 参考書籍リストの作成・ 購入・ 貸出ルー ル作成 井原さんとペアプロしたり、 井原さんにレビュー
してもらったりし ながら、 まずは自分たちができるようになる Gem、RSpec、Unicorn、Capistrano、CircleCI など Ruby/Rails 周辺ににチャレンジしドキュメントを残す 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 14
Ruby 推進委員会が頑張れた理由 5 人という適切な人数 意思決定は進めていける 適度に負荷分散できる 井原さん Ruby/Rails 知らない僕らが最初の一歩を踏み出せた アウトプットを評価する精度
井原さんにひたすら「 アウトプットして、 他人の時間を節約する という成果は大事」 と言われ続ける 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 15
2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 16
続くメンバー がちゃんとついてくる 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 17
Speee 全体がトップダウンでRuby 化する ロビー 活動( 笑) 経営陣・ マネー ジャー から、Speee
はRuby 化するという想いや、 Ruby 化することによるメリットを、 非エンジニアも含めた全社に発 信し続ける とにかくBiz サイドとの認識合わせは、 開発部のトップレベルが全力 でやる 現場にやらせるのはたぶん疲弊する 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 18
高速道路にちゃんと乗る( 乗せる) 先人がドキュメントをちゃんと残してるから見てもらう brew でrbenv をインストー ルする手順から みんなにやる気があると問題が起こる みんなが同じ問題を頑張って解こうとする 特にSpeee
の場合、 別の事業をやってる別々 のチー ム 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 19
クロスレビュー 施策 チー ム外のメンバー にコー ドレビュー してもらうルー ル 先行メンバー 自分たちが学んできたことの再確認
自分が苦労したことを自分事として教えられる 後からついていくメンバー 自分で頑張るだけじゃなく周りに聞く意識 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 20
PHP => Rails 移行はスコー プを絞る やっぱり新規よりも移行の方が難しい 事業側へ「 移行の意義」 を説明するためには、 ついつい「
移行しな がらココを直す」「 移行しながらコレを足す」 とかやりたくなる が・・・ 実際やったら失敗した それ以降は最小スコー プでRails 移行を 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 21
そんなこんなで今・・・ 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 22
ようやくここまできた 「Speee がRuby/Rails で開発してる」 と言える みんなRuby にしてよかったと思ってる( たぶん) 今にして思えば、 僕たちはRuby
できなかったのが良かったかも いきなりうまくいくわけがない 小さな失敗はいっぱいしてきたが、 失敗を克服するという仕事を 楽しんできた 2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 23
そしてこれから 「Ruby を使うこと」 が僕らが目指したゴー ルじゃない 技術で課題を解決し、 未来を引き寄せるSpeee 開発部に 今はまだ何もないが、 これからも全員でチャレンジし続けたい
2016-12-19 Shippai Night | 全員でRuby/Rails 移行を進めてきた話 24