私たちソニックガーデンが提供する「納品のない受託開発」では、お客さまが事業で使うウェブサービスの開発と運用を一手に引き受ける仕事をしています。
私たちの社員が、お客さまの事業の企画の段階から相談にのって考えて、一緒に設計を行い、その企画を自らプログラミングして、ユーザが利用する段階の運用まで引き受けます。そのように、ITに関するすべての工程を受け持つ職業のことを、私たちの会社では「プログラマ」と呼んでいます。
プログラマといえば人によっては、その仕事のイメージはマチマチかと思いますが、私たちの考えるプログラマとは、ひとりでソフトウェアエンジニアリングのすべてが出来る人のことです。そして、「納品のない受託開発」では、プログラマの一人一人が、お客さまの顧問のような形で担当を受け持ちます。私たちは、お客さまの「顧問プログラマ」としてサービスを提供させてもらっているのです。
この記事では、私たちが提案する「顧問プログラマ」という考えかたについて書きました。
目次
ビジネスの本質でないところは専門家に任せる
もし、新しい事業をしようと起業するとしましょう。そして、会社をつくったとして採用活動をするときに、法務のために弁護士を、税務のために税理士を採用しようとしたりするでしょうか。そんなことはないはずです。
弁護士事務所や税理士事務所を作ろうというのでなければ、わざわざ弁護士や税理士を自社の社員として雇用して抱えることは考えないはずです。よほどの大企業でないと、そうした専門家を社員として雇用することなどないのではないでしょうか。
なぜならば、それぞれの企業におけるビジネスの本質は、法務でも税務でもなく、そこで提供する顧客のためのサービスにあります。書店をするならば本の販売、飲食店なら料理やおもてなし、といったようにです。まずは集めるべきは、そのビジネスの本質に近い社員のはずです。
ただし法務や税務については、ビジネスの本質ではないけれど、会社を経営していくとすれば、どうしても必要となる機能であるため、専門の事務所に相談して顧問として契約を結ぶことになると思います。
もちろん中には、経営者みずから税務のことや法務のことを勉強し実践することで、アウトソースしないという考えかたもあるでしょう。しかし、そもそも会社としてすべき事業は何か、自分の強みはなにか、を考えたら、本質以外に時間を費やしている場合ではないはずです。
経営者として専門家に相談できるまでの最低限の知識は必要ですが、その先の問題解決については専門家にアウトソースするのがいいはずだと、コスト感覚をもった経営者であればわかるはずです。限られた資源をどこに投資して、何を強みとするのか、それを考えるのが経営者の仕事だからです。
インターネットとITは新規事業に必須となった
今の時代、新しい事業を行おうとする際に、インターネットを使わないということなど殆どありえません。どんな事業をするにしても、インターネットとITを活用することになるでしょう。そうしたときに、採りうる選択肢は何があるでしょうか。
自分自身でエンジニアリングの素養があれば、自ら事業に必要なソフトウェアを作り上げるのも良いでしょう。しかし、事業を進めるために必要なのは「作ること」だけではありません。事業によっては、マーケティングも集客も営業も必要でしょうし、資金調達も必要かもしれません。むしろ事業においてソフトウェアは一部です。
かといって、ソフトウェア会社にアウトソーシング出来るかと言えば、何を作るか、ということがハッキリしていない場合、通常の一括請負の契約ではうまくいかずトラブルになるケースが多いです。
既にしっかりと事業として立ち上がっており、必要なソフトウェアが見えているのであれば、アウトソースできるかもしれませんが、新規事業の場合は立ち上げるためのソフトウェアが必要で、そこに鶏と卵のようなジレンマが起こります。
特に、顧客と直接つながることのできるインターネットの世界では、常に最適な状態に変化していく必要がありますし、新規事業ならばなおさら、事業のトライ&エラーにあわせてソフトウェアも変えていかねば、生き残ることも成長することもありません。
エンジニアを雇用して内製することの難しさ
アウトソースが難しいからといって、内製をするためにエンジニアの採用を進めようとするところが多いですが、そうは簡単にはいきません。エンジニアを採用するには、エンジニアリングを知っていないと評価できないし、エンジニアたちを教育することも、そもそもエンジニアから共感を得ることも難しいからです。
エンジニアを採用するというのは会社にとっては、税理士や弁護士を採用するような新しい職種を用意するのと同じことです。
ビジネス部分を担当する社員であれば、その先のキャリアパスや社内での評価基準、給与水準などは決めることが出来たとしても、もし弁護士や税理士を雇うと考えれば、他の社員と同じようには扱うことはできないはずです。そのことはエンジニアも同じなのです。
新しい事業をする際に、エンジニアではない方がエンジニアの教育までやりながら、事業を進めることは非常に難しいことだと思いませんか。新しい職種を作って採用し、その上で教育と評価をするには、大きなコストと時間がかかる上、そこまでしても社員が去ってしまうリスクも捨てきれません。
エンジニアの上司がエンジニアでないことの弊害は沢山あります。技術的な決断についてブラックボックスで任せるしかなくなるのは、経営上のリスクになりえます。創業メンバーや経営にコミットする立場にエンジニアがいれば良いかもしれませんが、そもそも、そのエンジニアをどうやって評価して選ぶのでしょうか。
事業をする上でインターネットやITが必要だからといって、エンジニアを雇用して内製するというのは、そんなに簡単なことではないのです。
顧問弁護士や顧問税理士のような「顧問プログラマ」
そこで、顧問弁護士や顧問税理士のような形で、ソフトウェアエンジニアリングに関しても、既に実績のあるプロフェッショナルを顧問として契約を結び、ずっとサポートしてくれるような「顧問プログラマ」を提供しようというのが「納品のない受託開発」のひとつの側面なのです。
ただ相談にのるだけでなく、事業の企画や設計を共にして、その先の動くソフトウェアを作って運用し続けるところまで面倒をみてくれるのが「顧問プログラマ」です。
工程の一部分だけを担当するのではなく、分業せずに一手に引き受け、そして、一過性ではなく、事業を進めていく限り必要となる機能を、会社として継続的に引き受けるのです。それができるプロフェッショナルを集めています。
ゴーイングコンサーンである企業を、ソフトウェアエンジニアリングを担当する「人」でサポートしていく。それを個人と契約するのではなく、私たちが会社として契約してサポートしていきます。
本来であれば顧客側が多大なコストをかけてでもしなければ得られなかった、ソフトウェアエンジニアリングのプロフェッショナルを採用し教育し評価する部分を受け持っているという考えかたです。私たちはこのサービスを提供するために、優れたエンジニアを揃え育てることにフォーカスをあてて、その点を強みとしているのです。
つまり「納品のない受託開発」はプロフェッショナルサービスでもあるのです。
エンジニアにとっての「顧問プログラマ」という仕事
モノ作りをする人にとって、自分の作ったものを使ってくれる人からのフィードバックがもらえることは、何よりの喜びだったりします。特に、仕事でモノ作りをするのですから、自己満足で終わるのではなく、他の人が使ってくれることは大事なことです。分業が進みすぎて、何を作っているのかわからないまま仕事をするのは、エンジニアにとっては不幸なことではないでしょうか。
「納品のない受託開発」では、エンジニア自身が「顧問プログラマ」としてお客さまとの交渉から行うので、何かミスがあったりすると自分にダイレクトに返ってきます。そのことは大変な責任を感じることではありますが、一方で、自分が作ったソフトウェアで喜んでもらえるというフィードバックも直接受け取ることができます。このことはとても大きなモチベーションの源泉になりえます。
また、顧問として担当する際は、エンジニアリングのすべてを任されるので、何を作るのか、どこを作るのか、すべて把握した上で仕事をしなければいけません。これも大変ではありますが、自分の判断がストレートに品質につながることは、腕に自信のあるエンジニアにとっては、モチベーションにつながります。
「納品のない受託開発」に携わることはエンジニアにとっての天国なのではないか、と思って採用の応募に来られる方もいらっしゃいますが、それは大きな誤解です。確かにエンジニアとして働きやすい環境であるかもしれませんが、顧問プログラマとして働くということは、毎週成果を出し続けなければいけませんし、基本的に自分一人でカバーしなければいけない範囲も大きく、常に勉強を続けなければいけません。これは、けっこう大変な環境です。なので決して天国なんかではありません。しかし、高みを目指そうというエンジニアにとっては、最高の舞台とも言えます。
また、顧問プログラマというスタイルにすることによって、仕事ではお客さまのチームの一員として一緒に働く喜びを得ることが出来て、かつ、同じスタイルで仕事をする仲間同士は同じ会社のチームとして最新の技術について語り合って刺激を受け合い、また技術で困ったことを助け合うことができるのです。
顧問プログラマたちが所属する私たちの会社は、技術者コミュニティのようなものかもしれません。
社外に置いた「最高技術責任者(CTO)」として
「納品のない受託開発」のお客さまの殆どは、インターネットを使った新規事業を行おうとされるチームです。ここでいう新規事業は、Facebookなどのようなインターネットだけで完結するようなサービスではありません。
たとえば、私たちのお客さまのひとつである株式会社AsMamaさんは、助け合いの社会を実現するというミッションのもと、働くママさん同士で子育てを助け合える相手を見つけることのできるサービス「子育てシェア」を提供されています。
この事業を実現するには、ただ単にインターネットとITの知識があれば出来る訳ではありません。むしろインターネットとITは、その実現を支える手段の一つではあっても、事業の本質ではありません。AsMamaさんの事業の本質は、働くママさんや支援者を集めてくることができるマーケティングやコンテンツなどといったリアル面にあります。
そこで、私たちがテクノロジー面のパートナーとして、その事業を推進する上で必要なプラットフォームの開発と運用を任せて頂いています。システムとして何が必要なのかといった企画の部分から一緒に検討させて頂き、ワンチームとして、ずっと一緒にやってきました。
お客さまであるAsMamaさんからは「まるで社外にCTOがいるようだ」と言って頂けています。CTOとは、よくスタートアップ企業で置かれる役職で、最高技術責任者のことを略して呼びます。そのように言って頂ける関係を築けることは私たちにとってはとても嬉しいことです。
この社外に置いたCTOというスタイルが「顧問プログラマ」の究極の形の一つだと思います。