- ライブ配信基盤開発エンジニア
- 26卒ビジネス職
- ライバーサポート
- Other occupations (24)
- Development
- Business
- Other
ライブ配信を支えるミラティブの開発チームはたった4人。少数精鋭のチームを率いるCTOは、DeNA新卒入社時からミラティブ一筋でやってきた夏(なつ)澄彦。
■プロフィール
夏 澄彦(Sumihiko Natsu) @nil
Mirrativ CTO。1991年生まれ、大学3年からプログラミングに取り組む。大学時代にはWantedly最初期からのインターン経験を経て、2015年DeNAに入社。50人超の同期入社内で新卒MVPを受賞。Mirrativの初期メンバーとして、サーバ・iOS・Android・Webなどの開発全般に携わり、2017年よりリードエンジニア、新会社設立と同時にCTO。ミラティブ代表赤川のエモさに感化され、現在に至る。
ミラティブ創業メンバー:左から小川まさみ(CCO)、赤川隼一(CEO)、夏澄彦(CTO)
エンドユーザーの手触りが知りたくて新規事業を志望
-ミラティブに入るまでを教えてください。
大学は理系で、学部時代はモバイルセンサネットワーク、大学院ではプログラムの並列化周りを研究していました。就職したくなくて大学院に進んだのですが、学部時代に偶然はじめたスタートアップのインターンで経験した、ダイレクトにユーザーの反応が見られることに面白みを感じ、最終的にはエンジニアとして働くことを決めました。
就活では何社か受けたのですが、最終的にDeNAに入社を決めました。選考過程でお会いした人が皆「コトに向かう」姿勢で、妥協せず良いサービスを作ろうしていたことが印象的でした。
-入社後は何を。
大学時代のインターンの経験から、少人数でエンドユーザーに向かい合える新規事業への配属を希望していました。新卒研修のあとすぐに、ミラティブチームに配属になりました。当時はプロジェクトが立ち上がったのが3月、僕が入ったのが4月だったので、初期メンバーですね。メンターだった川上さん(DeNA・CTO室長・当時)がミラティブチームのCTO的存在だったので、そこについていった形です。当時、フルタイムのエンジニアとしては3人目でした。
最初は学生時代にも経験のあったサーバサイドを担当していました。最初から、「サーバサイドは夏くんよろしくね」という感じでAPI含む設計から実装まですべて任せてもらえていたので、わりと自由で、かつ、責任感持ってやらせてもらえ、コードを書いていて毎日が新鮮で楽しかったです。
-1年目の終わりには、MVPを受賞されたそうですね。
驚きましたが、一緒に働いていた方が、自分のことを評価し推薦してくださったことはとても嬉しかったですね。
実際に表彰されたときは緊張して受賞理由が頭に入って来なかったですが、設計の安定性や実装のスピード感、企画との進め方が評価されたようでした。特にサーバサイドがメイン担当の時からクライアントサイドの実装も意識しながらAPI設計をしていたので、実装中の設計の手戻りはかなり少なかった自負があります。
上司がいなくなり突然CTOに
-ミラティブの技術的な構成を教えてください
構成としては、iOS(Swift4)、Android(Java + Kotlin)、Webフロントエンド(React x Redux)、サーバサイド(Perl)となっています。基本的にサービスを高速に開発し、安定運用できることを観点に技術選定や実装を行っています。そのため安易に新技術に飛びつくのではなく、立ち上げ時にDeNAで十分実績とノウハウの溜まっているPerlを用いた開発を行っていましたし、内製の高性能なPub/Subサーバを用いて構築をしていたりします。(とはいえ、特定の機能は安定運用期に入っており、今後エンジニアがスケールすることも考え、サーバサイドをGolangへ移行しようという話も出ており、一部の独立性の高いコンポーネントから順次移行を進めているところです)
また、サーバサイドでは可能な限り全部の検証項目を自動テスト化しており、高速なリリースを行うためにJenkinsのMaster/Slaveを用いてテストの並列分散実行できる環境を整えています。
サーバの負荷に対しては、サービスの成長に連れ、同時配信数や同時視聴数、フォロー数も順調に増加しているため、実装初期には気づけなかった各種システムの劣化も前兆を気づけるように、MySQLのquery digestを取得してSQLのチューニングを行ったり、Webの応答速度や非同期処理の遅延時間などもBigQueryにログを入れてトレンドを確認できるようにしています。
そして何よりMirrativのシステムでは、フロントからサーバサイドにまたがるストリーミング技術が大きな屋台骨となっています。
配信を除くサーバ台数で150台超あり、また配信サーバもオートスケールやフェイルオーバーする仕組みで構築された結果、相当のデータ量に耐えながらも、安定した配信のできるシステムを構築しています。(参考: https://www.slideshare.net/dena_tech/dena-87959886 )
-チーム内での転機は。
チームとしては、昨年の夏頃に自分のメンターでCTOだった川上さんが、どうしてもDeNA内の大型新規プロジェクトを見ねばならずチームから離れたことが大きかったです。そこからは自分がCTOの役割になり、それまでのサーバサイドに加えてAndroidやiOSもみるようになりました。
-プレッシャーはなかったのですか。
当然ありました(笑)。エンジニアにとって、上司は技術的にすごい人の方がモチベーションがあがるものだと思いますが、自分は技術的に超尖っていることもなく、経験も短い。そこを補えるかは、不安でしたね。ただ、不安と言っていても仕方ないので、常に事業のこと、会社のことを最優先に考えながら、そのとき必要な知識を必死に学んでました。
-技術的には、補うための技術習得も大変ではありませんでしたか?
正直、やっていたAndroidもiOSも元々経験があったわけではありませんでしたので、大変ではありました。ですが、ユーザーのために妥協はしたくないと思いながらインプットもアウトプットもやってきた結果、サービスをグロースするためのスピードと品質をなんとかキープして来れたのではと思っています。
-チームの構成は?
今のメンバーはフルタイムで言うと、
iOSメイン1人、Androidメイン1人、サーバサイドメイン1人、そこでより注力すべきところに、時短の方も巻き込みながら開発を進めていくスタイルです。
僕は広く浅くはわかるけど、各専門分野の深いことはわからない。なので、チームメンバーには各自のやりたいところをやってもらい、主に自分はサポートしています。それから、判断の背景はきちんと説明をするようにしていますね。幸い、チームのメンバーは皆プロフェッショナルですし、コミュニケーションもフラットなので、いまのところストレスなくまわっています。例えばiOS担当の開発者はストリーミング周りの技術に造詣が深く、この界隈では有名な配信用のOSSのライブラリを開発しており、実際にMirrativのiOS配信の屋台骨を支えています。(参考:https://github.com/shogo4405/HaishinKit.swift )
ユーザーの反応が超ダイレクトにわかる「生配信」
-夏さんが一番楽しいと思う瞬間は?
機能をリリースできて、ユーザーのダイレクトな反応が見えるときですね。Mirrativはライブ配信サービスなので、作った機能がどう使われているのか、どのボタンを押してどう反応し、どんなときにバグがでるのか、直接見えるんです。ここまで生々しくサービスへの反応やユーザーの顔が直接見えるサービスは他にないと思います。
それから、App Storeで書かれたレビューをSlackに自動で飛ばしているのですが、それを読むのも好きですね。
-いままでで一番インパクトがあったのは?
「コラボ配信」の機能をリリースしたときです。僕は主にサーバ側を担当していたのですが、クライアント側はデモ用の通話まではWebRTCでさっくりいけるものの、リリースできる品質に持っていくためにはハウリングやエコー、ノイズなどの調整に相当な時間をかけていました。また、ベータ機能としてリリースした後もコラボの接続率が予想以上に悪かったので、ロードバランサーの設定を見直したり、どう頑張ってもP2Pで通信できないユーザ同士のために中継用のTURNサーバを追加で立てたりした結果、接続率が劇的に改善しました。
それまで配信者と視聴者はコメント欄でしかコミュニケーションできなかったのですが、コラボ配信により、声で直接繋がれるようになりました。テキストじゃ限界があることが、音声で実現できるようになり、ミラティブが目指す世界に一歩近づいたなと思いました。実際、コラボ配信機能のリリース後に、チームの指標にしている継続率の成長角度も変わったんです。
開発の上でも、Mirrativはコミュニケーションサービスなので、コミュニケーションの中でどれだけいいUXを提供できるかという点に一番集中しています。そこで結果が生まれると嬉しいです。
-MBOしてもミラティブにコミットしようと思った理由は?
僕はMirrativは今一番ポテンシャルがあるサービスだと思っています。
2015年に初めてミラティブチームに配属されたときから赤川(※CEOの赤川隼一)が言っていた「友達の家でドラクエやってる感じ」というコミュニケーションが、Mirrativが成長する中で徐々に実現してきて、いますごく面白くなっています。既存のスマホゲーム×ライブ配信で既に一定の面白さがみえていますが、今後「ライブ配信で楽しめること」に特化したコンテンツがたくさんでてくると、次の次元の面白さやコミュニケーションが生まれてくると思うんですよね。例えば最近もりあがっているライブクイズもその一つで。「○○×Mirrativ」で面白いものが次々生まれてくると思います。
-これからチャレンジしたいことは。
まず技術的には、遅延をとにかく極限まで短くしたいですね。現状でもライブストリーミングサービス内ではかなり優位なポジションに立っているのですが、コミュニケーションがメインのサービスなので、超低遅延化することで配信者・視聴者間の距離がぐっと縮まり、 サービスの基礎体験を格段に向上をできるかと思います。
最後に今後の意気込みを一言
事業としては、Mirrativを本当に世界規模で最高のサービスにしたいと思っています。そのポテンシャルは先程述べたようにひしひしと感じています。最高と言っても、必ず誰かから見た時の不満は付き物ですが、それでも自分の中で最高のサービスを作った!!と思いたいし、ユーザーをもっともっと楽しませたいし、驚かせたい。
そのためには、もっともっと自分の技術力も要ると思うし、もっともっと、仲間も必要です。
赤川さんの言う『エモ』ではありませんが笑、そうやって、最高に信頼し合うチームをつくって、この難易度の高いストリーミングという技術をハックして、最高のサービスをつくりたいと思っています。
ミラティブでは、一緒に会社を作っていく仲間を探しています。
少数精鋭で開発をすすめているミラティブチームですが、現在エンジニアを中心に大募集しています。フルタイムはもちろん、副業でのお手伝いも大歓迎です。興味をお持ちになられた方はぜひご連絡ください!
日本最大のスマホゲーム配信数を支える!インフラのスペシャリストWANTED
- ミラティブは現在150台ものサーバーをゴリゴリ動かしながら運営しています。ミラティブを円滑に機能させる基盤を作ってくれるスペシャリストを求めています!
切実!VTuber界隈に詳しいエンジニアの方ご協力ください。
- 現在圧倒的成長をしているVTuber市場、ストリーミング知識は問わないのですが、2D/3Dアニメーションに携わった事がある人・アバターシステムを構築した事がある人を探しています!
ライブストリーミングを突き詰めたい!クライアントサイドエンジニア求む
- スーパーなエンジニアさん募集中です。今激熱なライブストリーミングやりたいという方は是非遊びに来て下さい〜!
創業メンバー!Mirrativで攻めのサーバーサイドエンジニアWanted
- ミラティブを支えるサーバーサイドのエンジニアさんを探しています!グロースハッカー型のエンジニアさんぜひお越しください〜!
- デザイナーさんも募集しています:)オフィスデザインやタイアップのバナー作成、UIUXデザインなど、お願いしたいこといっぱいあります!