今回は、いまGunosyで注力しているライブ動画の開発チームにインタビューしました。Gunosy初となるライブ動画開発を軌道に乗せるまでの舞台裏から、一人ひとりの力を伸ばすGunosyエンジニア組織の強みまで、プロジェクトをけん引する3名からお話を伺いました。
■プロフィール
三津澤さん(写真左)
入社前は株式会社エウレカでサーバーサイドやWebのフロントエンド、マネタイズ担当チームのプロダクトオーナー等を経験。その後旅行系サービスアプリの会社を起業等を経て2017年11月にGunosyへ入社。現在は主にサーバーサイド担当。
山本さん(写真中央)
入社前はtoC向けアプリ開発のクライアントサイドを経験。当時書いていたのはRuby on Rails、Android Java。2017年4月にGunosyへ新卒入社し、現在ではAndroidアプリ、サーバーサイドを担当。現在書いているのはKotlin、Go。
吉澤さん(写真右)
ヤフー株式会社にてショッピングカートのフロントエンド、サーバーサイドの開発に携わった後、Go言語を用いた開発や社内用クラウドストレージの設計を担当。2015年9月にGunosyへ入社。現在はグノシーのサーバーサイドを担当。
Gunosyは技術をコア・コンピタンスにしている企業
‐ Gunosyへの入社理由を教えてください
吉澤:ちょうど30歳を迎える頃で、前職でも色々と経験を積むことができたので、新しい環境で、また別のことにチャレンジしたいと考えていました。実はゲーム関連に興味があったので、そういった企業を受けていましたが、最終的に一番「面接での雰囲気が良い」と感じたGunosyに決めました。事業軸というより、人柄やカルチャーマッチという観点で選択しましたが、3年弱働いた今、その決断は間違ってなかったと感じています。
山本:僕は、色々と面接を受ける中で自分が一番成長できそうだと感じたのがGunosyでした。CTOの松本さんが「ニュースパス」のiOSとアンドロイドの両方を作ったと聞いて、すごい人だなと思いましたね。三津澤さんはどうですか?
三津澤:起業は起業で楽しいものの、0から1を作り上げる段階では大量のデータからユーザ行動を読み解くということは原理的にできません。なのでそれを徹底的にやっているC向けサービスの会社に関わりたいと考え、元々創業者メンバーを大学時代から知っていたこともあり「話を聞かせてほしい」と連絡を取りました。話しをしていく中でGunosyが技術をコア・コンピタンス*1にしている企業だと感じ、率直に働いてみたいと思いました。技術の強みをベースにしている会社は少なく、エンジニアとしてそういった場所でバリューを発揮したいなと。あとは、面接を通して意思決定の透明さを感じたことも大きかったです。データの見方に何らかの政治的な要素が介入することなく、「純粋にデータそのものを見て経営陣が意思決定している」という点も、素直にいいなと思いました。
手探りで進めた「前例のない開発」
‐ いま3名が注力されている動画コンテンツについて教えてください
山本:「グノシー」はテキストコンテンツがほとんどですが、今後はもっと動画コンテンツを増やしていきたいよね、ということで取組み始めました。その中で「ライブ動画」の企画があがったのは昨年の11月です。年明けのリリースを目指していたので、それぞれ急ピッチで準備を進めました。
- それぞれの役割は?
吉澤:僕はライブ配信アプリのアーキテクチャを研究したり、使用するAPIの仕様をまとめたりしていましたね。
三津澤:動画配信サーバーはとにかく種類が豊富なので、どのような種類があるのか、またその中で何が使いやすいのかを調査して、実際に試したりしていました。
山本:基本的に配信側は吉澤さんと三津澤さん、コメントやPV数の表示を行う用のWebsocketサーバーやクライアントサイド(以下クライアント)は僕が担当して各々情報を集め、何がベストなのか試しました。12月初旬頃には、ある程度システムの大枠を固めてクライアント開発を始めましたね。通常だとAPIが出来上がってから、クライアント開発に入るというのがきれいな開発の流れではありますが、今回はスケジュールが立て込んでいたので、サーバーサイド(以下サーバー)のAPIとクライアントを同時並行で開発し、最後にドッキングさせるかたちになりました。それからAppleに申請できたのが、営業最終日の12月29日でした。本当にギリギリでしたね…。
吉澤:ユーザーがアプリ上で発したコメントをサーバーに送って、それを他の端末に反映させるというシステムはこれまで設計したことがなく、そのサーバーを手探りで設計するといのは難しい作業でしたね。配信サーバーも大変そうでしたよね。
三津澤:配信サーバーはWowza*2を使用することにしましたが、詳細な設定項目がいくつもあって、調査にも時間がかかりましたね。
山本:その辺りは、ライブでの「遅延問題」に関係していますよね。撮影している動画をユーザーが見るまでに何秒かかるのか?という遅延は動画コンテンツにおいては重要な問題です。たとえば、ユーザーがアプリ上で発したコメントを見て演者がそれについて話すというシーンがよくあると思いますが、そこに何秒かの遅延が発生していれば、ユーザーと演者のインタラクティブなコミニュケーションは生まれない。その遅延をいかに短くするかの調整で、コンフィグの試行錯誤が結構あったんですよね。
三津澤:その遅延を縮めるためにWowzaのコンフィグを触ることと、クライアントの設定の両方が必要だったので、そこはサーバーとクライアントで協力して行いましたよね。
- 「グノシーQ」はどのように開発されたのでしょうか
山本:大前提として動画で「問題開始!」と演者がいうのと同時に問題を出さないといけません。仕組みとしてはサーバー側のクイズの予約画面ボタンを押したらクイズが始まるんですけど、それだとシステム上10秒くらいの「ずれ」が発生してしまいます。ユーザー側に、実際に問題が表示されるべきタイミングより10秒早く出てしまうイメージですね。
それで、動画自体にクイズをのせないといけないということがわかって、いまは動画にクイズ情報がのった状態でクライアントに伝達させ、クライアントがそれをみてポップアップを表示しています。動画配信して終わり、というのは結構ありますが、そのようにそこに「アドオンで情報をのせて伝達させる」ということは前例がなく、WEB上にもオープンな情報がほとんどなかったので、かなり試行錯誤しましたね。
吉澤:初回は色々と大変でしたよね。
三津澤:動画が巻き戻ったり、止まったり、ループしたり…ユーザーからのコメントも荒れてましたね(笑)
山本:僕は撮影現場にいましたが、現場の空気といったらもう…辛かったです(笑)ただ、その初回終了後はどのパターンだったら上手くいくのかということをひたすら試して、次の放送では全てが修正できたので、ほっとしました。
吉澤:そうやってすぐに改善できるのは、チームで普段からPDCAをとにかく回していたり、常に「何がベストなのか?」とアンテナを張って情報をキャッチアップしているからだと思います。今ではだんだんとクイズへの参加ユーザーが増えてきて嬉しいですよね。つい最近も15,000人を超えてきたので、モチベーション向上に繋がっています。
グノシーQとは?
「グノシー」アプリ内で毎日21:30〜開催しているユーザー参加型のクイズライブ動画番組。1回の「グノシーQ」において、クイズが約10問出題され、出題されるクイズに全問正解した人達で、その日の賞金を山分けすることができる。
一人ひとりを圧倒的に成長させる「技術選定に対する自由度の高さ」
- Gunosyエンジニア組織について教えてください
吉澤:とてもフラットな組織だなと思いますね。もちろん役職はあるけれど、みんな対等で、入社時期や年齢に関係なくお互い尊重し合っていると感じます。
三津澤:あとは使用する技術選定に関しての自由度がかなり高いですよね。言語やコンポーネント、データベース等、何か新しいものを使用することに、組織として積極的なマインドを持っています。仮にそれで何か失敗したとしても、すぐに組み替えて次に活かそうという考え方だから、チャレンジしやすい環境ですよね。
吉澤:それは本当にエンジニアとして嬉しいですよね。失敗したことがあれば、それはそれで全員で共有して、同じことを繰り返さないようにしようとする文化ですしね。
三津澤:これはこういうミスをしたから注意する、あるいは使用しない、等の知見がどんどん組織に蓄積されていくのは良いことだと思います。できることしかやっていかないと、蛸壺状態になってしまいますから。
- 人や組織としての強みはどういったところでしょうか
吉澤:まず人でいうと、全員責任感が強い。それぞれ自分が担当のプロダクトやシステムをちゃんとみている。あとは、経験したことのない領域でも、必要があれば取り組んでいく。新しい技術に対して苦手意識をもたずに、逆にどんどん吸収していけるという強みがある人が多い気がします。
三津澤:サーバーの人がみんなインフラに触れることもかなり強いですよね。
吉澤:そうですね。インフラもそうですけれど、どこのチームも人数が足りている訳ではないので、チームに負担がかからないように自分でできるところは自分でやってみる。そうやって個人の担当領域がどんどん広がっていって…という組織ですよね。
山本:確かにそうですね。言語に関しても、サーバーとクライアントの両方の言語を書くことができる人が本当に多いです。クライアントの言語(Swift,Kotlin,etc)も複数書くことができる人が多いですよね。
三津澤:当然Gunosyにもインフラチームはありますが、まるっと投げることはあまりないですね。サーバーのエンジニアが、システム構成を考えて、設計するところまで全部やって情報共有だけするということもあります。そのように自由度が高いからこそ、先程吉澤さんが言っていたように一人ひとり責任感が強いのかもしれません。
- マルチスキルのある人が入社するのか、Gunosyに入社するとそれが身についていくのかでいうと、どちらでしょうか
山本:入社してくる方は元々高いスキルを持った方も多いですが、どちらかというと後者だと思います。僕も入社前はインフラについて全然理解できておらず、言語でいうとGoも書くことができなかったのですが、今はAWS*3等もさわれるようになりましたし、Goも習得しました。Gunosyでは日常的にそれぞれの知識を共有できて、どんどん新しいことに自らトライできたりするので、「知見を広げて技術力を向上させたい」という意欲的な人にとって、魅力的な環境だと思います。
- 先程お話にあがった「自由度の高さ」が技術力向上に寄与しているのでしょうか?
三津澤:そう思います。そこはかなり組織として強みだと感じますね。
吉澤:なぜそういった強みがあるのかというと、失敗したときに責めるのではなく改善していこうというマインドを全員がもっていて、恐れずにトライすることが出来るからだと思います。
三津澤:みんなが前向きで、話合いも建設的。組織として健全ですよね。
- Gunosyが求めるエンジニア像ってありますか?
吉澤:一言でいうと、「何でも取り組む心意気がある人」です。自分の領域以外のことでも、プロジェクト成功させるためにトライできたりとか。
三津澤:仮に問題が起きていたら、進んで拾って解決しようとする人ですかね。ただコードをかくのではなく、広い視野をもって色々とキャッチアップできる人がGunosyには多いし、そういう人と働きたい。舜さん(山本)なんてまさにそれを体現しているような人ですよね。
山本:ありがとうございます、何だか照れますね。僕は何でも気になるんです。どんなことでも自分でできた方が面白いし、できないことに対してトライした方がエンジニアとして幅が広がると思って、何でも積極的に取り組むようにしていますね。
吉澤:本当に色々トライする人多いですよね。しかもみんながその挑戦をみているし、あれっ、困ってるな?!という人を見つけたらみんなが手伝っているし。
- ライブ動画開発チームの今後の展望を教えてください
吉澤:ライブ動画開発チームとしては、やはりクイズに参加するユーザー数が爆増してくれたら嬉しいですよね!10万人以上になって、もう耐えられないみたいな(笑)
山本:まだお伝えできませんが、取り組んでいきたいことの構想はたくさんあるので、もっと仲間が増えてくれたら嬉しいなと思います。あとは先程もお話しましたが、いま「グノシー」はテキストコンテンツが多いので、それが今よりさらに僕たちが取り組んでいる動画コンテンツにシフトしていってくれたらいいですよね。
三津澤:舜さんが言うように、やってみたいことはたくさんあります。新しい企画では「グノシー」を使って、みんなで何か楽しめるようなコンテンツなんかも作ることができたらいいですよね。
- それぞれ個人的に今後トライしていきたいことを教えてください
吉澤:最近個人的に勉強したりしていますが、アプリやデザイン系をやりたいなと思っています。あとは最近GoogleI/Oに参加してきたんですけれど、その中でGoogleが「今後ユーザーは、アプリ、WEB、アシスタント(Googleフォーム等)の何を使っているのか、ということを意識しない世界が訪れる」と思わせるような発表をしていて、とても興味をもちました。なのでWebも今よりさらに学びたいですね。
※吉澤さんのGoogleI/O参加レポートはこちらから
山本:いいですね。僕もWebもやりたいなとも思いますが、やっぱりiOSですね。今はAndroidだけなので。クライアントが好きだから、iOS、Androidの両方の言語を書けるようになりたい。僕は人がさわる部分をつくるのが一番面白くて好きなんです。一番目に見えるし、一番ユーザーに近いところできれいなものをつくれたら嬉しくなります。きれいなコードや、アーキテクチャを設計することも好きなので、iOSとAndroidの境目なく、できるようになりたいですね。
三津澤:僕はどういうものをどういう形でだしたら、どうUXが変わるかという部分を、明確に意思決定できるようになりたいです。サービスが成長していくと、大きい変更をするときにユーザーが逃げてしまうこともあるので、なかなか何かを変更するという意思決定をするのが難しい。そういったときに「こうなったら圧倒的にUXが変わるから変更しましょう」と、スピード感をもって判断できるようになりたいですね。僕は舜さんとは少し違って、裏側で動いているシステムのほうが好きなんですよね。パーソナライゼーションや、プッシュ通知を打つタイミング等、ユーザーとのコミニュケーション設計やその最適化、という部分も今後注力して取り組んでいきたいと思ってます。
Gunosy初となるユーザー参加型ライブ動画番組の気になるラインナップはこちら!
「グノシー」アプリ内で毎日配信中。ぜひご参加ください!
・「グノシーQ」10問連続正解でみんなで賞金山分け‼/毎日21:30~
・「究極の人間2択ショー」究極の2択で「人間」を見極める新感覚クイズ。人を見る目があれば賞金獲得のチャンス‼/毎週日曜21:55~
~編集後記~
今回のインタビュイー3名に向けた、Gunosy開発本部 執行役員吉田からの一言コメントがこちら。そのメッセージからは、インタビューでも話題に上がったとおり、互いを尊重し合う関係性が滲んでいました。
「今回のライブ動画のような新しいプロジェクトは、リリースして終わりではなく、ユーザに使ってもらえるようにリリース後に改善を進めていくことが重要です。ライブ動画開発チームのメンバーは、短期間で安定したシステム開発を完了させるだけではなく、そのシステムを使って『どういったライブ動画コンテンツをつくるのか』『アプリ内でどのような体験を生み出すのか』といったことも考えながら日々改善を進めていて、頼もしく感じています。」
以上で、ライブ動画開発チームのインタビューは終了です。
Gunosyでは一緒に新しい挑戦をしていく仲間を募集しています!少し話を聞いてみたい、という方も歓迎していますので、ご興味がある方、ぜひ下記リンクからのご連絡お待ちしております。