"「納品のない受託開発」を知ろう、語ろう会"参加してきました。

【スピーカー】
"株式会社ソニックガーデン代表取締役社長CEO 倉貫義人"さんです。
・株式会社ソニックガーデン
http://www.sonicgarden.jp/

【司会】
"株式会社エイチアイ・シス代表取締役 石川博子"さんです。
・株式会社エイチアイ・シス
http://www.hi-sys.co.jp/

【イベント】
http://dev-revolution.doorkeeper.jp/events/7397

参加意図

今回は「納品のない受託開発」について次の疑問を持っていたので参加させて頂きました。

  • エンジニアのスキルアップが会社の売上・利益増加に直結するようになているか。
  • 「納品のない受託開発」事業のみでやっていけるか。

この疑問への回答を記載する前に「納品のない受託開発」とはどのようなものか記載します。

「納品のない受託開発」とは

私が認識している「納品のない受託開発」の特徴を箇条書きで紹介します。

  • 納品がない。システムはクラウド上にあり稼働しながらずっと開発していく。
  • 受託開発。派遣ビジネスではない。
  • 成果契約。時間契約ではない。
  • 月額定額制。急ぎの要件がある場合は一時的に料金を上げ、人を追加することも可能。
  • 料金は低額。但し非公開。
  • お客様ごとの料金は同額。
  • 開発と保守・運用の両方を担当する。
  • 開発が始まるまでは無料。お客様のビジョンを共有する期間などが該当。
  • 開発する事がなくなれば契約を停止できる。
  • 裁量によっては1人のプログラマが複数のお客様を担当する。
  • 1週間スプリントで開発を行う。
  • 毎週お客様とミーティングを開催する。
  • 週次ミーティングはソニックガーデン本社かSkypeで行う。

了解した特徴の忠度や内容はバラバラですがこのような特徴があり、お客様の外部CTOとして働きます。
次に上記に記載した2つの疑問に対する私なりの回答を記載します。

エンジニアのスキルアップが会社の売上・利益増加に直結するようになているか。

初めに結論です。「納品のない受託開発」はお客様と「成果契約」を結んでいるため、エンジニアがスキルアップをし生産性を上げることで、多くのお客様を担当できるようになり会社の売上・利益増加に貢献することが出来ます。
ただし、「成果契約」であっても納期を約束するわけではありません。つまり、スプリント開始前に設定した目標を達成できなかったとしても、同じ金額をお客様から頂きます。また、目標を達成できなさそうだからといって、無理に残業したり、コードの品質を下げたりして間に合わせようとしません。このような一時的な対策は中長期的にお客さまにとって良い取り組みではないからです。反対に、スプリント前に設定した目標が想定していたよりも短い期間で達成できた場合は、当初設定していた目標以上の機能を実装することもあります。もちろん、毎回設定した目標を達成できていないとお客様と信頼関係を結べませんので、このような事態が頻発してはいけません。
このように「成果契約」であっても、事前に設定した目標が全てではありません。その中で出来なかった部分があってもいいし、目標以上に出来る部分があってもいいのです。しかしこれは本当に「成果契約」なのでしょうか。一般的な「成果契約」とは事前に設定した目標が達成し、成果を収めた時点で契約が成立します。期間内で頑張ったけど出来た部分と出来なかった部分があって、それでいいのであればこれは「時間契約」なのではないでしょうか。
私の考えでは「納品のない受託開発」の「成果契約」では、次のような会話が成り立つのだと思います。

エンジニア:実装してみたら当初予定していなかった課題がありました。この課題解決に多くの時間を使ってしまったため、当初予定していたXという機能を実装できませんでした。しかし、今回見つけた課題はいずれ解決する必要がある課題です。

お客様:わかりました。課題の解決を成果として認め、機能Xが実装できなかったことを受け入れます。

※もちろんこんな会話は行われていないと思います。

このような会話が成立するためにはお客様と信頼関係を築いている必要がありますし、お客様も開発の事を理解している必要があります。この信頼関係やお客様の開発への理解は最初からあるものではありませんし、これらを育てていく仕組みがシステム作りの中に組み込まれている必要があると考えます。
しかし、私はこの仕組にも1点問題点があると考えています。それは、プログラマがお客様に低い目標を設定させてしまわないかという点です。「納品のない受託開発」は月額定額制なので、お客様が低い目標で納得してくれればその分たくさんのお客様を担当することができるようになります。
この点を倉貫さんに直接質問させていただきましたが、確かにこのバランスは難しいとおっしゃっていました。しかし、「納品のない受託開発」で行っている手法の中にはこのようなモチベーションにならないような仕組みが幾つもあるように感じました。具体的には以下の点です。

週次ミーティングには担当プログラマを含めてソニックガーデンのメンバー2人参加する。

担当プログラマ以外に技術がわかるメンバーが参加することで、正当な目標を設定することができると思います。

お客様が成果が少ないんじゃないかと疑問にもったら、直ぐに倉貫さんやCTOに相談してもらえるような関係を作っている。

これは倉貫さんがおっしゃっていました。お客様が成果が少ないなと感じた際に、直ぐに契約を停止されないためにも、ちょっと変だなと思ったら直ぐに相談してもらえるような関係づくりを行っているようです。

お客様と短期的に付き合うより、長期的に付き合う方が収益が安定するビジネスモデルになっている。

「納品のない受託開発」では、開発前のフェーズや最初の1ヶ月は売上が発生しません。従って、同じお客様が「納品のない受託開発」というサービスを継続的に利用していただくことで安定した収益を上げることが出来ます。このようなビジネスモデルになっていることで、お客様のビジネスを成功させようというインセンティブがソニックガーデンにも生まれやすくなっていると思います。

1週間で成果が感じられるように目標を設定している。

システム開発では機能追加やUI改善などお客様が改善を実感しやすい開発もありますが、サーバサイドの処理や安定化のための処理など、お客様が改善を実感しにくい開発もあります。ソニックガーデンでは、お客様が毎週価値を感じられるように目標を設定し、お客様の期待をマネジメントしているようです。


もちろん、これらの仕組みだけで私が抱いた問題点が解消されるわけではないと思いますが、「納品のない受託開発」はよく考えられた良いビジネスモデルだと感じています。

「納品のない受託開発」事業のみでやっていけるか。

初めに結論です。「納品のない受託開発」だけでも会社はやっていける。と倉貫さんから回答を頂きました。そう言い切れるほど需要があるということだと思います。
ただし、お客様から急ぎの要件が来た場合に「納品のない受託開発」だけで100%稼働していると、その要件に答えることができなくなってしまします。開発のスケーラビリティを確保するためには稼働率を80%程に抑える必要があるのではないかと思います。
それで余った稼働時間をどのように使うかというところで別の事業をやってもいいし、オープンソースに貢献してもよい。この点は経営戦略としてどのくらい利益をプールしておきたいかや、会社にビジョンに関わって来るところだと思います。


以上、今回のイベントを通して「納品のない受託開発」の理解が非常に深まりました。
ありがとうございました。
また、このような機会がある事を楽しみにしています。