SEと営業の不毛なる戦い

私がかつてシステムエンジニアをやっていた頃の話です。

システムエンジニアやプログラマーの辛いところとしては、「営業との現状把握の乖離」があるところです。

 

簡単にいえば、「営業が思うシステムと実際のエンジニアが作れるプログラムが大きく違うこと」です。

このおかげで現場のシステムエンジニアは非常に窮屈な工程でプログラムを組んで、確認、テストをして行かないといけないようになっています。

 

営業は「営業ですから契約を採れるかどうか」にかかっています。

一方、システムエンジニアやプログラマーは「お客さんの要望に答えられるプログラムを作れるかどうか」にかかっています。

このSEと営業は、言ってみれば「男と女」のように永遠に相反する存在です。

 

例えば、営業が契約を取る際にはお客さんから必ず「値下げや納期(工程数)の短縮」の要望を受けます。

そうすると営業としては契約が取りたいので、その要望を受け入れます。

言いにくいのですが、もう上司も何もいないので言いますが、この契約のお客さんの要望は「大体無理」があります。(笑)

 

そして、開発部やシステム保守部門に持ち帰り、現場のエンジニアでミーティングが始まります。

 

現場のリーダー「ここ..もうちょっと工数減らしても大丈夫かな?」

私「えっ?無理ですよ、ただでさえ削って見積もりしたんですから」

現場のリーダー「お客さんがね…交渉してきてね。それと新しくこういった機能を入れて欲しいって言ってたよ。新機能ね、新機能。」

 

私の実体験でこんな感じのことがありました。

幸いにも、この時は結構詰めて作業をしたのでギリギリ見積もり通りでいけました。

しかし、結構無理をしたので有給を使って2~3日か休むということもあり、プラマイゼロみたいな時期だったことを覚えています。

職場の人も残業をしていましたから、きっと工数はきつかったとおもいます。

 

スポンサーリンク

営業とエンジニアの問題

営業はやはり契約が取れるかどうかが成績です。

契約が0では困る。そのためには少し条件を落としてでも(例えば、安くしたりオプションをサービスしたりして)契約を取りたいわけです。

今回も同じようにできるだけ少ない工数で、現場のエンジニアに仕事してもらいたかったお客さんの意向を取り入れたのでしょう。

 

エンジニアにも理屈があります。

システムは、ゼロから作る時もすでに出来ているシステムを改修する時も「入念なテスト」が必要です。

システムは論理の組み合わせなので、実物の動きを目で見ることはできません。

ソース(プログラム)を作り、確認して、実際にテスト環境などで動かしてみないと動くかどうかもわからない。

プログラムは1文字でも間違いがあると正しく動作しないでエラーコードを返します。(例えば、「;」を「:」と間違えてもエラーになります)

また動いてもそのプログラムが正しい値(想定された値)を返さないいけない。

プログラムは「未完成か完成」のどちらかで、0点か100点かのどちらかということです。

合格点のプログラムは危ないところがあるんですよね。

そして、これがプログラムの単体での話です。

こういったプログラムが数百あるのが企業のシステムです。

 

 

どんな優秀なエンジニアでも、打ち間違いがあり、1回のプログラミングで全てを完璧に行なうことは難しいです。

プログラムは「どこが間違いかを教えても、何を直せば良いか」は教えてくれません。

ソースを作って直すのは、不確定な要素も大きい。だから、見積もりではやや多めに取る。

 

しかし、営業やお客さんはそこを突いてくるわけです。これがシステムエンジニアがキツいと呼ばれている1つの理由だと思います。

 

残念ですが、営業とシステムエンジニアの不毛な戦いはなくなりそうにないかもしれません。1つ、希望があるとすれば「お客さんがどれだけ現場の内部をわかっているか」ということでしょう。また現場を考えられるだけの資本があるかもポイントになると思います。

 

コメント