スタートアップで540日間働いてわかった6つのこと

こんにちは。Tokyo Otaku Mode(以下、TOM)の薮崎です。私はTOMで主力事業に育ったEコマースの運用チームとカスタマーサポートチームのリーダーを担当しております。

今回は、私が2013年2月にTOMに入ってから今日までの約1年半で体験してきたことを共有させていただきます。

###はじめに -TOMと私-

私は大学卒業後、ベンチャー企業2社を経て、2013年2月にTOMにジョインしました。以前勤めていたスタートアップを辞めたあと、たまたま友人がTOMに社会人ボランティアとして参加していることを知り、EC事業を統括するCOOの安宅を紹介してもらったことがきっかけです。TOMのことについては、正確な時期は忘れましたが、いいね!数が30万くらいのころに存在を知り、それ以来ずっと気になっていた謎の組織でした(笑)。そのTOMの存在の謎が解けた、2012年8月に出た日経新聞電子版の記事は、何度も読み返したのを覚えています。

私は最初、TOMにボランティアとしてジョインしたのですが、実を言うと、最初は週2、3日程度の参加にとどめるつもりでした。前職を辞めてから日も経っていなかったですし、新しい組織に飛び込む心の準備ができていなかったからです。しかしながら、いきなりスイッチが入ってしまったようで、ジョインした初日から今日まで1日も欠勤することなくフルタイムで出勤しています(笑)。※念のため、現在は社員としてお給料をいただいています。

TOMは今でこそインターン生やアルバイトの方を含めて50名規模になりましたが、私が入ったときはフルタイムのメンバーが10名いたかいないかくらいで、初めてオフィスを訪れたときは「少なっ!」と心のなかで叫んでしまったほどです(私はその前週末にTOMのインターン生・ボランティアメンバーを合わせて30名ほどが集まるMTGに参加していました)。

私が入ったときはちょうどEC事業のトライアルを始めたばかりで、2商品目を販売するタイミングでした。EC事業の立ち上げは、当初はトライアルということもあり、COOの安宅とエンジニアの堀木と私の3名が中心となり、商品のリストアップ、商品買付、契約締結、サイトディレクション、メルマガ作成、Facebook投稿の準備、商品登録、梱包資材の購入、発送、お問い合わせサポート、アンケート集計、新しいメンバーの面談など、ありとあらゆる業務を行っておりました。東急ハンズに同人誌を入れるための梱包資材を買いに行ったり、出荷のタイミングを早めるために、毎回、郵便局に出向いて商品を出しに行ったりしたのも、今では良い思い出です(笑)。

EC事業にかかわるメンバーが増えた今では、商品情報の登録と購入された商品をお客様の元まで届ける業務を担う運用チームと、お客様からのお問い合わせに対応するカスタマーサポートチームのリーダーを兼業しています。ちなみに、EC事業は1年半前から売上は1,000倍になり、順調に毎月右肩上がりに成長を続けています。

話が少し戻りますが、TOMにジョインしたころの私は、英語と中国語(日常会話レベル)が少しできる程度の際立つ専門性のない人材でしたし、なにより、退職直後ということもあり、「TOMで成功しなければあとがない」という心境でしたので、とにかくがむしゃらに働きました(その危機感は今でも持っているつもりです)。

振り返ってみると、怒涛のような1年半でしたが、そのぶん得るものも大きかったので、今回は私が経験したスタートアップの実体験をできるだけ詳しくお伝えしたいと思います。

一読すると、すごく当たり前のことばかりが書かれているという印象を持つかもしれませんが、私がこれから書く内容こそが、成長するスタートアップで働くということのリアルな現状や実態ですので、そのありのままの様子が皆さんにストレートに伝わったらうれしいです。

Read More


東京Node学園 14時限目で「Synth」について話してきました

昨夜、渋谷ヒカリエで行われた東京Node学園 14時限目で、トップバッターとして発表してきました。

発表の様子

発表内容は、「Synth」というWebアプリケーションフレームワークについてです。

Tokyo Otaku Modeでは、バックエンドとしてNode.jsとMongoDBを使っていてExpressで運用していますが、色んなフレームワークも触っていてSynthもそのうちの一つです。

SynthはInfoQの「APIファーストのWebフレームワークSynthを巡るコミュニティの困惑」という日本語版記事が出て初めて知った人が多いと思います。
記事にもあるとおり、JSONやテンプレートHTMLを返すAPIとそれを使ってクライアント側でアプリケーションを構築するという形に特化したAPIファーストのWebアプリケーションフレームワークです。

