SIer での働きかたについて考えたりするなど

SIer が利益をあげるには、高い金額で受注して安く完成させる以外にない。
SIer と言ってもやっていることは様々で、僕は特定のお客さまを対象に基盤となる業務システムの保守および派生開発をメインに行っているチームで仕事をしている。

こういうチームの場合は保守料として定常的に一定額のお金をお客さまからいただいているので、障害などが発生しなければ基本的にはこの保守料が利益になる。また、開発案件があるときには、上記のように高い金額で受注して安く作ればそれが利益になる。
お客さまにも年間の予算や事業計画があり、そのなかで SIer に開発を依頼する訳であり、SIer が開発案件を受注したいからといって受注できるものではない。
このような状況のなかで働く人々にとって必要なのは、どれだけお客さまのビジネスに貢献できるかという意識を持つことだろう。

  • お客さまが利益をあげる
    • 投資にまわる予算が増える
    • 開発案件が増え受注も増える(といいな)
  • お客さまが利益をあげられない
    • 投資予算が縮小
    • 開発案件が受注できない、保守料も値下げを要求される、など次々と襲いかかる厳しい状況

簡単な話である。


いわゆる SI としては開発を行い納品したところで終わりなのかもしれないが*1、お客さまとしては納品されたところがスタートでこれを使ってどれだけ利益をあげられるかというところがポイントとなる。
では、開発中にエンジニアはどこを向いて仕事をすべきか。ウォーターフォールであれば実装は設計書に従って行うことになるが、実装中に「ここは設計書では○○だが、△△にしたほうがよいシステムになるだろう」とか、「☆☆機能については明記されていないが実装したほうがよいのではないだろうか」とか思うことは多々あると思う。こういうときに柔軟に対応できるお客さまだったとして*2、どこまで対応すべきだろうか。対象の変更の規模にもよるだろうし、お客さまと相談して品質・コスト・納期などを考慮して決定されるものでいわゆるプロジェクトマネージャやプロジェクトリーダの仕事になると思うが、いざ自分に判断が任されたときに何を基準にするとよいだろうか。
個人的には出来ることは可能な限りやるほうがよいと思うが品質を犠牲にはできず、納期を遅らすというのも許されない場合が多いだろう。求められていることを期間内に完了させることに加え、追加でお客さまのために+αをやろうと思うと残業などによりコストをかけてやるしかない。お客さまから予算を追加でいただければ問題ないかもしれないが、実際にいただけるケースというのはまれだろう。となると、自社の利益を削って行うことになるが、SIer で働く立場としては「何故利益を自分から削りにいくのか」という問題と衝突してしまう。



上手い例が思い浮かばず一部極端なところがあったりするけれども、「自社の利益を最大限確保するために最低限の求められていることだけをやる」か「多少自社の利益を削ってでもお客さまのビジネスに貢献できるよう全力をつくす」か、どういう意思で仕事をしていくと自分が幸せになれるか、自分だけでなくみんなが楽しく仕事をするにはどうしたらよいか、というところが最近のモヤッとしているところであったり、今後の解決していかないといけない課題だったりするわけあり、id:hotchemi さんのエントリ『人月 - ギークに憧れて』を見て書きたくなったことでした。




世界が平和でありますように

*1:保守等が続いて行くということはある

*2:このようなお客さまは実際に存在しないかもしれないが