Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Tama Ruby Kaigi 01
Search
Yuki Kondo
July 04, 2019
Technology
0
2.7k
Tama Ruby Kaigi 01
Yuki Kondo
July 04, 2019
Tweet
Share
More Decks by Yuki Kondo
See All by Yuki Kondo
アジャイルで複数施策を同時並行で進めるTips
konchan
0
200
Other Decks in Technology
See All in Technology
生成AI時代におけるグローバル戦略思考
taka_aki
0
110
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
140
【AWS re:Invent 2025速報】AIビルダー向けアップデートをまとめて解説!
minorun365
4
480
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
790
Microsoft Agent 365 を 30 分でなんとなく理解する
skmkzyk
1
1k
エンジニアリングマネージャー はじめての目標設定と評価
halkt
0
260
打 造 A I 驅 動 的 G i t H u b ⾃ 動 化 ⼯ 作 流 程
appleboy
0
200
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
600
学習データって増やせばいいんですか?
ftakahashi
2
280
RAG/Agent開発のアップデートまとめ
taka0709
0
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
210
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Designing for Performance
lara
610
69k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Statistics for Hackers
jakevdp
799
230k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.8k
Faster Mobile Websites
deanohume
310
31k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
プロになるためのレビューのススメ Tama Ruby会議01, 2019/07/06 @konchan_x
Yuki Kondo(@konchan_x) # 所属 DeNA ヘルスケア #
やってること サーバーサイドエンジニア Ruby, Rails Go, GAE, Firestore Vue.js, Nuxt.js, Flutter # 前職 SIer, SE, Dive into Code
Rubyistとしての成長... いつした?
レビューされた or した => 成長を実感
レビューされるメリット
ベテランのチェックでコード品質&スキルUP 01 User.all.each do |user|... > 全件取得でオンメモリになってまうで... User.find_each do
|user|...
見てもらうために読みやすいコードを意識する 02 # 命名規則 ユーザーのメールアドレスを取得したい NG: user.get_email OK: user.email
# メソッド定義のシグネチャ ユーザーIDに該当するユーザーを取得したい NG: def find_by_id(user) OK: def find_by_id(user_id)
レビューするメリット オススメ
プロの技を盗める 01 ・責務分割 ・delegate(移譲) ・||= (自己代入) ・DI(依存性注入) ・開発Contextごとの実装の違い class User
attr_reader :id delegate :name, to: :profile def initialize(id) @id = id end private def profile @profile ||= ::Profile.new(self) end end class Profile def initialize(user) @user = user end def name "#{@user.id}: konchan" end end
コードから始まるコミュニケーションが増える 02 あそこの アーキテクチャどう なってた? コンポーネントの認 証について教えて 欲しいっす 外部連携データの フォーマットどうなっ
てる? 二日酔いやばい...
プロジェクトの状況を把握する力がつく 03 A案件 B案件 C案件 日頃からタスクや仕様を確認する むりぽ...
・命名 ・デザインパターン ・責務 ・アーキテクチャ ・DDD ・パフォーマンス ・セキュリティ 自分ならどう実装するか比較する 04
レビューサイクルのメリット
適切な単位でPRを作成するようになる 01 変更ファイル50ファイル 差分+2000行, -500行 修行かな? 変更ファイル5ファイル 差分+100行,
-20行
相手に理解してもらうために資料を用意する 02 ・シーケンス図 ・業務フロー図 ・ER図 ・アーキテクチャ図 ・API仕様 ... PlantUML Swagger,
OpenAPI 便利なツールも覚える
レビュー...めっちゃええやん
個人 チーム プロダクト スキルアップ 開発力アップ 品質アップ
レビューおすすめしてきたが... 注意すること
過度に細かくレビューすることが 良い訳ではない ・相手のコンテキストを理解する ・開発状況を理解する ・許容できるレベルかどうか判断する
何を達成したいかが重要
価値をユーザーに届けること
用法・用量を守って適切なレビュー