ちょうど上記の記事が出た頃、天下一クライアントサイドJS MV*フレームワーク武道会の募集などがあり、API構築が簡単そうなバックエンドとしてSynthを触ってみたのがはじめでした。

そのあと触ってみた記事を個人のブログに書いていたりしたところ、東京Node学園主催の@yosuke_furukawaから声をかけて頂いて発表することになりました。

Synth自体はまだベータの段階で、どんどんコントリビュート出来るので、気になることがあったらプルリクエストを出しましょう
僕もプルリクエストを出して、すぐに取り込まれました。

Read More


今日から始めるNode.jsコードリーディング - libuv / V8 JavaScriptエンジン / Node.jsによるスクリプトの実行

ソフトウェアを正しく理解する唯一の方法はコードを読むことです。
ドキュメントを読めばそのソフトウェアが何を実装しているか分かりますが、どのように実装されているかまでは分かりません。
開発中に何らかのトラブルに悩まされたときや、効率的なコーディングをしたいと思ったとき、下位レイヤのソフトウェアを理解しておけば素早く対処できるシーンが多くあります。

ただ、コードを読むことは簡単なタスクではありません。
現代的なソフトウェアはそれなりの規模のコードを含んでいることがほとんどです。アーキテクチャ間の差異を吸収するためのコードなど、本質的な機能を理解する上ではあまり重要ではないコードも含まれています。
何らかの問題が発生してからコードを読もうと思っても、準備なしでは関連する箇所を探すだけでかなりの労力が必要な作業となります。
従って、普段からコードを読んでおくことが重要です。

また、コードを読むにあたり、解説があれば迷うことなく重要な箇所へ読み進めることができます。
詳解 LinuxカーネルBSDカーネルの設計と実装などの解説本を片手にカーネルのコードを読んだことのある方も多いのではないかと思います。

今回のエントリーでは、Tokyo Otaku Modeのアプリケーションサーバに使用しているNode.jsのコードを読み、Node.jsの主要コンポーネントであるlibuvV8 JavaScriptエンジンと、ユーザーが記述したスクリプトをnodeバイナリが実行するまでをご説明したいと思います。

スクリプト言語の場合、自分で書いたスクリプトを動かしながらコードを読むケースも多いと思いますが、Node.jsの起動シークエンスはV8の初期化後JavaScriptから使用するオブジェクトの初期化をC++で直接行い、最終的にsrc/node.jsブートストラップスクリプトからユーザーのスクリプトが起動されるダイナミックなコードになっています。大変読み応えのあるコードであると同時に、Node.jsの他の部分を理解する上で必要となる前提知識を効率的に吸収できる部分です。

今までNode.jsのコードを読んだことがないという方にお勧めの内容です。
一緒にコードリーディングをはじめましょう。

Read More


【号外】永久保存版! 10年選手の腐女子直伝!! コミケ超初心者講座(夏編)

コミケは戦場。

Photo by Tokyo Otaku Mode

Photo by Tokyo Otaku Mode

Tokyo Otaku Mode(以下、TOM)クリエイターサポートチームの大石です。
ふだんはTOMに参加されている全世界のクリエイターの皆さんのサポートを担当しています。

今回は号外いうことで、世界最大のコミックマーケット(通称:コミケ、コミケット)について、「【号外】永久保存版! 10年選手の腐女子直伝!! コミケ超初心者講座(夏編)」というお題で、恐れ多くも記事を書かせていただくことになりました。

記事の内容は、主に
「コミケってなんですか? すごいんですか?」
「コミケって聞いたことはあるけど、近寄りがたい……」
「行ってみたいけど、僕は友達が少ない(小並感)」
という、コミケ初参加の方を対象としたものにさせていただきます!

いろいろ偉そうに書いておりますが、著者は言うほどアルファコミケッタラーではないのでお手柔らかにお願いいたします(ちなみに晴海時代、著者はまだ幼稚園〜小学生でした)。
もし「いやいや、これもあるよ! あれも抜けてるよ! それは入れるべきだろ、常識的に考えて… 死人が出るよ!」
という必須Tipsがございましたら、ぜひご教授いただけますと誠に幸甚にございます。

Read More


チームブログをGitHubとHexoではじめよう!

Tokyo Otaku ModeでEngineerやってますpchwです。

