「賢いロジックで最適な表示データを提供」GYAO!の女子エンジニア

「賢いロジックで最適な表示データを提供」GYAO!の女子エンジニア


今回は、GYAO!のエンジニアの野村さんに、入社してからずっと担当してきたというアプリやAPIの開発について聞きました。


- お仕事の内容を教えてください!

主に、GYAO!のサービス開発に使うAPI(※)の開発を担当しています。
ただ、いわゆる「フロントエンド」でも「バックエンド」でもない部分なので「フロントエンドとバックエンドの真ん中」を担当している、というのが近いかもしれません。

(※)API:
アプリケーションプログラミングインターフェース。ソフトウエアの機能や管理するデータなどを、外部の他のプログラムから呼び出して利用するための手順やデータ形式などを定めた規約のこと。

複数のバックエンドAPIからデータを取得し、それらのデータから画面に何を表示するのかを決定し、最適化した形にカスタマイズしています。
画面に何を表示するのかを決定する役割を持っている重要なAPIです。
私が作っているAPIは、効率化を目的としています。

動画を見るデバイスが、パソコンやアプリ、テレビ……とマルチになってきていることでGYAO!のサービス内でもいくつか課題があるんです。
デバイスごとに開発担当者が分かれているので、書かれているソースコードも違うんですね。
たとえばGYAO!のトップページで、「複数のバックエンドAPIからデータを取得し、それらのデータから画面に何を表示するのかを決定し、フロントエンドの表示に最適化した形にカスタマイズする」という処理の実装が全てのデバイスに入ってしまうと、開発コストもデバイスの数だけかかってしまいますし、デバイス間での仕様に差異が発生してしまう可能性もあります。
そのため、「処理の実装」を担うAPIをつくり、フロントエンドは取得したデータをそのまま表示することで効率化を実現しました。

土台となる部分は共通ロジックで開発した上で、デバイス別にカスタマイズしたデータをつくっているので、それぞれのデバイスに特化した使いやすさも提供できるんです。

image

(GYAO!のユーザーへのオススメ動画を表示する機能などに、野村さんたちが開発したAPIが使われているそうです)

- このAPIの開発で一番難しいところはどこでしたか?

一番難しいところはAPIの設計です。
GYAO!のサービスを提供している全てのデバイスが使うAPIなので、それぞれの立場から「こうしてほしい」と要求がたくさんきます。
それぞれの要求に応えつつもAPIとしての役割の線引きは明確にするように、常に最適な設計を考えています。

何度も使ってもらい「ここまではAPIで対応するけど、これ以上対応するとフロントエンド側の要件が多くなってしまうので、APIとしてはここまでにしたい」という議論もよくしています。
関係する人たちとの話し合いの時間をできるだけ多く設けて、メリットやデメリットを考えながらエンジニアみんなで解決してきました。

また、このAPIは、技術内から提案したものなので、GYAO!のサービス内にもっと知ってもらう必要がありました。企画担当の方たちを対象に説明会を開催し、APIとは何なのかの説明や、APIを使うメリットをお伝えしました。
自分で自分の作ったAPIの営業活動をやった感じですね(^^
エンジニア以外の方にいきなり「APIを入れたいです!」と言っても伝わらないので、随時質問をしてもらって、APIを使うメリットを理解してもらえるまで何度も話しました。
1人で企画や編集など、多職種の方たちに説明会をするのは大変でしたが、今はやってよかったと思っています。
この説明会をきっかけに、エンジニアだけでなく、いろいろな職種の人たちと話しやすくなり、関係が広がりました。

image


- この仕事をやっていてよかったことは?

私が開発しているAPIは、GYAO!の画面に何を表示するのかを決定する役割を持っているので、たとえばコンテンツの表示順や表示する内容を調整した結果、数値や売上げなどが上がると、てもうれしいです!
アプリやウェブの開発担当ではないのですが、全デバイスで私がつくっているAPIが使われているので、フロントエンドを私が支えているんだ! と、ひそかにうれしく思っています(笑)

- 動画に関わる開発のやりがいを教えてください。

まず、表示している動画に興味をもってもらい、そこから視聴してもらわなければいけないので、ただ動画を並べるだけではなく、ユーザーが見たい動画が並んでいる必要があります。
ただ、パーソナライズしすぎても偏ってしまうので、GYAO!がサービスとして推しているものと、ユーザーの好みとの最適なバランスを見つけていかなければいけません。
表示する内容を検討し、実際に表示してみて、数値を見ながら常に改善を重ねてサービスを成長させたい。
より多くの動画を見てもらえるよう、ユーザーが喜んでくれることを常に意識しながら、これからも開発していきたいです。

- 今回作ったAPIを使って、どのようなことを目指したいですか?

GYAO!サービスの中でこのAPIを使っていない部分もまだまだあるので、これからも導入を進め、より効率化を目指していきたいと思っています。
APIを導入するためには、現状のつくりを変えないといけないのでコストが発生するのですが、APIの導入をしないと、継続的にコストが発生し続けてしまいます。
「私が作ったAPIを導入することで、今後の継続的なコストが削減でき、その上いつのまにか自動で表示される内容が良くなっていきますよ!」と、これからも地道な営業活動をやっていこうと思います。
少ないコストで、よりよいサービスを提供することを目指して頑張っていきたいと思います!

- これから挑戦したいことを教えてください!

今年の4月で入社6年目になり、今期からリーダーになりました。プロダクトを進める上でも、チームを運営するという意味でも、新しい挑戦だと思っています。個人個人が力を発揮するだけではなく、チームメンバー全員が同じところを目指しながら活躍していけるようにしたいです。

私がおしゃべりで声も大きいからか(笑)、周りからは「場の雰囲気を明るくしてくれるよね」と言われることがあります。今後、チームでも話しやすい雰囲気をつくっていきたいです!

image



……最後に、「プライベートではまっていることは何ですか?」と聞いてみたところ、野村さんは、「コリラックマ」が10年以上前から大好きだとか。
「完璧なこの、顔……! 表情があるようなないような、というところもカワイイんです♪」とその魅力を熱く語ってくれました。

そしてよく見ると……野村さんに似ているような気がします(笑)

【野村さんのオススメGYAO!カテゴリ】
テレビカテゴリ
今テレビで放映中のドラマやバラエティを見れるのでとてもいいです!
テレビで放送している時間に見ることはなかなか難しいので、GYAO!の見逃し配信で見たりしています。
アニメカテゴリ
よく全話一挙配信などをやっています。時間があるときに一気に見るのがオススメです!