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
[PHPerKaigi 2021 (LT)] 新社会人のコード品質カイゼン記録
Search
don
March 31, 2021
Programming
1
1.4k
[PHPerKaigi 2021 (LT)] 新社会人のコード品質カイゼン記録
don
March 31, 2021
Tweet
Share
More Decks by don
See All by don
レガシーシステムへのPHPStan導入から半年での効果と課題
bosshawk
0
2.2k
レガシーシステムへのPHPStan導入から半年での課題と効果
bosshawk
1
2k
息の長いサービスの PHP8バージョンアップで見えた 課題と解決法 / Problems and solutions found when upgrading long-term services to PHP8
bosshawk
0
2.8k
レガシーシステムにおけるPHP8バージョンアップのアプリ対応記録
bosshawk
0
2.1k
[おすすめの技術書 LT会 - vol.2] 体系的に学ぶ安全なWebアプリケーションの作り方
bosshawk
0
21k
Other Decks in Programming
See All in Programming
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
210
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
120
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
650
Patterns of Patterns
denyspoltorak
0
1k
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5.6k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
5.6k
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
150
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
340
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
330
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1.1k
CSC307 Lecture 05
javiergs
PRO
0
480
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
810
Featured
See All Featured
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
370
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
250
Writing Fast Ruby
sferik
630
62k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Six Lessons from altMBA
skipperchong
29
4.1k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
220
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
430
Building Applications with DynamoDB
mza
96
6.9k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
43
Transcript
#phperkaigi ©2020 RAKUS Co., Ltd. ©2020 RAKUS Co., Ltd. 新社会人のコード
品質カイゼン記録 頓花貴俊
#phperkaigi ©2020 RAKUS Co., Ltd. 自己紹介 名前:頓花貴俊 (どんが たかとし) 会社:株式会社ラクス
社歴:二年 プログラム遍歴: ・大学時代:C言語、Fortran ・入社後:PHP, Java
#phperkaigi ©2020 RAKUS Co., Ltd. 入社研修終えての最初の数ヶ月 軽微な修正、小規模な実装では 特にコードレビューで大きな問題は なかった
#phperkaigi ©2020 RAKUS Co., Ltd. ですが・・・
#phperkaigi ©2020 RAKUS Co., Ltd. 初めての規模の大きな実装 コードレビューの指摘:約100件 開発期間 全体:3人月 担当:2人月
指摘は 約8割が保守性に関する指摘
#phperkaigi ©2020 RAKUS Co., Ltd. うわっ・・・私のコード品質、 低すぎ・・・?
#phperkaigi ©2020 RAKUS Co., Ltd. 主な指摘 ・不要コード、デバッグコードの削除忘れ ・SQLで必要のないカラムの取得 ・意味が理解しづらいメソッド名、変数名、コメント ・タイポ
その他には...
#phperkaigi ©2020 RAKUS Co., Ltd. 保守性に関する指摘 ー 例1 ー 指摘:
条件が分かりずらい 修正後 修正前
#phperkaigi ©2020 RAKUS Co., Ltd. 保守性に関する指摘 ー 例2 ー 指摘:
・何をしているか読み取れない ・DOM構成が変わったときに 対応しずらい 修正後 修正前
#phperkaigi ©2020 RAKUS Co., Ltd. 指摘が出ないように 対策を考える
#phperkaigi ©2020 RAKUS Co., Ltd. 対策 ・コミット前に実装したコード全体を見直す ・前回の指摘から セルフチェックリストを作り 実装前と後にチェックする
チェックリスト
#phperkaigi ©2020 RAKUS Co., Ltd. セルフチェックを実施した結果 コードレビューの指摘 30件 開発期間 全体:1.5人月
担当:0.5人月 あまり減っていない… → なぜ…? 自分だけではわからない…
#phperkaigi ©2020 RAKUS Co., Ltd. 悩みを相談した結果 先輩とペアプロを実施することに
#phperkaigi ©2020 RAKUS Co., Ltd. ペアプロを実施した結果 コードレビューの指摘 10件 開発期間 全体:3人月
担当:1.5人月 → 大きく減少!!! ぺアプロの良かったところ ・実装しつつ質問できる ・他の人の視点を知ることができた
#phperkaigi ©2020 RAKUS Co., Ltd. 1人では気づけず、ペアプロで気づいたこと ・既存コードやそのコピペなどへのコメントの追加 ・TODOコメントなどを使って気になったところにメモをする ・具体的な処理を書く前にメソッドやコメントのみを書いて、 意図が分かりやすくなっているかチェックする
#phperkaigi ©2020 RAKUS Co., Ltd. 改善を振り返って ・入社するまでコードレビューを受けることがなかったので自身 のコード品質が良くないことに気づいてなかった。 ・自分だけでなんとかしようとしたけど失敗した。 ・ペアプロを行うことで
他の人の視点を取り入れることができ、 視点を広げることができた
#phperkaigi ©2020 RAKUS Co., Ltd. 改善後も品質向上のために実施していること ・実装時には、既存コードにコメントを追加しコード全体を 把握する ・デイリーのミーティング時に実装難易度が高い所を相談し、 モブプロ的に実装を進める
#phperkaigi ©2020 RAKUS Co., Ltd. 自分で解決できないときは 皆さんもペアプロやってみましょう!!