ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

ストックを増やすことで効率化

同じ会社の複数の支社の方から様々なシステムの開発依頼に対応する仕事をしています。
この仕事は、僕が担当になる何年も前から続いているので、かれこれ10年近く続いています。

長い間継続しているので、様々な知識が蓄積されていきます。
担当になった当初は、画面上の言葉の意味がわからなくて、言われるがままに作成していましたが、今ではわかるので、ときには合っているのかと確認することがあります。
機能についても同様で、お客さんが言っていることより、こちらの方がより分かりやすいのではないかと提案することもあります。
不具合対応も同様で、過去に発生させてしまったトラブルは、どうしてそうなったのか、どうすべきだったか把握しているので、新しいシステムを作成するときには反映をしていっています。

f:id:AJYA:20170306124545j:plain
photo credit: sjkln The Wonderland of Knowledge via photopin (license)

新しいシステムを作成するときは、大概既存のシステムを元にして、こういった機能を追加、この機能は削除となります。
こういった機能を追加というのは、大概他の既存のシステムで実現できています。
パッチワークのように、ここはあのシステムで作った機能、こっちはあちらのシステムで作った機能を持ってきて、新しいシステムに適合させて、機能を追加させます。
こうすることで、新しいシステムを短時間で作成することができるようになります。

別の会社の案件では、さすがにそのままではありませんが、細かいレベルのコーディング内容、たとえばjQueryでどう記述すると、選ばれているラジオボタンの値が取得できるのかは、個人のストックとして保存していっています。
簡単なものから、一工夫した結果できたものまで、さまざまな内容をストックしていっています。


長く同じようなことを続けるということは、面白みがなくなる面もありますが、ノウハウが蓄積される分だけ、早くどうすればいいのかの判断ができるようになります。
同じようなことをしつつ、新しい要素を取り入れ、できることのストックを増やし続けていきたい。