株式会社スマレジの開発部でスマレジのサーバサイドを作っています

あるべき姿であれ(SIerとの考え方の違い)

こんにちは!株式会社スマレジ、入社12週間目のマサです!

本格的に暖かくなってきましたね!マサは冬コートをやめ、ジャケットでここ数日は通勤しています。

今日は仕事の中で感じたモノづくりに対する考え方について、前職のSIerとの違いをお話してみたいと思います。

「正しいこと」と「動くこと」

一番違いを感じるのは、SIerでは「動くこと」を最優先することに対して、ASPであるスマレジは「正しいこと」を最優先します。

SIerでは「納期は絶対」です。プロジェクトにおいて納期より尊い存在はメンバーの生命しかないんじゃないだろうかと思うくらい、必ず期日までに仕様通りのものを納品します。そのため、納期を守るためにPMはあらゆる手段を講じます。「いわれた通りのものが、言われた通りの性能で動作する」のであれば、コーディングレベルのミスは、「些細な事」や「プログラマのこだわり」と切り捨てて考える部分が、下流工程ではたびたび起こります。

これは、ある部分仕方がないところがあります。SIerのSEに必ずしもプログラマ経験があるわけではないからです。

「作れないSE」は現場に入ってみると驚くほど多くいます。もちろんその分、お客様の業務理解が優れていたり、SE事務に秀でていたり、別の部分で伸びている力はありますから、一概にそれが問題であるとは言えません。しかし、ベンダー側に製造知識のないSEだけがプロジェクトにアサインされることは、下流工程での品質問題につながる温床になるのは、言うまでもありません。

仮にスクラッチ開発をしたとしても、納品したソフトウェアを、プロジェクトのSEやパートナープログラマが追加改修する頻度は限られていることが多いです。(工数がない場合がほとんどなので…)その結果、「もう蓋を開けないし、いいじゃないか」と言って荒れたソースを納品することにSEが抵抗を感じにくいところがあります。
みんながみんなではありません。コードレビューに参加するSEだって、たくさん存在しています)

スマレジのようなASPの場合は、どうか。

いうまでもなく自分たちの書いたコードは自分たちの資産です。
つまり、長くにわたってメンテするのも自分たちです。こうなると製造工程での品質は非常に重要になってきます。コーディングの作法(規約だけではなく)や処理の書き方はすでにあるべき姿が技術書や規約として明示されていて、それを守ることが重視されます。つまり、「正しく動き、正しく書かれていること」がとても大事になります。未来の自分のためにも。

そして、それを可能にするのがスマレジのビジネスモデルにあります。

スマレジはアカウントの月額課金で収益を得るサービスなので、タイトな納期などはそもそも存在しません。したがって設計~製造にSIerよりも潤沢な工数を割くことができるのです。

その分、新たな顧客を獲得するため、あるいは既存のお客様の機能要望をどうすくいあげるのかといった、要件定義工程やその前のサービスの構想段階での負荷はSIerに比べて大きいのではないでしょうか。いわれたものを作るのではなく、「ほしいと思ってもらえるもの」を作るわけですから。なので、要件定義を主体になって進めてくれるベテラン社員さんや上司の存在は非常に大きいです。

今日は、SIerとの違いを仕事の取り組み方・考え方からお話してみました。