base-service-image

ネットショップ作成サービス「BASE(ベイス)」の成長が止まらない。2012年11月、個人やスモールビジネスを対象にサービスを開始し、9年目にしてネットショップ開設数が140万件を突破。年間の開設数でも4年連続業界 No.1*となる快挙も達成した。専門的な知識が不要で、誰でも、簡単に、無料でネットショップを始められる洗練されたサービスが、「BASE」が大きな支持を集めている理由だ。BASE 株式会社のCTOとしてエンジニアチームを率いる川口将貴氏は次のように話す。

「誰もがインターネット上に自分の店を開ける、決済機能を持つことができる世界へ――私たちは “Payment to the People, Power to the People.” という企業ミッションを掲げてその実現に取り組んでいます。品質の高いプロダクトを開発し、「BASE」加盟店に収益性の高いビジネス基盤を、加盟店の購入者には快適なショッピング体験を提供し続けることが、エンジニアチームのミッションです。」

2020年、コロナ禍に伴う緊急事態宣言の発令、外出自粛、店舗への休業要請などは、社会と暮らしに大きな変化をもたらした。一方で、ネットショップの新規開設とネットショッピング需要の拡大を強く後押しすることにもなった。

「予想を超えたアクセスとトランザクションの急増により、一部サービスで安定性が低下するなどの問題に直面しました。この時は、エンジニアチームが全力で対応して乗り切ることができましたが、問題再発のリスクを残していました。私たちは、『問題発生時の迅速な原因特定と対応』『問題発生を未然に防ぐための改善点の発見』を可能にする監視環境の強化を急ぎました」(川口氏)

「BASE」のSREチームではインフラやサービスを監視するためのツールを整えていたが、顧客のサービス体験全体の可視化や、アプリケーションのコードレベルでの不具合を特定することは困難だったという。

「サーバーサイドのアプリケーションパフォーマンス監視に利用してきたNew Relicを、2020年にフルスタックの『New Relic One』にアップデートしました。これを、SREチームを中心におよそ50ユーザーがNew Relic Oneにフルアクセスできる規模でユーザーライセンスを導入し、アプリケーション開発部門、ビジネス部門、マネジメント層までが共通基盤として活用するための環境整備を進めています」(川口氏)

*ネットショップ開設実績No.1: 最近1年以内にネットショップを開設する際に利用したカート型ネットショップ開設サービスの調査(2021年2月 調査委託先:マクロミル)

New Relic Oneの活用でSREチームの意識と行動が変化

「BASE」が2016年から利用してきたNew Relic APMは、業界を代表するアプリケーションパフォーマンス監視ソリューションだ。Webアプリケーションのレスポンスタイム、スループット、エラー率、トランザクションなどを可視化するとともに、ユーザー体験に影響するコードやコード間の依存関係をリアルタイムで特定できる。

「New Relic APMは、問題が発生しそうな個所を事前に発見して手を打てることにメリットを感じていましたが、正直なところ優れた機能をフルに活用できていたとは言いづらい状況でした。2020年に入って、Webinarや勉強会を通じてNew Relic APMを使いこなすためのノウハウを得られたことが、フルスタックでの採用につながりました」と川口氏は振り返る。

New Relic Oneの活用が本格化したのは2020年後半である。AWS上に構築された「BASE」のサービス基盤にNew Relic APM、Infrastructure、Logsが、ショップ/ユーザーが使うデバイス側にはSynthetics、Browser、Mobileがそれぞれ適用され、ユーザーのサービス体験全体を網羅するエンドツーエンドのオブザーバビリティが実装されている。その効果はすぐにあらわれた。Service Reliability Division エンジニアの長澤侑野氏は次のように話す。

「ショップオーナーから『アプリケーションのバグではないか』とカスタマーサービスに連絡が入りました。解決を託された開発チームから相談を受け、SREチームからNew Relic Logで得られた情報を共有しながら原因を探ったところ、いつリリースしたどのコードに問題があったのか即座に特定でき、どれだけの範囲に影響があったのかまで把握できたのです。問い合わせから、原因特定、問題解決までかつてないスピードで実現されたことで、改めてNew Relicの威力を実感しました。」

見えなかったものが見えるようになったことで、SREチームの意識と行動にも変化があらわれてきたという。Service Reliability Division エンジニアの相原征帆氏は次のように話す。

「SREチーム内では、何か問題が起こったときにまずNew Relicのダッシュボードを確認する習慣が定着しています。私自身の経験では、システム負荷が上昇したときに、原因がアクセス増なのか、特定の処理が高負荷なのか、AWSのインスタンスに問題があるのか、そうした問題の切り分けが非常に容易になりました。自分が使いやすいようカスタマイズしたダッシュボードを用意することで、さらに使い勝手が向上するものと期待しています」

