Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ぼくらのPRレビューフロー改善奮闘記

WHIsaiyo
March 05, 2025
1.7k

 ぼくらのPRレビューフロー改善奮闘記

コードレビューどうしてる? 品質向上と効率化の現場Tips共有会
https://findy.connpass.com/event/345102/

☆エンジニア採用ページ
https://www.career.works-hi.co.jp/beginners/tech/

☆Qiita
https://qiita.com/organizations/works-hi

■株式会社Works Human Intelligence
企業は未来の経営や企業の成長を左右する「ヒト」にかかわる多くの課題を抱えています。
採用活動、教育・研修、社員の特性や志向に合わせた最適な人員配置等、人事業務のほぼすべてが経営課題と向き合う業務です。
そして、そして企業の課題を解決することで日本の「はたらく」を楽しくを実現できると考えています。
私たちは、人材管理のプラットフォームである統合人事システム「COMPANY」を通じてあらゆる企業の経営戦略の実現をサポートしています。

WHIsaiyo

March 05, 2025
Tweet

More Decks by WHIsaiyo

Transcript

  1. © 2025 Works Human Intelligence Co., Ltd. 1 2025.03.06 株式会社Works

    Human Intelligence 丸山 三香子 ぼくらのPRレビューフロー改善奮闘記 ~品質も成長も快適さも兼ね備えたフローを求めて~
  2. © 2025 Works Human Intelligence Co., Ltd. 2 自己紹介 丸山

    三香子 株式会社Works Human Intelligence Product Div. CSR Dept. Work Scheduling Grp. Grp. Manager 2011 年 開発未経験でWHIの前身となる会社に新卒入社 コンサルか営業になるつもりだったのに気が付いたらエンジ ニアになっていた。以来一貫してエンジニア職 2 男児の母・時短エンジニアリングマネージャー プレイヤーとマネージャーを行ったり来たりしている 現在の開発グループに合流して約 3 年、マネージャーになっ て約 1 年 8 か月 趣味:アカペラ(歌う&聴く)、ママチャリで疾走 出没エリア:Qiita ときどき X
  3. © 2025 Works Human Intelligence Co., Ltd. 3 今日お話しすること お話しすること

    • 私が所属する開発グループでこの 2 年間で改善を続けているPRレビューの流れ ◦ 誰が、いつ、どこでレビューするのか ◦ やってみた方法 4 つのいい点、イマイチな点 • 私たちの開発グループにおけるPRレビューの位置づけの話も少し お話ししないこと PRレビューの中身の話 • PRの中身のレビュー方法 • コードレビューの観点
  4. © 2025 Works Human Intelligence Co., Ltd. 1 私たちのバックグラウンド 2

    よりよいレビューフローを求めた奮闘の記録 3 まとめ 4 今日のコンテンツ
  5. © 2025 Works Human Intelligence Co., Ltd. 6 私たちが作っているもの 大手法人向け統合人事システム「COMPANY」

    1996 年の誕生以降、膨大なデータを蓄積する人事管理製品を中心に、 業務を効率化するサービスから人材戦略を実現するサービスまでの領域をカバーする自社開発製品 年末調整申告 ⾝上届出 給与明細照会 ⼈事考課 ⼈事情報 検索‧照会 Web Service 異動配置案作成 発令 各種帳票作成 福利厚⽣ 給与/賞与⽀給 税務処理 退職⾦⽀給 社会保険料計算 出向費⽤ 資格管理 個⼈情報管理 ⼈事‧給与 勤務予定作成 実績⼊⼒ 勤務状況把握 ⼯数管理 就労‧プロジェクト管理 ID権限申請 ⼈事情報連携 特権ID管理 棚卸 Identity Management 要因分析 研修管理 各種KPIチェック Talent Management 提出物進捗管理 ⼊社⼿続 雇⽤⼿続管理 ⼊社 在職 退職
  6. © 2025 Works Human Intelligence Co., Ltd. 7 私たちが作っているもの 大手法人向け統合人事システム「COMPANY」

    私たちの開発グループでは主に就労・プロジェクト管理の 2 つの業務ドメインにあたる機能群を担当 年末調整申告 ⾝上届出 給与明細照会 ⼈事考課 ⼈事情報 検索‧照会 Web Service 異動配置案作成 発令 各種帳票作成 福利厚⽣ 給与/賞与⽀給 税務処理 退職⾦⽀給 社会保険料計算 出向費⽤ 資格管理 個⼈情報管理 ⼈事‧給与 勤務予定作成 実績⼊⼒ 勤務状況把握 ⼯数管理 就労‧プロジェクト管理 ID権限申請 ⼈事情報連携 特権ID管理 棚卸 Identity Management 要因分析 研修管理 各種KPIチェック Talent Management 提出物進捗管理 ⼊社⼿続 雇⽤⼿続管理 ⼊社 在職 退職
  7. © 2025 Works Human Intelligence Co., Ltd. • マネージャー +

    開発メンバー 3 名(全員フル リモート) • 1 st リリースから約 20 年の機能群を担当 • 保守フェーズ、要望に応じて機能強化もする • 他ドメインとのつながりが深く、開発難易度 は高め • PR数は 3 ~ 5 件/月 • 開発経験/ドメイン知識豊富メンバーが中心 8 私たちの開発グループのメンバー構成 全 9 名で 2 つの業務ドメイン領域を担当 チーム 1 • マネージャー + 開発メンバー 5 名(全員フル リモート) • 1 st リリースから約 10 年の機能群を担当 • まだまだ成長途上の機能強化フェーズ • 他ドメインからは比較的独立しており、小回 りが利く。開発難易度はチーム 1 よりは低め • PR数は 15 ~ 30 件/月 • 若手メンバーが多め チーム 2 ※マネージャーは両チーム兼務
  8. © 2025 Works Human Intelligence Co., Ltd. • マネージャー +

    開発メンバー 3 名(全員フル リモート) • 1 st リリースから約 20 年の機能群を担当 • 保守フェーズ、要望に応じて機能強化もする • 他ドメインとのつながりが深く、開発難易度 は高め • PR数は 3 ~ 5 件/月 • 開発経験/ドメイン知識豊富メンバーが中心 9 私たちの開発グループのメンバー構成 全 9 名で 2 つの業務ドメイン領域を担当 チーム 1 • マネージャー + 開発メンバー 5 名(全員フル リモート) • 1 st リリースから約 15 年の機能群を担当 • まだまだ成長途上の機能強化フェーズ • 他ドメインからは比較的独立しており、小回 りが利く。開発難易度はチーム 1 よりは低め • PR数は 15 ~ 30 件/月 • 若手メンバーが多め チーム 2 ※マネージャーは両チーム兼務
  9. © 2025 Works Human Intelligence Co., Ltd. • マネージャー +

    開発メンバー 3 名(全員フル リモート) • 1 st リリースから約 20 年の機能群を担当 • 保守フェーズ、要望に応じて機能強化もする • 他ドメインとのつながりが深く、開発難易度 は高め • PR数は 3 ~ 5 件/月 • 開発経験/ドメイン知識豊富メンバーが中心 10 私たちの開発グループのメンバー構成 全 9 名で 2 つの業務ドメイン領域を担当 チーム 1 • マネージャー + 開発メンバー 5 名(全員フル リモート) • 1 st リリースから約 15 年の機能群を担当 • まだまだ成長途上の機能強化フェーズ • 他ドメインからは比較的独立しており、小回 りが利く。開発難易度はチーム 1 よりは低め • PR数は 15 ~ 30 件/月 • 若手メンバーが多め チーム 2 ※マネージャーは両チーム兼務
  10. © 2025 Works Human Intelligence Co., Ltd. 13 やってみた1:マネージャーが全チームの全PRをレビュー やり方

    • 2 チームのPRをひたすらマネージャーがレビューする。全部レビューする よい点 • 開発メンバーはPRレビューに工数を取られない • マネージャーが全PRを把握できる
  11. © 2025 Works Human Intelligence Co., Ltd. 14 やってみた1:マネージャーが全チームの全PRをレビュー イマイチな点

    • マネージャーがブロッカーとなり、レビュー遅延が発生する ◦ 業務多忙 ◦ 知識/スキル不足  × ◦ PR提出の集中 • マネージャーが開発メンバーのレビュー機会 = 最良の学習機会を奪ってしまう
  12. © 2025 Works Human Intelligence Co., Ltd. 15 やってみた1:マネージャーが全チームの全PRをレビュー イマイチな点

    • マネージャーがブロッカーとなり、レビュー遅延が発生する ◦ 業務多忙 ◦ 知識/スキル不足  × ◦ PR提出の集中 • マネージャーが開発メンバーのレビュー機会を奪ってしまう いずれの問題もマネージャーがPRレビューを 1 人で担っていることに起因
  13. © 2025 Works Human Intelligence Co., Ltd. 17 やってみた2:全PRを全チームメンバーでモブレビュー モブレビュー導入に際してやったこと

    • メンバーに現状のレビューフローの課題感とモブレビュー導入への想いを伝える • 「一旦やってみて、イマイチなら戻そう!」もちゃんと伝える • モブレビューの流れを明文化し、迷わないようにする ↑実際にメンバーに共有したモブレビューの流れ
  14. © 2025 Works Human Intelligence Co., Ltd. 18 やってみた2:全PRを全チームメンバーでモブレビュー モブレビュー導入に際してやったこと

    • メンバーに現状のレビューフローの課題感とモブレビュー導入への想いを伝える • 「一旦やってみて、イマイチなら戻そう!」もちゃんと伝える • モブレビューの流れを明文化し、迷わないようにする ↑実際にメンバーに共有したモブレビューの流れ レビュー経験積みたい! マネージャーに負荷が集中してるのも 気になってました・・・ とりあえずやってみましょう!! メンバーからは好意的な意見がほとんど
  15. © 2025 Works Human Intelligence Co., Ltd. 19 やってみた2:全PRを全チームメンバーでモブレビュー やり方

    • 朝会(Meet開催)の最後のアジェンダとしてモブレビューの時間を設ける • 朝会までに上がったPRの担当チームが残り、マネージャー+チームメンバー全員でモブレビュー • レビュイーが簡単にPRの内容を説明した後、その場でレビュアーがコメント/マージ よい点 • 1 営業日以上のレビュー滞留がほぼなくなった • メンバーがレビュアーとしての視座を得られた • PRの内容/各メンバーが担当する案件/機能仕様/業務ドメイン知識 へのチーム全体の理解が深化した • コーディングルールをその場で確認したり作ったりできた • 毎日PRを見る時間が強制的に訪れるのってラク!
  16. © 2025 Works Human Intelligence Co., Ltd. 20 やってみた2:全PRを全チームメンバーでモブレビュー イマイチな点

    • 個々のレビューの品質が下がりやすくなった ◦ モブレビューではじめてPRの中身を見ることが増えた ▪ 「モブレビューの時間に確認すればいいや」 ◦ 表面的なコードの書き方に指摘が終始しやすくなった ◦ PR上の修正内容のみに指摘がとどまる ▪ 中には本来ソースの前後関係を汲んだうえでのレビューが必要な更新もあった • “空気読んでApprove”も発生 ◦ 少しの違和感が流れてしまう ◦ 「〇〇さんがOKと言っているからきっと大丈夫」 • モブレビューのフローが重い場面も ◦ 締切直前の駆け込みPRをマネージャーとレビュイーのみでレビュー&マージしてしまうことも
  17. © 2025 Works Human Intelligence Co., Ltd. 21 やってみた2:全PRを全チームメンバーでモブレビュー イマイチな点

    • 個々のレビューの品質が下がりやすくなった ◦ モブレビューではじめてPRを見ることが増えた ▪ 「モブレビューの時間に確認すればいいや」 ◦ 表面的なコードの書き方に指摘が終始しやすくなった ◦ PR上の修正内容のみに指摘がとどまる ▪ 中には本来ソースの前後関係を汲んだうえでのレビューが必要な更新もあった ◦ 少しの違和感が流れてしまう • “空気読んでApprove”も発生 ◦ 「〇〇さんがOKと言っているからきっと大丈夫」 • モブレビューのフローが重い場面も ◦ 締切直前の駆け込みPRをマネージャーとレビュイーのみでレビュー&マージしてしまうことも • メンバーからも「PRもっとちゃんと見たいです」という声が上がった
  18. © 2025 Works Human Intelligence Co., Ltd. 23 やってみた3:全PRを全チームメンバーで非同期レビュー やり方

    • チーム単位でレビュアー(マネージャー + 同じチームの他メンバー)が、各々のタイミングでPRレ ビュー(= 非同期レビュー) • 全レビュアーのApproveを以てマージ • レビュイーに解説してほしいもの、他のレビュアーと議論したうえでApproveやコメントしたいものは 朝会でモブレビュー開催 よい点 • PRをじっくりとレビューできるようになった • チーム内のレビュー観点の醸成やノウハウ共有もPRコメントを通して継続できた
  19. © 2025 Works Human Intelligence Co., Ltd. 24 やってみた3:全PRを全チームメンバーで非同期レビュー イマイチな点

    • 「レビュアーがじっくりPRを見られるように」を重視するあまり、レビュー遅延が発生した ◦ レビュイーによる口頭説明がなくなり読み解き難易度が上がった ◦ じっくり見ているという名目でレビューを後回しにしてしまう • モブレビュー時代と同様に「全メンバーによるApprove」を目指した結果、レビュー遅延が発生した • 特に開発終盤でのレビュイー側のマルチタスクが頻発した ◦ PRがマージされない → 仕方ないから他の開発に着手 → 終盤に一気にレビュー → マルチタスク化、共倒れのリスク発生
  20. © 2025 Works Human Intelligence Co., Ltd. 25 やってみた3:全PRを全チームメンバーで非同期レビュー イマイチな点

    • 「レビュアーがじっくりPRを見られるように」を重視するあまり、レビュー遅延が発生した • モブレビュー時代と同様に「全メンバーによるApprove」を目指した結果、レビュー遅延が発生した ◦ マネージャーが全PRを一手に引き受けていた以前のやり方を全員でやったようなもの・・・ • レビュー遅延に起因してレビュイー側のマルチタスクが頻発した 誰かのレビューが遅れた場合の考慮ができていなかった チーム開発におけるレビューの優先順位の話、ちゃんとしていなかった メンバーからも「マージが遅れるのしんどいです・・・」という声が上がった
  21. © 2025 Works Human Intelligence Co., Ltd. 26 チーム 1:モブレビューに回帰

    / チーム 2:全メンバーによる条件付き非同期レビュー やってみた4
  22. © 2025 Works Human Intelligence Co., Ltd. 27 やってみた4:その前に レビューフロー改善のためにやったこと

    • チーム開発においてコードレビューは最優先事項であると認識合わせをする勉強会を開催 • 全PR非同期レビューの反省点を踏まえたレビューフロー改善のたたき台を作成 • たたき台のレビューフローをメンバーと一緒にブラッシュアップ ↑実際にメンバーに共有したレビューフロー改善案
  23. © 2025 Works Human Intelligence Co., Ltd. 28 やってみた4:その前に レビューフロー改善のためにやったこと

    • チーム開発においてコードレビューは最優先事項であると認識合わせをする勉強会を開催 • 全PR非同期レビューの反省点を踏まえたレビューフロー改善のたたき台を作成 • たたき台のレビューフローをメンバーと一緒にブラッシュアップ ↑実際にメンバーに共有したレビューフロー改善案 チーム1はモブ形式に戻したい! チーム2は改善案を 元にしていきたい!
  24. © 2025 Works Human Intelligence Co., Ltd. 全メンバーでのモブレビューに回帰 29 やってみた4:モブレビューに回帰/全メンバーによる条件付き非同期レビュー

    チーム状況に応じた最適なレビューフローに変更 チーム 1 全メンバーによる条件付き非同期レビューに変更 • 1 営業日以内の非同期レビュー、それ以降の滞 留/必要に応じてモブレビュー開催 • マネージャー+メンバーの過半数のApproveで マージ チーム 2 判断の決め手 • 他ドメインとのつながりの深さ、ソースコー ドの複雑さから、もともとモブレビューを求 める割合が高かった • PR数も 3 ~ 5 件/月と少ない • PR数は 15 ~ 30 件/月と多めで、モブレ ビューだとレビューが飽和状態になる • メンバーの成長に伴い、全員のApproveでなく ても一定の精度維持やノウハウ共有が可能 判断の決め手
  25. © 2025 Works Human Intelligence Co., Ltd. 全メンバーでのモブレビューに回帰 30 チーム状況に応じた最適なレビューフローに変更

    チーム 1 全メンバーによる条件付き非同期レビューに変更 • 1 営業日以内の非同期レビュー、それ以降の滞 留/必要に応じてモブレビュー開催 • マネージャー+メンバーの過半数のApproveで マージ チーム 2 判断の決め手 • 他ドメインとのつながりの深さ、ソースコー ドの複雑さから、もともとモブレビューを求 める割合が高かった • PR数も 3 ~ 5 件/月と少ない • PR数は 15 ~ 30 件/月と多めで、モブレ ビューだとレビューが飽和状態になる • メンバーの成長に伴い、全員のApproveでなく ても一定の精度維持やノウハウ共有が可能 判断の決め手 やってみた4:モブレビューに回帰/全メンバーによる条件付き非同期レビュー
  26. © 2025 Works Human Intelligence Co., Ltd. 全メンバーでのモブレビューに回帰 31 チーム状況に応じた最適なレビューフローに変更

    チーム 1 全メンバーによる条件付き非同期レビューに変更 • 1 営業日以内の非同期レビュー、それ以降の滞 留/必要に応じてモブレビュー開催 • マネージャー+メンバーの過半数のApproveで マージ チーム 2 判断の決め手 • 他ドメインとのつながりの深さ、ソースコー ドの複雑さから、もともとモブレビューを求 める割合が高かった • PR数も 3 ~ 5 件/月と少ない • PR数は 15 ~ 30 件/月と多めで、モブレ ビューだとレビューが飽和状態になる • メンバーの成長に伴い、全員のApproveでなく ても一定の精度維持やノウハウ共有が可能 判断の決め手 やってみた4:モブレビューに回帰/全メンバーによる条件付き非同期レビュー
  27. © 2025 Works Human Intelligence Co., Ltd. 32 よい点 非同期レビューのよい点はそのままに、期限が設けられたことで以下が追加で改善された

    • 非同期レビューでもレビュー遅延が発生しなくなった • 遠慮なくモブレビューを依頼するメンバーが増えた ◦ 無理して自力でPRを読み解こうとしすぎなくなった イマイチな点 • あと1人で過半数というときにモブレビューを開催するか迷ってしまう ◦ 今のところは朝会や夕会で未レビューメンバーに声掛けすることでまかなえているので、敢えて厳 格にはやっていない やってみた4:全メンバーによる条件付き非同期レビュー
  28. © 2025 Works Human Intelligence Co., Ltd. 34 まとめ:至高のレビューフローは存在しない たとえば・・・

    • 機能の品質を担保できる • 滞留せず、快適に開発を前進できる • チームメンバーの成長の場である • “今”のレビューフローに納得感が持てる PRレビューに求めるポイントを考えておく たとえば・・・ • チームメンバーの人数は? • チームメンバーのスキルは? • 担当機能のフェーズは? • 案件/不具合修正の数や難易度は? チームをとりまく状況を加味する + 今のチームにとって”いい塩梅”のレビューフローを考えるときは