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
Quipper の開発現場 / Quipper devs embrace change
Search
Fumiaki MATSUSHIMA
December 08, 2018
Programming
0
450
Quipper の開発現場 / Quipper devs embrace change
Rails Developers Meetup 2018 Day 4 Nouvelle Vague
ケータリングスポンサーPR
https://techplay.jp/event/702297
Fumiaki MATSUSHIMA
December 08, 2018
Tweet
Share
More Decks by Fumiaki MATSUSHIMA
See All by Fumiaki MATSUSHIMA
Learning from performance improvements on GraphQL Ruby
mtsmfm
1
1.2k
Ruby で作る Ruby (物理)
mtsmfm
1
220
GraphQL Ruby benchmark
mtsmfm
1
850
タイムアウトにご用心 / Timeout might break application state
mtsmfm
6
2.6k
Build REST API with GraphQL Ruby
mtsmfm
0
340
GraphQL Ruby をちょっとだけ速くした / Make graphql-ruby faster a bit
mtsmfm
1
750
Gaming PC on GCP
mtsmfm
0
750
How to introduce GraphQL to an existing React-Redux application
mtsmfm
1
260
Canary release in StudySapuri
mtsmfm
0
3.1k
Other Decks in Programming
See All in Programming
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
180
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
15
5.8k
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
120
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
170
Catch Up: Go Style Guide Update
andpad
0
230
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
5.1k
Devoxx BE 2025 Loom lab
josepaumard
0
100
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
300
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
230
チームの境界をブチ抜いていけ
tokai235
0
190
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
440
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
Featured
See All Featured
A better future with KSS
kneath
239
18k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
Navigating Team Friction
lara
190
15k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Why Our Code Smells
bkeepers
PRO
340
57k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Practical Orchestrator
shlominoach
190
11k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Transcript
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Quipper の開発現場 (ケータリングスポンサーPR) @mtsmfm Fumiaki
Matsushima Rails Developers Meetup 2018 Day 4 Nouvelle Vague #railsdm
#megurorb 文字化け、あるいはワークアラウンドとの戦い ➔ Web Dev at Quipper ➔ Ruby と麻雀と
DbD が好き ➔ 西日暮里.rb 主催 ➔ GraphQL Tokyo 主催 @mtsmfm.inspect
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://github.com/quipper/handbook/blob/1280bd47fcfcafed8b0b402786ce65ff5ee681b4/company-profile-ja.md
#railsdm Quipper の開発現場 (ケータリングスポンサー PR)
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://studysapuri.jp/
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://www.youtube.com/watch?v=_99NdvPhNjU
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://www.google.co.jp/search?q=History+of+Quipper+youtube&oq=History+ of+Quipper+youtube
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Quipper の開発現場
#railsdm Quipper の開発現場 (ケータリングスポンサー PR)
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Quipper の開発現場 == 分断されたモノリス
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://speakerdeck.com/qsona/think-about-divided-monolith?slide=9
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 複数の Rails アプリケーション
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 共有されたモデル、DB
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 先生が XX を入力して 生徒に表示されるように したい
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 1. Schema にカラム追加
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 2. 先生アプリの Schema を更新
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 3. 先生アプリの API を実装
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 4. 先生アプリのフロントを実装
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 5. 生徒アプリの Schema を更新
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 6. 生徒アプリの API を実装
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 7. 生徒アプリのフロントを実装
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) という作業をいろんなチームが いろんな思惑で行う
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 共通処理だと思ったから Schema に置い たけれどやっぱり生徒アプリ固有感がある から生徒アプリに置こう
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 1. Schema から削除 2. API
の Schema を更新 3. API に追加
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) チーム A 1. Schema から削除
2. API の Schema を更新 3. API に追加 チームB 1. カラムを追加 2. API の Schema を更新 3. API の実装 1 2 3
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Schema を更新したら API のテストが落ちる
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 慎重に非互換を避ければ できなくはないが...
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 社内共有ライブラリ しかもモデル どこまでが公開API?
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) モノリスが "分断" されている
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) モノリスはモノリスとして テストしたい
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Monorepo
#railsdm Quipper の開発現場 (ケータリングスポンサー PR)
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 非互換な変更に PR で気づける
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) あちこちに関連 PR いっぱい出 さなくて済む
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 共有部分を減らせば マイクロサービスへの 移行も可能
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 1リポジトリにすることで システム全体を示す リビジョンが得られる
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) モノリスでも マイクロサービスでも システム全体の自動テストが 容易になる
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 課題
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) https://speakerdeck.com/yuyatakeyama/how-quipper-works-with-circleci?slide=14
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) ツール、サービスが 1リポジトリ 1アプリ前提なことが多い
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) まとめ
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Quipper の開発現場
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Quipper の開発現場 == 昨日より早く、より楽しく開発が できるように
改善し続けられる現場
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) 分断されたモノリスを 選んだことで 成長速度を支えた側面は 間違いなくある
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) - 開発者数の増加 - 機能の複雑化 -
顧客数の増加 - 方針の変更
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) システムを取り巻く 状況は変わり続ける
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) Monorepo が うまくいくかは まだわからない
#railsdm Quipper の開発現場 (ケータリングスポンサー PR) “問題は変化ではない。 変化はいずれにしても起きる ものだ。問題はむしろ、我々 が変化に対応できないことに ある。”
エクストリームプログラミング 2nd Edition p.9 より
#railsdm Quipper の開発現場 (ケータリングスポンサー PR)