New Relicが収集し可視化する価値ある情報、部門や担当領域ごとにカスタマイズされたダッシュボード――この仕組みが、全社共通のビジネス基盤としてのNew Relicの活用につながっていく。

部門や立場を超えて、共通言語のようにNew Relicの情報を利用

「特定のショップでレスポンスが悪化している」「今すぐ行うべき対応は何か」「問題発生を未然に防ぐために改善すべき点は」――SREチームがNew Relicからいち早く入手した情報は、アプリケーション開発部門、ビジネス部門、マネジメント層にとっても価値の高い情報だ。

「顧客体験の低下がどれだけ売上に影響するか、New Relicから得られる情報により定量的に評価できます。SREチームが先行していますが、開発や経営それぞれの視点で使えるNew Relicのダッシュボードを整備していく考えです。全社共通の情報基盤として常に参照でき、部門や立場を超えて共通言語のように利用できるよう育てていくことが目標です」とService Reliability Division マネージャーの富塚真氏は話す。

一方、川口氏はCTOの立場から次のように期待を示す。

「New Relicの適用範囲やユーザー層を拡大していくことでサービスの質を高め、「BASE」のプロダクト成長を加速させていきたいと考えています。SREは活用レベルをいっそう高めていかなければなりません。見たいものが見えるようになったとき、より高度な判断とアクションに結びつけるためのスキルの研鑽が重要です。特定のスペシャリストに依存するのではなく、SREチーム全体の成長につながるような活用を進めていく考えです」

FacetとNRQLを活用し、見たいものを自ら見たい形に工夫する

実際に、「BASE」のSREチームメンバーである富塚氏、長澤氏、相原氏のNew Relic活用の深化の勢いは加速した。

「フルスタックのNew Relic Oneであらゆる情報が可視化されたことで、使い始めた当初は、あれも見えるんじゃないか、これも見られないかと試行することが楽しかったですね。今も、見えることから新しい気づきが生まれるのだと日々実感しています」(相原氏)

「見えなかったものが見えるようになった」から「見たいものを自ら見たい形に工夫するようになった」への転換点はすぐに訪れた。きっかけは「Facet(ファセット)*」を体験したことだった。相原氏は次のように続ける。

「Facetでは、たとえばダッシュボード上でアクセス数を表示させたとき、ユーザー、ブラウザー、デバイスなどでグルーピングされたランキングチャートを簡単に作成することができます。さらに、テンプレートと「NRQL(New Relicクエリ言語)*」を使って、自分の見たい情報を見たい形にアレンジできるのです。Facetの便利さを体感してからは、NRQLの活用は加速度的に進みました」

New Relic Oneのフルスタックオブザーバビリティにより、SREチームでは複数あったツール群の統廃合を進めることができたという。New Relicの卓越したUI/UXは「使いやすさを超えた体験」をもたらした。

長澤氏は、「SREの思考や行動まで考え抜かれたNew RelicのUI/UXには、感心を通り越して感動すら覚えました。New Relicの開発者と私たちの気持ちが一致しているということは、SREのメンタリティは世界共通なのかもしれないですね」と話す。

* NRQLは、SQLに似たNew Relicのクエリ言語。NRQLを使用することでNew Relicで取得したアプリケーションやホスト、ビジネスKPIなどあらゆるデータを抽出、可視化することが可能。Facetは、NRQLで利用できる句の1つで、NRQLで抽出したデータをFacetで指定した任意の項目でフィルタリングすることが可能。

「BASE」のプロダクト成長に貢献するエンジニアチーム

システムとユーザー体験全体を把握しながら「BASE」のサービス品質と顧客満足度を高め、「BASE」のプロダクト成長に貢献する――エンジニアチームの行動指針はNew Relicの活用の進展とともにいっそう明確になった。

「私の感覚では、New Relicは“ツール”というより“SREチームの一員”に近い存在です。それも、24時間フルに働けるシニアクラスのSREというイメージです。私たちは“彼”が提供してくれる情報を活用しながら、より良いユーザー体験を実現することに注力できます。」(長澤氏)

チーム内には、幅広い技術に精通したフルスタックエンジニアを指向するメンバーも少なくないという。「私の世代のアプリケーションエンジニアは、全員がフルスタックだったようにも思う。」と笑いつつ、川口氏は次のように締めくくった。

「プロダクトを成長させお客様満足度を向上させることが、エンジニアチームの最優先のミッションです。これを実現するためであればエンジニアの職務領域を限定する考えはありません。全員が「BASE」のエンジニアとして、ECサイト運営に携わるプロフェッショナルとして、仕事の幅を広げスキルを磨き上げてほしいと思います。New Relicを使いこなす過程で視野と知識が広がり、より深いレベルまで技術に精通することができるならば、それがひとつの理想形ではないでしょうか」