スポットライトCTOを退任いたします。

2014年末をもってスポットライトのCTOを退任させていただくことになりました。

2011年の設立から、約3年ちょっと社内外含めいろいろとお世話になりました。今後については未定なのですが、しばらくは社外の技術顧問として残らせていただく予定ですので、今後とも宜しくお願いします。

CTOという役職をやらせていただいたのは今回で2回目、どちらも創業から関わってます。
そして、最近CTO論というやつが流行ってるところもあり、なにやら乗ってみたい感じなのですが、、、概念的なところは、大御所の皆様方がまとめられているのそちらを参考にしていただくとして。。。

実際に、このスポットライトという会社ののCTOが、何をやってきたんだろうというところを振り返ってみたいなと思ってます。

コンテンツとしてはこんな感じで、、

1回目

  • スマポのはじまりについて
  • リリースまで
  • リリース後1日目でサーバーが落ちた。
  • はじめての採用

2回目

  • シリーズA
  • 楽天へのJOIN(買収)
  • まとめ

2回シリーズになっております。長文になりますが、年末やることがなくてよほど暇なら読んでください。。。

■スマポのはじまりについて

たまたま友人経由で、面白そうなビジネスを考えている人がいるから話を聞いてみてほしい、と言われて代表の柴田と会ったのが始まりです。

企画書レベルで来店ポイントのビジネスモデルが出来上がってて、一部クライアントにも営業を始め、なんと受注もしている、そして9月にリリース予定!という状態で、すごいんだけど、これで作れなかったらどうするの?と、話を聞いた瞬間思いましたが、いろいろディスカッションする中で、超音波を発生する機器を店舗に置いて、スマートフォンのマイクでそれを読み取りチェックインさせよう、ということがその場できまりました。

実は、スマフォとなんらかのハードウェアが通信できたらなにか面白いことができるんじゃないか?と、いろいろリサーチしていました。調べる中で、WifiBlueTooth(まだBLEが無い)などはプラットフォームの制約があったり、制限されたり、使いにくいなと、音声に関しては自由につかえそうなだということがわかってました。実際Squareがイヤフォンジャックで経由でカード情報をやりとりしたり、アメリカで先行して来店サービスをローンチしているShopkickなどはまさに超音波を使った通信を利用していました。

■リリースまで

創業期からCTOとして参画されている方であれば、ほぼそうだと思うですが、1エンジニアとして、アプリからサーバーサイド、インフラ、その他、ほとんどすべての開発を1人で行っていました。ちなみにハードウェアはうちのエースエンジニアで当時大学院生だった青山君がほぼ監禁状態で作ってました(その時参考→http://www.mote-ch.com/interview/topic/money/spotlight)

もう顧客がいる状態だったのでリリース日は変えられず、本当にギリギリまで開発してしてました。ハードウェアは外部に発注する時間も金もなく、バイト雇って基盤からエッジングして生産、、、薬品臭のただよう空間で、最後は丸三日、一切寝ずにコーディングしてました。いやもう辛かった。。。

そんなこんなで、なんとかリリースでき、スマポがスタートしました。

このころ選択した技術的に重要なこととしては

  • 超音波ビーコンに来店検知の開発
  • 独自ハードウェアを作る
  • 位置情報を扱うためにPostGIS(PostgreSQL)を導入

参考: http://enterprisezine.jp/dbonline/detail/5503

何度もアップデートしてますが、今でもうちの技術の中核となっているところだなと思います。

■リリース後1日目でサーバーが落ちた。

なんとかリリースはできたものの1日目でサービスダウン。情けない。。

なんとなく面白そうという理由で選んだGrails。これが大失敗だった。全く安定しなくて困り果て。。。具体的にはPermGemスペースを使い切ってしまうという問題があり、数日で再起動が必要になってしまう状態。jvmの設定からいろいろ試しましたが、解決せず。根本的に書き換えが必要と判断、と同時にPythonにスイッチしました。Pythonは僕が関わっていた別のプロジェクトで使っていて、印象が良かったので、選びました。

ちなみに、Grailsが悪いとはいいません、単に僕がこの環境でproductionレベルまで持っていくスキルがなかった。そして、今はもっとよくなっているでしょう。Grailsでなければここまでの短期間で開発することはできなかったです。(結果よかったかなと今は思うようにしています この辺りはツッコミ大歓迎です。どうしたらよかったかgrails詳しい人教えてください。)

Pythonがサーバーサイドに主要言語になりました。

■はじめての採用

実はまだこの頃、僕自身スポットライトにフルコミットというわけではなく、別のプロジェクトに関わりながら片手間に関わっている状態でした。しかもオフィスもまだありません。

当然、報酬も0です。これ重要w 

当時ハードウェア周りを手伝ってもらった青山君にもまったく報酬を出せず、ちょっと申し訳ないので、違う仕事を紹介したりと、まあ、グレーというか完璧黒でしたね。。。

そんな状態ながら加盟店舗が徐々に増え、業務たてこんで来て片手間では回らなくなってきました。

でも僕はまだ別の案件抱えてるし、なかなかリソースが取れない、じゃ誰か雇うか??誰が面倒見るの??オフィスかりるか??と、いろいろありつつも、人ないと始まらなくね?ってことで五反田に小さなワンルームを借りて、採用活動開始!

と、言っても何したかな??うちの代表がPythonエンジニア募集とつぶやいたぐらい。。そしたら速攻応募がきた!とんとんと進み面接。オフィスがあれなので、近くのカフェで面接しようとw

カフェで待ち合わせて、早速面接を始めようとしたら、向こうから。。。

「ちょっと最初に自分で作ったプロダクトのプレゼンしていいですか?」

と、その後は彼の独壇場、、なんか変な人だけどよさそうじゃね?と採用決定!

彼は未踏のスーパークリエーターでした。そしていまでも弊社のエースエンジニアです。

続きは来年!良いお年を

2回目はあるのだろうか?