通常、チームで技術ブログを書こうとすると、

  • 他の人からフィードバックをもらいにくい
  • フィードバックをもらっても、どの部分への指摘かわからない
  • 下書きをキャプチャした画像に赤入れされたのが送られてきた
  • そもそもリッチテキストで書くのがダルい

など不幸な出来事が起こりがちです。

僕らは日々の開発と同じようなフローに則ってチームでブログを執筆する環境を整えたので、その方法を共有します。

Read More


Tokyo Otaku Modeフォトグラファーが教える写真が確実に上手くなるための 8つのマインド

いい写真を撮るのは難しい!! なんて思い込みにすぎない!(断言)

Tokyo Otaku Modeのフォトグラファーのハラです。
ふだんはTOMが運営するECサイトの商品写真の撮影を担当しています。

1

僕は15年間、プロのフォトグラファーとして活動していますが、会う人に必ず同じことを言われます。
「写真、教えてください!!!」
「どうやったら上手な写真が撮れますか?…」
そして、続けて言われるのが…
「絞りとシャッタースピードがーーー」
「構図って難しいですよねー」
で、最後に言われるのが…( 頑張って頑張って説明したあと…)
「やっぱりプロは違いますね…」
または
「今度、教えてもらった通りに撮ってみます!」(数カ月後「写真教えてください!」ってまた言われる)
はい、もうやめましょう!! 断言します! 写真は難しくありません!!超カンタンです!! プロは特別でもなんでもありません!カメラだって高級なものでもありません。今回は、その“真実”を 8枚の写真を見ながら説明していきます。最後まで読めば、確実にいい写真が撮れるようになるでしょう!!

改めて言います!
写真は超カンタンなものなのです!!

※ 掲載されている写真はすべて Tokyo Otaku Modeのフォトグラファーのハラが撮影した写真です。

Read More


Yo API を利用してカンタンに Deploy を通知し Yo!

こんにちは。Tokyo Otaku Mode エンジニアの重岡です。

Tokyo Otaku Mode はスタートアップゆえに、日々サービスの機能追加や改善を繰り返していますが、遊びゴゴロのある開発にもいくつか取り組んでいます。今回は最近、話題になっている Yo というアプリの API の利用方法に関する話を取り上げたいと思います。

Read More


MongoDBでECサイトを実運用する3つのテクニック

こんにちは。Tokyo Otaku Mode CTOの関根です。

Tokyo Otaku Modeでは、2013年8月からotakumode.com上にカート機能を追加し、決済までをワンストップでできる海外向けECサイトをスタートしました。

どういうシステム構成でotakumode.comが運用されているかを聞かれた時、「Node.js + MongoDBです」と答えると、エンジニアの皆さんは一様にびっくりします。特に驚かれるのが、MongoDBをメインのDBに使用している点です。信頼性に定評があるわけでなく、またNoSQLに対するライトなイメージが一般的にあるため、ECサイトのプロダクションとして使うことに疑問を持たれている方が多いのでしょう。
しかし、十分実用に耐え、日々機能追加が入り成長し続けるスタートアップの環境で、実際に1年間運用してきたECサイトがここにあることも事実です。

そこで今回は、MongoDBを使ってECサイトを運用するための実用的な3つのテクニックを公開したいと思います。

Read More


Introducing Tokyo Otaku Mode’s growth hacking techniques - A/B testing examples -

Hi. This is Hajime, COO of Tokyo Otaku Mode Inc.

Welcome to our official blog. My colleagues and I will be sharing regularly on how we work here at Tokyo Otaku Mode. I hope you enjoy it!

Japanese people frequently describe Tokyo Otaku Mode (‘TOM’) as an enigmatic company when asked about it. Although we have over 15 million fans on Facebook, only less than 1% are from Japan. In order to help everyone understand what we do, we have started this blog to introduce the techniques and methods that our team uses to support and grow TOM.

Read More


Tokyo Otaku Modeのグロースハック術を公開 - A/Bテストの実例 -

こんにちは、Tokyo Otaku Mode COOの安宅です。
本日からオフィシャルブログを開始します。社内メンバーの持ち回りでブログを書いていきますので、どうぞよろしくお願いします!

Tokyo Otaku Mode(以下、TOM) のイメージを日本国内の人に聞くと、「謎の会社」と言われることがよくあります。僕らは全世界で1,500万人のファンを抱えているものの、そのうち国内のファンは1%以下。いまいち何をしている会社というのが分かりづらいようです。僕らの情報発信も足りていなかったのもあると思うので、これから社内で使っている技術や運営方法について、このブログでたくさん公開していこうと思います。

Read More