mixi engineer blog

*** 引っ越しました。最新の情報はこちら → https://medium.com/mixi-developers *** ミクシィ・グループで、実際に開発に携わっているエンジニア達が執筆している公式ブログです。様々なサービスの開発や運用を行っていく際に得た技術情報から採用情報まで、有益な情報を幅広く取り扱っています。

DeployGate無料プラン&配布ページ作成機能をリリースしました!

みなさんこんにちは!デプロイゲート開発チームのkyoroこと井上恭輔と申します。
私たちはAndroidアプリ開発者向けのプライベート配信サービスDeployGateを開発・運営しています。

先日3月4日(月)に、このDeployGateを無料でご利用頂ける無料プラン(FREE)と、新機能として最大3万人の方々にアプリをワンクリックで配信できる『配布ページ作成機能』をリリースさせて頂きました。今日はこの場を借りてDeployGateのご案内と、開発に込めた想いなどをご紹介させて頂ければと思います。

私が新卒時代に書いたエントリーオンラインコーヒーメーカー「萌香たん」とはじめるドキドキ☆コーヒーブレイクから、実に丸4年ぶりの記事になります。人生というのは本当に色々な事があるのだなと実感しています。技術面だけでなく、サービスの企画・運営面の想いなどもお話できればと思っておりますので、少々長いですが、どうぞ最後までお付き合い頂ければ幸いです。


全てのAndroid開発に使ってほしい『DeployGate』

DeployGateは2012年9月にミクシィの新規事業としてローンチしたAndroidアプリ開発者向けのプライベート配信サービスです。Android開発で大変な事は山ほどあるのですが、中でもリリース前の実機確認作業は非常に面倒ですよね。

DeployGateを使えば、ストア公開前のアプリを複数のAndroid端末に簡単に配布することができます。 配布したアプリのアップデート配信や、端末のlogcat取得クラッシュレポートの収集なんかも、すべてネットワーク経由でリモートで行うことができます。しかも全てがリアルタイムで動作するので、まるでクラウドで繋がれたUSBケーブルのように端末を取り扱うことができて便利です。

