2023.07.31
CTO-Booster
コスト80%減を実現した「ecforceのリアーキテクチャリングプロジェクト」/ SUPER STUDIO様
こんにちは、株式会社DELTAの広報です。
今回は、DELTAの「CTO Booster」を導入して、SUPER STUDIOの主力製品であるカートシステム「ecforce」のアーキテクチャを更改したプロジェクトを扱います。
当プロジェクトを通じて、「ecforce」を導入する1ショップあたりのクラウドコストが80%削減されただけではなく、従来の申し込み導線では2時間以上かかることもあったショップ開設時間が、最短50分まで短縮されました。
本記事では、当プロジェクトを題材に2023年6月14日に開催された「ecforceのリアーキテクチャリングプロジェクト」のイベントレポートを通じて振り返ります。
株式会社SUPER STUDIOについて
ECの業務効率化・売上向上、そして顧客体験向上を実現するSaaS「ecforce」を提供する。
顧客へのノウハウ還元を目的に、D2Cブランドの企画・運営も展開。
リアーキテクチャリングの狙いは、コストの削減とリード増
SUPER STUDIO社のCTO村上さんが2020年に当リアーキテクチャリングプロジェクトの構想を始めたころの狙いは下記の3点でした。
①未来のコスト増加を抑制したい
村上:2020年6月時点では、ecforce のインフラコストはショップの数に大きく依存していました。CMなどのマーケティング施策を打てば契約件数が伸びることは容易に予想できていたので、先んじてコストのショップ数依存からの脱却を図っていました。
②リード導線を増やしたい
村上:また、タクシー/テレビ CM による認知度向上に合わせて新しいリード導線の導入を検討していました。具体的に言うと、認知度向上に伴って発生するリードを取りこぼさないために、トライアルプランのようなものを実装したいと思っておりました。
③ショップ環境の提供スピードを早めたい
村上:当時はecforceのお申込みを頂いてから、お客様にecforceの環境を開設するまでにリードタイムがかかっていました。機会損失を減らすためにも、ショップ環境の提供スピードを早めたいと思っていました。
社内のエンジニアはecforceの機能開発に集中させたかった
村上:このような狙いがあったのですが、悩んでいました。と言うのも、社内のエンジニアは開発のロードマップもありましたし、ecforceの機能開発に集中させたかったのです。そんな中で丹さんと出会うことができまして、CTO Boosterさんとご一緒する形で本プロジェクトの開始に踏み切ることができました。
丹:より広くビジネス的な観点をもつ村上さんにとって、機能開発のロードマップと同様にやりたかった本プロジェクトだったわけですね。
村上:はい。事業を進めていく上で『計画にはないけれども今すぐやりたい』突発的な開発課題が発生することがあります。そのような時にCTO Boosterがあると助かります。CTO Boosterチームは経験豊富でスキルセットも高く、絶対的な安心感でプロジェクトを進めることができました。
マルチテナント化で「ショップが増えるとコストが増える」構造の脱却を図る
村上:まず、当時の構成では1サーバ上で稼働可能なショップ数が限られていたため、ショップ数の増加に伴ってサーバ数、すなわちコストが増加していました。
村上:当時は特別大きなショップさんが少なかったのでそこまでハイスペックな構成である必要はなかったのですが、将来を見据えてマルチテナントを導入することでコストのショップ数依存からの脱却を狙いました。また、ショップ構築のパイプラインの最適化も裏ミッションとして行いました。
最も大変だったのは、ショップごとの固有設定を共通化する作業
村上:元々は 1 ショップ 1 アプリの関係性であったため、ショップ固有の情報がアプリ毎に存在していました。
1 アプリに複数ショップを稼働させるため、DB 管理できるものは DB 管理へ、できないものはショップ名でディレクトリを掘って区別できるように対応しました。
丹:これが一番大変でしたね。githubのリポジトリがショップと同数の200-300程度あったので差分を洗い出して一つ一つ丁寧に対処していく必要がありました。
村上:基本的には設定値を読み取る処理の挙動をローカルファイルを参照するものからデータベースを参照するものに変えるだけでいいのですが、
中にはメールのライブラリなどプロセスが立ち上がった時点で設定を読み込んでおくタイプの機能もあったため、そういった機能についてはプロセスが立ち上がった時点ではなく処理が呼び出されたタイミングで改めてショップごとの設定値をDBから読み出すように大きく変更する必要もありました。
単に設定ファイルの中身をデータベースに入れれば終わりという話でもなかったですね。
丹:しかも、ショップ数がかなりの数あったこともあり、一気に移行できるわけでもないため、マルチテナント環境で動くショップと、シングルテナント環境で動くショップが同時に存在する時期が一年以上あることを見越して、「マルチテナント環境フラグが立った時のみ、DBに置いてある設定を参照するマルチテナントモードになる」というように動的に挙動を書き換えるような実装が必要でした。
移行対応も困難だった
村上:元々は 1 アプリ毎にマイグレーションのバージョン管理を行っていたのでバージョンがバラバラでした。
マルチテナント化したアプリに移行する際にマイグレーションファイルを squash する必要があったので、そのためのジョブやその他の構築関連ジョブを最適化しました。
丹:CD上に、「シングルテナント環境で管理されていたショップをマルチテナント環境に移行するジョブ」を実装させていただいたのと、ついでに「マルチテナント環境にショップを新規構築するジョブ」も実装させていただきました。
村上:ここで実装したジョブは今でも使われていて、この後話しますが申し込み時のショップ構築の時間短縮にも大きく貢献しています。
【本プロジェクトの成果】1ショップあたり80%のサーバー代が削減
そして、約半年間に及ぶリアーキテクチャリングを通じて、結果的に構想当初の狙いをすべて達成することができました。
村上:「未来のコスト増加を抑制したい」という意図に関して言えば、スタンダードプランのインフラコストを 80% 抑制することに成功しました。
丹:コスト増加の傾きをゆるめることができたということですね。
村上:リード導線を増やす件については、オンライン申し込みをトリガーにマルチテナント環境に自動で環境を構築する仕組みを導入しまして、タクシー/テレビ CM による認知度向上からのリードの取りこぼしを防いで、商談 → 契約へと繋げることができました。
丹:ビジネスインパクトとして大きいですね。
村上:自動化を通じて、従来方式の構築時間も 45% まで短縮できましたね。
丹:こちらもビジネスインパクトが大きいですね。リアーキテクチャリングを通じてコストを下げるだけ、というのはよくある話ですが、売上UPにも貢献できたみたいでとてもよかったです。
現在は、より強固なデータ連携や認証基盤の統合を進行中
村上:ecforce は「次世代 EC 構想」を掲げ、より包括的に EC / D2C メーカー様を支援するために複数のサービスを提供し、“ECをもっとシンプルにしていくこと” を目指しています。
村上:ワンプロダクトだからこそ EC / D2C のあらゆるデータ連携が自動で連携することが可能になっており、ものづくりビジネスの最適化を実現することが可能になっています。
そして、「ecforce」開発の次の打ち手として、複数のサービスの認証基盤の統合や、データパイプラインのコスト削減/最適化を「CTO booster」チームに依頼することを検討してくださっているというお話で会を締めて頂きました。
懇親会では、各社の働き方や社風についても語らいました
1時間程度の勉強会を終えた後には、参加者全員で軽食を囲みながらの懇親会を実施しました。名刺交換はもちろん、各社の開発組織についてより踏み込んだ話で盛り上がりました。
サーバー代削減は「CTO Booster」にお任せください
「CTO Booster」は、ソースコードやアーキテクチャの改善を通じて、サーバー代の削減を成功報酬で代行します。
【無料】まずはサーバー代の削減余地がわかる診断から
現状のサーバー代に何円の削減余地があるかがわかる診断は無料です。
ぜひ下記お問い合わせフォームよりご相談ください。
お問い合わせ(診断希望の方はこちら!)
記事をシェア: