ざきの学習帳(旧 zackey推し )

日々の学びを書きます

アップデートやリファクタリングのときに「やりたかったことが思ったよりも残ってしまった」をしないための対策

※自分のための反省、ポエム記事(日記)に近いため、技術記事と期待された方はスルーしてください。🙏

2019年は色々あった。時系列に並べると、

  • 人生2回目の退職と転職
  • 実家で料理屋さんが始まった、サイトつくった
  • はじめての自社プロダクト開発
  • はじめてのリモートワーク
  • 大きい勉強会スタッフに関わる1
  • 30歳になっちゃった
  • はじめて勉強会(もくもく会)を主催した
  • はじめて精神面系で体調を崩す
  • はじめて自分が関わったプロダクトが世にリリースされた
  • プロダクトのバージョンアップに合わせたフロント(Vue.js)のアップデート・リファクタリングを担当(継続中)

この記事には、最後のアップデート・リファクタリング作業中に反省(思ったこと)を
次回、同じような作業を進める自分のために書いておく。

リファクタリング内容

やった(またはやり途中)のものは、ざっくりと以下。

ビルド周りは特殊なことをしていなかったため、Vue CLI周りは大した修正量ではなかった。

だが、VueMaterial / VeeValidate は修正量がえぐい。

メジャーバージョンアップし、導入・使用方法が大幅に変わったためである。

反省(思ったこと)

ほんとは会社で振り返りをやりたいが、時間が取れていない。

そのため、まずは自分1人でサクッと振り返り、反省点をつらつらと書いていく。

常日頃から改善案をためて、定期的に議論→解決策を出しておくべきだった

こういったバージョンアップ作業のタイミングは、
修正量が多いという理由に併せて、色々な負債が解消できると思っていた。

だが、実際にできたことは以下。

思っていたよりも、やりたかったことが残ってしまった。

原因は、
普段開発している際に「ここはこうすべきかな...」と感じた課題を共有し、
調査・対策を行なっていなかったためと結論を出した。

改善するため、以下の方法を試している。

  1. Issueに改善すべきことを登録しておく
  2. 改善したい内容と経緯を書く
  3. 週1MTG or Slack分報で検討・対策案を練る

上記でその対策を適用するか、というのが決められていないが、
前には進んでいると思う。

Issueをもとに調査(勉強)すべき方向性を出す

今回、一番悔しかったことは、
Issueの内容を事前にためて、対策を考えておけば、
プライベートの調査(勉強)時間にあてられたということ。

対策を練るためには事前の調査と検証が必要となる。
その時間を勉強時間にあてることができ、
業務上の工数が少なくとも、実現できていたものも多いはず。2

そのため、普段からIssueをためて対策を練り、
調査・検証が必要な方向性を常に出しておくようにしていきたい。

専任させてほしいと言うべきだった

現在の作業以外にも、他割り込み作業がパラパラと発生している。

割り込み作業自体も、さっと1Hで終わるレベルではない、
スイッチングコストが高いものが多い。

結果、改善するための調査・設計・対応工数が取れず、
見送りとなってしまった負債が多くなってしまった。

割り込み作業に関しては、
業務委託の方に任せるといった選択肢もあるため、
ライブラリアップデート・リファクタリングに集中させて欲しい旨を、
作業開始以前3に言えていれば、考慮してくれたかもしれない。

まとめ

まとめると以下。

  • 日頃にふと過ぎった改善案をIssueにまとめ、非同期的に対策を練る
    • 対策をもとに、調査・検証すべき内容を明らかにしておく
  • 先々の予定や工数割り当ての周知、見える化の協力をしてもらえないか相談する

  1. 技書博のこと。

  2. いままでの勉強は無駄にはなっていないが、極力事業に貢献するための近道となる技術や知識を学んでおきたい。

  3. その他メンバー・業務委託の方の工数調整も必要となるため、先々の作業をもっと周知してもらう(見える化しておく)といったことも大事。