お客様の要望に沿ってシステムを形にするのがシステムエンジニアの仕事ですが、仕事となると一人で完結させるのではなく、チームを組んで開発に従事することが多くなります。

プロジェクトチームに入るシステムエンジニアに求められるのは、スキルレベルが大事なのは間違いありませんが、それ以上に自分の作業見積もりができることです。作業見積もりのできないエンジニアは、スキルの低いエンジニアよりもチームの中では使いづらく、敬遠されることもよく聞く話です。

作業見積もりとは

ここで言う”作業見積もり”とは、自分が与えられているタスクの総量を把握し、どの程度の時間で終わらせることができるのかという時間に対する見積もりです。決して金額の見積もりを出すことではありません。

例えばAという作業と、Bという作業の2つのタスクが与えられていた場合、自分だったらAの作業は30分、Bの作業は3時間で終わらせることができると推測できれば、全てを終わらせるのに3時間30分あれば大丈夫ということになります。

このように自分に与えられているタスクに対して作業時間の見積もりができれば、いつから次のタスクに取り掛かれるのかの予測も用意に立てられるようになります。

作業見積もりのズレが全体の流れを乱すことになる

なぜ作業見積もりができる能力が大事なのかというと、見当違いな作業見積もりをしてしまうと、自分だけではなくチーム全体の流れを乱してしまうことになるからです。

例えばAさんは工程管理者であるPM(プロジェクトマネージャ)に「あと3時間で現在の作業が終わります」と報告したとします。PMはAさんからの報告を受け、3時間後からBさんとCさんを後続の作業に取り掛かるように手配します。

しかし実際にはAさんの作業見積もりが甘く、現在の作業を終わらせるのに4時間かかってしまったとしたらどうでしょう。3時間後から動けるように手配していたBさんとCさんも、Aさんが終わるまでの時間、手が空いてしまうことになります。

一人で完結する作業をしていれば単純に1時間のロスで済みますが、上記のようにチームで動いている場合、BさんとCさんそれぞれの1時間分が無駄になってしまい、合計3時間分のロスが生まれたことになります。もし後続処理でより多くのエンジニアがスタンバイしていたとしたら、その分ロスタイムも多くなってしまいます。

スキルレベルが低くても作業見積もりができることが大事

エンジニアとしてのスキルレベルが低かったとしても、自分の作業に対してしっかりと見積もりができるエンジニアの方が開発プロジェクトでは重宝されます。

上記の例をもう一度あげるなら、Aさんがはじめから現在の作業に対して4時間かかると報告していれば、プロジェクト全体で考えた時のロスは最小限に抑えられるのです。工程を管理するPMも効率よくメンバーを動かしていくことができます。

新米エンジニアの場合は、ひとつの作業にどうしても時間がかかってしまいますが、そこまで悩む必要はありません。PMもそれぞれのスキルレベルは把握していますし、作業見積もりさえしっかりとできていればプロジェクトは円滑に回っていくのですから。

少しだけ余裕を持った見積もりをするのがコツ

自分の作業見積もりを出すときには、少しだけ余裕を持って見積もりをするのがコツです。例えば3時間かかる作業なら4時間として報告する。これが5時間や6時間と報告してしまうと、あまりにも管理者の予測と乖離しすぎてしまい、今度は信頼度が下がってしまいます。ポイントは”少しだけ”という点です。

と言うのも、仕事となると一つの作業に没頭できるわけではなく、横槍が入ってしまったり、予測もしない出来事の対応に追われることもあります。

ギリギリの時間を見積もれるのは立派なことですが、そうすると不測の事態が発生した場合、常に見積もりを見直さなければならず、逆に全体の流れが悪くなってしまいます。だからこそちょっとした問題があっても対処できるように、少しだけ余裕をもって見積もりをするのです。それでも想定外の出来事により大幅に遅れが生じてしまうのであれば、それが分かった時点でPMに相談しましょう。

もし何事もなく作業がはかどり、予定よりも早い時間で終わらせることができれば、別の作業を前倒しで進めることもでき、「仕事が早い」という高評価を得ることもできます。

 

おわりに

システムエンジニアとして作業見積もりができることの重要性をご理解いただけましたでしょうか。簡単なことのように思うかもしれませんが、いくつになっても自分の作業に対して見積もりが甘いエンジニアがいることも事実です。

毎度報告した通りに作業が終わらないようなら、”少しだけ余裕をもって見積もりをする”ということを意識してみるとよいでしょう。

 



【X(旧twitter)でも情報発信中】

Xを最近始めたので、フォローしてもらえると嬉しいです(エンジニア界隈の方はフォローバックさせていただきます)! システム開発に関することや、最新テクノロジーのことなど、世のエンジニアにとって有用な情報を発信してます!

"X" @TECH_KEYSYS