【仕事】プログラミングはできる人に任せるようにしたら結構楽になった話
去年の10月頃、以下のような記事を書きました。
【仕事】Webエンジニア志望の今日やった仕事が振り返るとアプリ系ばっかりだった。
今振り返っても
・アプリとWebの案件を3つ同時進行をしながら
・書いたことない言語のソースレビュー
・新入社員の面倒を見ながら
・お客様の要件をヒアリングしつつエンジニアに作業を振り
・自分の持っている案件の実装をし
みたいな地獄のような状況でした。
今もそんなに状況は変わってないのですが、どうすれば良くなるか考え、実施した結果かなりマシになったので良い機会だから振り返りをしておきます。
分析:自分の持っている仕事で他人に任せられる仕事を考えた
自分の役割(ミッション)は『プロジェクトの進行を円滑にする』でした。
難しい部分は自分で実装したし、とにかく重要な部分は理解するくらいなら作ってしまえ。ってタイプでした。
でもこれ、仲間を信用してないし、仕様の理解しても結局セルフレビューするしかないので超危険でした。
なので自分は『進行の管理』と『作業の確認』に徹しました。
なので、他人に任せられる仕事は『プログラムの実装』でした。
課題:『完了の定義』を明文化した
自分でどうにかしていた部分を他人に任せるということは、『作業結果の確認』が必要不可欠です。
今までは簡単な部分を任せていることが多かったのでそんなに苦労しませんでしたが、根幹を任せたりするとなると確認は不可欠だし、ある程度の設計も不可欠です。
最初は大変でしたが、設計書兼テスト仕様書を自分で作ってそれを皆で確認するようにして行ってなんとか完了の定義を明文化することにしました。
テスト仕様書で仕様の担保をしつつ、設計書のような役割をしていましたね。
実装前に仕様を設計書に落とせていれば苦労はないのですが、うちの会社にはそんな文化ありません。。。
危険ですよね。そこもどうにかしなければなぁ。
と思いつつ、納期の動かないアジャイルのような進め方をやっているので結局仕様変わりますw
なので組み上げながら『設計書兼テスト仕様書』の項目を満たすプログラムを『完了の定義』に設定しました。
結果:自分の負担が減り、プロジェクトが円滑に進むようになった
今回改めて整理すると、
・プロジェクトの進行管理
・要件整理
・タスクの洗い出し
・設計
・プログラム実装
の全てをかじっているような状況でした。
ゾッとしますねw
今回はプログラム実装を完全に他者に任せ、設計の部分でテスト仕様書のようなものを作って担保することでなんとか安定させることができました。
最初の方を読んでお気付きの方もいるかもしれませんが、自分は元々『Webエンジニア』志望でした。
ただ今となってははもういいやw って思ってます。
自分の場合、『プログラミングするよりお客様から要件を吸い上げて整理し、仕様を考える』方が自分に向いてるし楽しいです。
組み上げはプロに任せようと思いました。
自分が何を課題としているか考え、課題の解決方法を絞り出し実行に移す。
これができたから今の状態があるのかな。って思ってます。
降ってきた仕事をそのままこなすだけじゃ消耗するだけ。
時には立ち止まることも重要ですね。
これができるような環境でないなら転職を強く推奨します。
自分に合った仕事はきっと見つかりますよ。
この先60年続くことができるか、自分の人生を今の会社に注ぐ価値があるかどうか考えてみると良いかもしれませんね。
迷うようなら『10年後の仕事図鑑』から仕事を選ぶのも良いかもしれません。
プログラミングの自動化は革命で起きるかもしれませんが、仕様を決める仕事は人間と人間の仕事。
これは絶対になくならないし、対人スキルは生涯使うものなので絶対に腐らないと思ってますね。