Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
[PHPerKaigi 2021 (LT)] 新社会人のコード品質カイゼン記録
Search
don
March 31, 2021
Programming
1.6k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[PHPerKaigi 2021 (LT)] 新社会人のコード品質カイゼン記録
don
March 31, 2021
More Decks by don
See All by don
レガシーシステムへのPHPStan導入から半年での効果と課題
bosshawk
0
2.5k
レガシーシステムへのPHPStan導入から半年での課題と効果
bosshawk
1
2.3k
息の長いサービスの PHP8バージョンアップで見えた 課題と解決法 / Problems and solutions found when upgrading long-term services to PHP8
bosshawk
0
3k
レガシーシステムにおけるPHP8バージョンアップのアプリ対応記録
bosshawk
0
2.3k
[おすすめの技術書 LT会 - vol.2] 体系的に学ぶ安全なWebアプリケーションの作り方
bosshawk
0
21k
Other Decks in Programming
See All in Programming
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
210
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
560
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
260
Are APIs Still Relevant in the AI Era?
soyuka
0
270
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
490
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
420
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
370
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
180
FreeBSDでZabbixを動かす
kenkino
0
310
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
200
WebAssembly in Android Apps 〜 WASMはJNIの夢を見るか
keiji
1
110
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Spectacular Lies of Maps
axbom
PRO
1
1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Documentation Writing (for coders)
carmenintech
77
5.5k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
The untapped power of vector embeddings
frankvandijk
2
1.9k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
エンジニアに許された特別な時間の終わり
watany
109
250k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
340
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
Designing for Timeless Needs
cassininazir
1
480
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. 自分で解決できないときは 皆さんもペアプロやってみましょう!!