工数の見積もりができていない
IT業界にはブラック企業が多いと言われていて、かなりの長時間残業を強いられる職場も確かに存在しています。そのことを広く知られていながらなぜその状況が改善されないかというと、プロジェクトをスタートさせる段階で工数の見積もりがおかしいからというのが理由のひとつです。
なぜ見積もりがおかしくなるのか
プロジェクトについてクライアントから詳しい要件を聞いて計画を設計するのは、システムエンジニアや営業担当者です。この部分の役割を担う人がITについての知識に弱かったり、プロジェクトの流れがきちんと理解できていなかったりすれば、正しい見積もりを出すことはできないでしょう。すると、クライアントの希望になるべく沿って何とか仕事を受注するという方に意識がシフトしてしまうので、現場の状況に全くそぐわない非現実的な見積もりで契約してしまうのです。そうなれば、後はその無理なスケジュール通りに仕事をするためにひたすら残業の日々となってしまいます。クライアントにしてみれば、なるべく安くて質の良いものを早く納品してもらうことを希望すると思いますが、プロジェクトを実行する方にしてみれば安い予算内で人件費を賄わなくてはならないので、少人数で膨大な残業をこなすことになり、スタートから悪循環が生じてしまいます。
人手不足が招く悲劇
プログラム開発の現場は人材不足という所も多く、経験の浅いシステムエンジニアがクライアントからヒアリングを行うというケースも少なくありません。経験が浅いのである意味仕方がないことかもしれませんが、本来であればシステムエンジニアがクライアントの要望を聞いた上で要件を具体的で現実的なものにまとめなければならないところを、基本設計の段階で必要ない機能を付けてしまったりして結局後で仕様変更となり、プログラマが作業に追われるという結果が生じてしまいます。話のわかるクライアントであれば再度交渉の余地もあるかもしれませんが、もう一度時間を取ってもらってヒアリングをするというのは信用を無くしてしまう要因にもなるため、できれば避けたいことでもあります。
また、万が一納期に間に合わないなどということが起きてしまえば、単なるクレームでは済まない問題に発展するリスクもあるので、現場は大変な状況下に置かれてしまうことになります。
ベテランに仕事を頼めない
仕事が大変ならばベテランプログラマをプロジェクトチームに入れたいところですが、ベテランの場合は単価が高くなってしまうので、予算が足りなくて入れられないというのが多くの現場の実情です。プロジェクトは他社との競争で勝ち取るものなので、本来必要になる予算よりも少ない金額で仕事を引き受けなければならないことが多く、結局は経験が浅いチームで大変な仕事を何とかしてこなすという辛い状況のスパイラルになってしまうのです。