エンジニアが1人で、端末が1台という状況であれば真価を発揮しないのですが、複数人や複数端末での開発になった瞬間に、劇的に手間を削減してくれる心強い味方です。エンジニアだけでなく、デザイナーやディレクター、セールスといった非技術者のメンバーにも、常に最新版のアプリを配信できるのは結構幸せです。チーム全員が常に最新版に触れることができるので、ユーザビリティテストやQAにも役立ちます。詳しくは、DeployGateのページ(https://deploygate.com)や、下記の動画などをご覧頂ければ嬉しいです。モーションがウザいと評判で、切込隊長にも服と背景がかぶってて保護色っぽくてかっこいいとお褒め(?)の言葉をいただきました(笑)

「AndroidなんだからAPK配ればいいだけじゃんww」という意見もあると思うのですが、実際の現場で単純なバイナリ配布でこれを運用していくのは結構不便です。もちろん、インストールだけならAPKファイルをメールやDropboxで送ればいいだけの話なのですが、常に更新されていくアプリのアップデートを利用者に通知したり、使用中のバージョンを機種ごとに管理したり、配布先で突発的に発生したクラッシュレポートを回収したりすることは困難です。そういった、開発の面倒な部分をDeployGateが代わりに全部やってくれるので、エンジニアは開発だけに集中することができます。


実は海外でも結構使われています!

DeployGateはおかげさまで、ミクシィはもちろんの事、クックパッドカヤック百度Japan(Simeji), ChatWorkZaimTokyoOtakuMode、その他多くの企業様やスタートアップの開発現場でご利用頂いています。日本語と英語でサービスを提供させて頂いているのですが、現在、世界93カ国、3,600以上のアプリの開発に使われています。全体の76%以上が英語ユーザで、海外からの利用が予想以上に盛んです。

dg_countries.png

DeployGateはリリースから今まで、有料を前提としてサービスを提供してきました。利用するための金銭的な敷居は、決して低いとは言えなかったのですが、それでも国外での利用が思ったより盛んな事に関して、とても嬉しく思っています。背景としては、やはりAndroidの影響力が国外の方が強いことや、そもそも開発現場において良いツールやサービスをどんどん導入して「時間や手間を金で買って」工数を削減するという合理的でクレバーな開発手法が国外では自然に行われているという事を示しているのかもしれません。

日本企業の場合は、各社で独自のツールやオレ俺フレームワークを作って、0から100まで内製!みたいなのを誇りにしてる事が今まで多かったように感じますが、国内でもGithubやAWSの導入企業がどんどん増えてきている事を思うと、これからはそちらに向かっていくのは間違い無いような気がしますね。


『無料プラン』の提供と、DeployGate開発に込めた思い

DeployGateの無料プランを開始させて頂く理由としては、上述のように、事業面でこれからも持続的に運営していくことができる見通しがたったことと、現在の企業利用にとどまらず、ぜひ個人開発者の方々の趣味アプリ開発でも、もっと気軽にDeployGateを使って頂きたいという願いからです。

実は、無料プランの提供はリリース前からずっと「やりたい!」と考えていたことでした。最初から無料プランを提供しなかった理由は「DeployGateの事業性をきちんと評価し、持続的に発展可能なサービスかどうか検証したい」という目的のためです。つまり「はたしてDeployGateの価値に、お金を払ってくれる人は存在するのだろうか?」「開発者向けサービスのフリーミアムモデルは日本で成し得るのだろうか?」ということを、率直に世に問うてみたかったのです。

GithubHeroku, mixpaneloptimizelyなど、開発者向けのミドルエンドやプラットフォーム領域のスタートアップは、本場シリコンバレーを中心に急速に立ち上がり、市場規模は年々拡大しています。そして、私たちエンジニアはその恩恵を受け、どんどんストレスの無い、素敵で爆速な開発&運用環境を手に入れることができました。生産性は日々、飛躍的に向上しています。これはとても素晴らしいことだと思います。

一方で、この領域で成果を上げている日本発のサービスはほとんど見当たりません。日本のスタートアップの多くはB2C、またはC2Cに類するものが多く、アイデアと勢い勝負!といったケースがとても多いように思います。もちろん、それはそれで素敵な事なのですが、エンジニアの私としては、ミドルエンド領域で技術をベースに世界に向けてサービスを発信して挑戦したい!という気持ちが強くありました。


支えてくださったのは、初期からお使い頂いたユーザの皆様

どうせ挑戦するなら「まぁ無料だから」と甘えが許される環境ではなく、しっかりお金を頂いた上で緊張感を持って日々完成度を高めるといったプロセスで開発を進めたいと考え、DeployGateを有料前提のサービスとしてリリースしました。そして、今まで利用者の皆様に支えられながらサービスを洗練してきました。初期利用のユーザの皆様にはご迷惑をお掛けした事も多いのですが、本当にここでは言い表せない程の感謝をしております。

おかげさまでDeployGateは「一度さわれば絶対に良さがわかる!」と自信を持って言えるサービスになったのではないかと思っています。きっと無料ユーザの方の中からも「気に入ったから有料契約して応援してやるよ!」という方が出てきて頂けるのではないかと楽しみにしてます。実際に、無料公開後も何件か有料プランのご契約をいただきました。

今までご支援頂いた皆様のおかげで、念願の無料プランの提供ができることを、とても嬉しく思います。本当にどうもありがとうございました!初期利用の有料ユーザの皆様へは、ささやかな感謝の気持ちとして、1つ上位のプランと同等の配布ページ上限数となる特別ボーナスをお贈りさせて頂きました。また、有料プランの各種上限も大幅に増強させて頂いています。今後もよろしければ、ぜひDeployGateをご支援頂ければ嬉しく思います。どうぞよろしくお願い致します!


ミッションは『世界中のアプリ開発者の不幸を受け止める!』

DeployGateは、もともと弊社でmixiの開発のために作られていた社内アプリ配信システムをベースに作られています。いわばニーズ先行で企業での実戦投入を前提としたシステムで、ミクシィ開発部からのスピンオフ・プロジェクトです。mixiの実際の開発でぶち当たってきた問題を解決するノウハウや機能が、これでもかというくらいDeployGateに込められています。

私は、今までmixiの開発現場を効率化するために行なってきた取り組みやノウハウ、投資してきた技術力といった部分は、ミクシィの隠れた資産だと思っています。私たちが困っていることは、きっと世界中の皆さんが同じように困っていることだと思います。二度とこんな不幸を他の開発者の方々が経験しなくてもいいように、DeployGateが「世界中のアプリ開発者の不幸」を受け止めることで、みんなが幸せにアプリを開発することができる世界を作りたいと考えています。

単にツールを作ってオープンソースで公開するのではなく、実際にサービスとして皆様に提供させて頂いている理由もそこにあります。私たちは、弊社のバックエンド開発部隊「たんぽぽ開発チーム」が社内に対して担っているような仕事を、世界中の全ての開発者に向けて提供したいと考えています。実際に、開発を行なっているのは、私を含めて「たんぽぽ開発チーム」出身のエンジニアです。

私は一昨年の2011年3月から1年間、シリコンバレーに拠点を置くスタートアップ「fluxflex」にミクシィから出向して、アメリカで生々しいスタートアップの世界を体験し、自分の多くの失敗から学びを得ました。その中で、単なるツールを作って提供するだけでなく、そのツールが「誰かにとってのスペシャリストであり、チームメンバーの一員として仕事を任せられるくらいに機能するソリューション」になって初めて、本質的な問題を解決できるのだということを感じました。

例えるなら、Githubを使ってると、なんだか「俺に開発管理の事は任せとけ!」って言われてるような気がしませんか?(笑)開発のことなら、自分よりいろいろわかってて全力で頼れるような、ああいう安心感です。全身の信頼を持って使って頂けるような「Android実機配布のスペシャリスト」として機能するDeployGateを作れるよう、これからも日々精進して行く所存です。


小さなチームですが、頑張ります!

DeployGateは、たった2名で開発・運営している小さなプロジェクトです。2名しかいませんので、企画からコーディング、デザイン、マーケティングやユーザサポート、時にはフォーマルな格好をして営業まで、なんでも自分たちでやっています。上記のプロモビデオも自分たちで作ったり、効果音やBGMも友人に作ってもらっています。責任は非常に大きいのですが、そのぶん自由に、かなりmixiの開発とは違うスタイルで仕事をしています。

開発にはPerlは一切使っておらず、サーバサイドはRails3.2とNode.js、クライアントはJava(Android)、Push通知にはWebSocket+Socket.ioとGCMを使っています。(ちなみにDeployGateのサーバOSはUbuntu12.04です(笑))ソースコードとチケット管理はGithubで、SkypeとEvernoteを使って仕事をしています。出社義務もなくて、ネットにつながれば何処でいつ仕事をしてもいいというルールで運用しています。この働き方も、弊社では自由度の面でかなり実験的な取り組みです。ぜひ良い成果を出して「こういうワークスタイルもアリなんだよ!」という良い例になれればいいなと思っています。

dg_office.jpg

IMG_5223-1.jpg

DeployGateの会議室プロジェクトルーム&
開発メンバーと手伝ってくれているインターンの学生さん
画像は(左)TechWaveさん「ミクシィが世界に通用するAndroid開発支援サービス「DeployGate」をリリース 【増田 @maskin】
(右)SD!さん「Japan's DeployGate aspires to be a standard tool for Android development」より


まとめ

ということで、Androidでアプリを開発される場合は、ぜひ一度DeployGateをお試しください!質問やバグ報告の他、こんな機能が欲しい!という意見なんかも、ぜひお気軽にお寄せ頂ければ幸いです。そして、どこかでDeployGateを見かけることがあれば、ぜひ応援して頂けるととても嬉しいです。頑張ります!
次はDeployGateの具体的な使い方や機能についてもご紹介していこうと思います。

それでは、長文でしたがお付き合い頂き誠にありがとうございました。