「LINEマンガ」のCTOに聞いた、国内最大級かつグローバルNo.1巨大サービスの一員だからこそ感じる課題と魅力
2013年4月よりスタートした「LINEマンガ」は、70万点以上もの圧倒的なラインナップを誇る、日本を代表する電子コミックサービス。大手出版社作品だけでなく、オリジナル作品も数多く生み出しており、中でも『女神降臨』や『外見至上主義』は、同サービスを代表する作品として支持を得ています。
この「LINEマンガ」の開発を手がけているのは、2020年8月よりアメリカに本社のあるWEBTOON Entertainment Inc.のグループ会社となった「LINE Digital Frontier株式会社」です。グローバルに電子コミックを展開する“WEBTOON worldwide service”(※)の一員として、日本を超えて、韓国やアメリカ、ヨーロッパや南米など、世界各国に楽しさを提供し続ける同社のサービスでは、どのような開発が行われているのでしょうか?
今回は、LINE Digital Frontier株式会社 CTOの山本一成さんにお話を伺いました。
(※) ※WEBTOON worldwide serviceとは
全世界に向け10カ国語でサービス展開する、電子コミックを中心としたプラットフォームの連合体。各プラットフォームを合算したグローバルでの月間利用者数(MAU)は7,200万、累計ダウンロード数は2億超、ひと月の流通額は100億円を超える、同市場で圧倒的世界No.1。
代表的なサービスは、LINEマンガ(日本/LINE Digital Frontier株式会社)、WEBTOON(北南米,欧州/WEBTOON Entertainment Inc.)、NAVER WEBTOON(韓国/NAVER WEBTOON Ltd.)、LINE WEBTOON(東南アジア)など。
■プロフィール
山本 一成
LINE Digital Frontier株式会社 CTO
システムエンジニアリングサービスの会社で、エンジニアとしてのキャリアをスタート。「ネット」の仕事がしたいとの思いから、オン・ザ・エッヂに転職。買収などにおける幾度かの社名変更を経て、現在は2018年に設立されたLINE Digital Frontier株式会社のCTOに就任。サービスに関する技術統括の責任者として、「LINEマンガ」の開発を推進している。
新作や価値ある作品に出合える。国内最大級「LINEマンガ」の魅力
──電子コミックサービスが多数ある中で、国内における「LINEマンガ」の立ち位置はどのようなものだとお考えですか?
山本:
電子コミック自体はガラケー時代にもありましたが、スマホにシフトしていったのは恐らく「LINEマンガ」が先駆けではないでしょうか。グループとしてグローバル展開している点も含めて、国内最大級のサービスであると自負しています。おかげさまで、全アプリを対象にした各種のランキングでも、上位の常連としてご支持をいただいています。
──多くのユーザーに利用されている理由は、どういったところにあるのでしょう?
山本:
国内最大級の豊富なコンテンツは魅力だと考えています。複数のマンガアプリを併用している方が多いと思うのですが、たくさんの作品に出合いたいという方には、満足していただけるサービスなのではないでしょうか。
作品数が多いからこそ、UI/UXでいかに効率的にユーザーに訴求できるかを常に考え、サービスを改善していっているのもポイントの一つですね。エンジニアも企画者も、基本的には全員が「LINEマンガ」のユーザーなので、メンバーの中で気づいたことを改善点として挙げてもらい、サービスに反映できているのが強みだと考えています。
──今後の電子コミック市場は、どうなっていくと思われますか?
山本:
コミック市場は今後も広がっていくでしょうし、日本の作品が世界の方々に読まれる機会はもっと増えていくと思います。
また、今後デバイスやライフスタイルの変化によっても市場が変わっていくかもしれませんね。そこでいかに最適なコンテンツをユーザーに届けられるかが重要だと考えています。
レガシーを解消し、安定したサービスを提供するために開発を進める
──現在のエンジニアの人数はどれくらいいらっしゃるのですか?
山本:
サーバーサイドのエンジニアは9名います。ただ、サービスが拡大していることもありまして、グループ会社のNAVER WEBTOON Ltd.でも「LINEマンガ」担当のエンジニアを採用していただいて、そちらからもサポートを受けています。全てを合わせて社員メンバーが13名で、業務委託の方も含めると人数はもう少し増えます。
──開発環境について、特徴的な技術やこだわっているところがあれば教えてください。
山本:
実はサービス開始時の開発言語はPerlであり、今もPerlで動いている部分があるんです。しかしながら、さらなるサービス拡大や安定性強化のためにはモダン化が必要であり、サービスに影響が出ないよう注意しつつ、JavaやKotlinへの転換を進めています。ただ、これは本当に難しいプロジェクトで……。ユーザーベースが大きければ大きいほど、難易度が上がっていくんですよね。現状でいうと、今年の上半期でのリニューアルで、メインとなるアプリの部分に関してはある程度置き換えが完了し、その他の部分もJavaやKotlinに置き換えやすい状況は整っていると思っています。
その他の開発環境でいうと、基本的にデータベースはMySQLで、ミドルウェアとしてRedisやKafkaを扱っています。データの分析基盤としてはLINE株式会社側に構築されたHadoopを利用していて、そこにデータ連携してランキングデータやレコメンドデータを生成し、サービスと連携しています。
──難易度が高い分、やりがいがあるだろうなと感じました。
山本:
やりがいという観点でお話しすると、「LINEマンガ」は多くの方にご利用いただいて、それこそ友人や家族も使ってくれているサービスです。そのため、フィードバックをもらいやすい環境であるというのも、大きなポイントだと考えています。先日久しぶりに朝の出勤時間帯の電車に乗ったら、たまたま前方にいらっしゃる方のスマホ画面がチラッと見えたことがあって、まさに「LINEマンガ」を利用されていたんです。その時は本当に嬉しかったし、自分が関わったサービスが使われている様子を見ることができるのは、大規模サービスならではの魅力ですね。
あとは、toC系のサービスは止めてはいけないと思っているので、いかに安定したサービスを提供するかについて考えるのも面白いです。例えば、データをマイグレーションするときにはサービスに影響が出ないようなフローを考える必要がありますし、機能追加する際にはデプロイするときの手順も考えなくてはいけません。どうすれば、ユーザに迷惑をかけずにスピーディに機能を提供できるのか、常に考え続ける必要がある。トラフィックも多いので、アルゴリズムをいかに効率的に組むかを考えるのも、非常に楽しいポイントです。
──トラフィックが多いというのは、エンジニアとしてやりがいを感じる部分ですよね。反対に、ユーザーが増えたことで苦労した点はありますか。
山本:
基本的にHA(High Availability)構成にしていて、急激なトラフィックの増加でもサービスに影響がでないようにしています。
もちろんユーザーが増加していることはわかっているので、備えもしています。何年か前にLINE株式会社のエンジニアブログにも書きましたが、例えばデータ量の増加に対しては、データベースのシャーディングを行いました。その際はやはり苦労しましたね。LINE株式会社のサービスは、まずコンパクトにシンプルにスピード感をもってリリースする方針だったんですよ。そのため最初からシャーディング構成にはしておらず、シンプルなMaster-Slave構成からの変更で、設計や実装するのにも時間がかかりました。そういった点も含めて、多くのユーザーの方に使って頂いているサービスをメンテナンスしていくのは、非常に大変ではあります。
──シャーディングに関しては、今後を予期して早めに手を打たれたのですね。
山本:
そうですね。実はまだこれからもあって。データベースのタイプが複数あり、そちらもシャーディングされてはいるのですが、データやQPSの増加量が当初の想定より早いので、スケーリングも進めています。
また、「LINEマンガ」では復数のプロジェクトの開発が並行で進行していて、アクティブにリリースが行われているため、そのような状況下ではやはりいろいろ問題が発生することもあります。そういった問題を解決するために、SRE TFを組んで課題解決に取り組んでいます。問題をいかに事前にキャッチして安定運用できるかどうかが肝になるので、例えばSLI/SLOをチェックする為のダッシュボードを用意したりとか、APMツールを導入して状態をトレーシング出来るようにしたりもしています。あとはアラーティングのルールですね。
今までもアラートがかかったときはキャッチできるようにしていたのですが、そのあたりもルールを整備してノイズにならないような状態にしてあります。一部負荷検証できるような構成も整えて、なるべく事前に見えるようにはしていますね。
──いろいろ対策されているのですね。過去の事例やプロジェクトで思い出深いものはありますか?
山本:
大きな転機だったのが、2018年にできた現在のコアな機能で、 1作品につき23時間ごとに1話を無料で読み進められる機能を導入した時です。私がジョインして、一番大きなリニューアルだったので、そこは非常に感慨深いです。ユーザーからも「待っていました!」という声を多くいただき、喜んでいただけたのかなと。
というのも、ローンチした当初も連載形式でやっていたのですが、日本のマンガ事情って単行本がメインなんですよね。いかにユーザーに毎日アクティブに使ってもらうかが重要なので、単行本も楽しめるようにしつつ、連載形式にシフトしていこうと注力していました。
でも、実はそのときは上手くいかなかった部分もあって、狙った項目の数字が思ったように伸びなかったんです。連載に振り切れていなかったし、UIが大幅に刷新されたことにより、ユーザーからの反響が悪い意味で大きくて……。ストアのアプリレビューもとても申し訳ない結果となりました。そこからデータ分析やユーザーボイスを拾って徐々に改善し、現在ではApp Store、Google Playともにユーザーから評価をいただいており、各種ランキングでも上位に、常連として入れていただけるようになりました。今後もユーザーに寄り添い改善を続けることで、ずっと、いつでもご満足いただけるようなサービスに成長させることが目標です。
──ユーザーに向き合い続けてられているからこそ、ここまで大きなサービスに伸びたのだろうと感じました。その上で、UXの向上が現在の課題だと考えられているのですね。
山本:
はい。レガシーの部分が残っている点も課題です。先ほどもお話ししたように、言語的なところは置き換えていっているのですが、アーキテクチャ的な部分はまだまだモノリシックな状況です。2022年中の対応を目標として、マイクロサービス化していきたいと考えており、メンバーと話し合って進めていきたいと思っています。
また、データ量に関する課題もあり、ログ系のデータは消すことができないので肥大化していってしまうんですね。MySQLだとデータのスケーリングが難しいサービス規模になってきているので、NoSQLなどのミドルウェアへの置き換えも今後検討していこうと話を進めているところです。
──データ活用にも力を入れていらっしゃるのですか?
山本:
もともとLINE株式会社の事業領域でしたし、WEBTOON Entertainment グループでも重要視していることから、我々もデータドリブンを強く意識しています。例えば、何かをリリースする際にはABテストをしますし、それができない場合でも出すデータを変えるなど、柔軟に改変できるようなセクションがあるので、必ずシミュレーションしています。
ただ、全てに対して時間をかけると大変なので、明らかに結果がわかるようなものに関してはスピード重視でやるなど、ケースバイケースで進めています。
私たちの最大の特徴は、開発チームとデータチームが密に連携しながら開発を進めているというところなんですよ。ちなみに、先ほど話にあったレコメンデーションについては、LINE株式会社のマシンラーニングチームにもご協力いただきながら連携している状況です。
一人ひとりに合わせた働き方が叶うハイブリットワーク
──メンバーにはどのような方がいらっしゃるのですか?
山本:
toC向けの事業会社やSESの会社など、バックグラウンドは本当に多岐に渡っています。ちょっと面白い方でいうと、IPAの未踏人材に選定されたメンバーがいまして、彼は今、主力として頑張ってくれています。あとは、NAVER WEBTOONの方もいますので、韓国の方も一緒に働いていますね。
──基本的なやりとりは日本語なのでしょうか。
山本:
はい。基本的にはSlackやZoomでやり取りしていて、担当者を介してリアルタイム通訳でやり取りすることもあります。Slackの場合は翻訳botを使用しています。あと、母国語が英語のメンバーもいますが、皆さん日本語が堪能でコミュニケーションに困ることはないですね。
開発のGitについては、iOSチームは英語でやっていたり、Androidチームは一部英語だったりと、チームによって違います。全社的に英語でやろうという話もあったのですが、開発に工数をかける必要がありますし、情報を正確に伝えることが最優先のため、ルールとしては定めずにどちらでもいいようにしています。
──チームの雰囲気やカルチャーについて、何か特徴はありますか?
山本:
現在は午前中30分程度デイリーミーティングを行っていて、密にコミュニケーションをとるようにしています。なにか困ったことがあったら、Slackでチームメンションをして疑問点をすぐに聞けるようにしています。多くのユーザーを抱えているサービスであり、トラブルが発生した際には迅速に対応する必要があるので、すぐに連携をとって対応できるようにしているんです。そういう観点でいうと、責任感が強い人が多いですし、「LINEマンガ」のエンジニアとしてのプライドを持っている方は多いと思います。
Slackでも頻繁に意見が飛び交っていて、例えばiOSエンジニアからは「ARKitのフェイストラッキング機能を利用して、ウィンクによるページめくり機能を入れられないか」という意見が出てきたこともあります。その他にも、面白いアイディアがたくさん出てくるんですよ。あとはWWDCでAppleから発表があると、それを取り入れることもあります。
今はレガシーな部分やUXの改善など、課題をクリアすることが優先ではありますが、やりたいことが実現できる土壌があり、自身の意見が言いやすい環境だということはお伝えしておきたいですね。
──意見を言いやすい環境というのはポイントですよね。働き方の観点でいうと、何か特徴はありますか?
山本:
ハイブリッドワークスタイルで、出社してもしなくてもいい働き方を導入しています。現在はリモートワークが多いですね。勤務時間に関しては、エンジニアは完全に裁量労働制です。とはいえ、デイリーミーティングをやったりするので、意外と規則正しく勤務している方が多いですね。
今後については、新型コロナウイルス感染症が落ち着いたとしても、フル出勤にはならないと思います。パフォーマンスを出していただくことを前提に、それぞれの希望の働き方を叶えられる体制にしていきたいと考えています。
マンガを軸としたエンタメに強いグローバル企業を目指していく
──現状のチームにマッチする人はどんな人でしょうか。
山本:
まずは、プロフェッショナルであること。現状抱えている課題に対してしっかりと走りきれることが大事ですね。LINE株式会社のエンジニアカルチャーで「TAKE OWNERSHIP」という言葉があり、自分ごととして考えられることも重要です。強いチームは、一人ひとりが当事者として自発的に動けることが重要ですよね。そういう考えをお持ちの方に来ていただきたいし、マッチしているのではないかと思います。
また、現在アーキテクチャの置き換えを計画中なので、そういったことに関心のある方を歓迎しています。自分が反映したコードを多くのユーザーに使っていただけるので、その辺の満足度は高いのではないでしょうか。
──最後にメッセージをいただけますか。
山本:
最終的に目指しているのは、マンガを軸としたエンタメに強いグローバル企業です。その中で、ユーザーに喜んでいただけるような機能追加やコンテンツを提供できるサービスにしていきたいと考えています。
我々のエンジニア組織は、大規模サービスだからこその課題も抱えていますが、その分大きなやりがいがあり、成長機会もたくさんあります。「LINEマンガ」にご興味のある方はもちろん、サービスの課題を技術で解決したい方、積極的に改善提案を行いサービスを成長させたい方は、ぜひお気軽にご連絡をいただけると嬉しいです。