見出し画像

『システムコストレポート』 〜経営とエンジニアリングの橋渡し〜

こんにちは、ダイニーで VP of Technology というロールを担っている karszawa です。

本日は、ダイニーの Platform Team が運用している『システムコストレポート』について紹介します。


システムコストレポートの概要と意義

システムコストレポートでは、ダイニーのシステム開発とシステムの維持に用いられるあらゆるコストを一覧化し、分析しています。分かりやすい例だと Google Cloud の各コンポーネントごとの使用量と、それが妥当なのかどうかというところを論じています。

ダイニーのシステムコストレポートはこんな感じ

システムコストレポートの意義は、システムの利用費用が経営的に妥当なのかどうかを非エンジニア(経営者)に理解してもらうことです。エンジニアリングに明るくない経営者にとって、インフラコストはブラックボックスです。そのコストが妥当であるかどうかは、他社の決算資料と比較するなどしてトップダウンで判断するしかありません。ただ、当然ながら決算資料に載っているシステムコストの表現はかなり曖昧で、自身の事業にどの程度の類似性があるかは疑わしいものです。そういったエンジニアリングコストの実情をボトムアップに紹介するのが システムコストレポート です。

システムコストレポートの記述のポイント

経営者が行う判断は「どこにどれだけ投資するか」です。システムコストレポートにはそれが判断できるような材料を盛り込みましょう。

具体例で言うと、次のような項目は上手く伝わるように心がけています。

  • 全体の経費と、特に大きなコストがかかっているコンポーネントの表示

    • 少額であれば、それがどんなに無駄なコストであっても、経営者が関与すべき問題ではありません。大きな領域に注目しましょう。

  • 顧客ごとの単位費用

    • 「ダイニー」というサービスは基本的に店舗ごとに課金されるため、全体のコストを店舗数で割ってユニットコストを算出します。

    • 複数の異なる課金体系の顧客がいる場合、それぞれの属性ごとにコストを計算しましょう。売上とコストのバランスは投資判断の重要なヒントになります。

    • SaaS ならではの ARPU, CAC, Payback Period などのメトリクスとユニットコストを比較するのも面白いです。ランニングコストを加味した結果、正味の Payback Period が異常な数値になってしまったとすると、コストが大きすぎると言えます。

  • 増減の傾向と将来の予測

    • 現状の分析では大きな問題ではなかったとしても、増加傾向にある要素には今のうちから人的投資を行う必要があります。

    • 逆に、現状では大きな割合を占めていても、原因が判明している一時的な現象に対しては、それほど注目する必要はないでしょう。

完全に雰囲気のグラフです。

前回のシステムコストレポートの紹介

ダイニーでは、システムコストレポートを四半期毎に発行しています。四半期毎の目標設定、及び経営合宿のタイミングに合わせたいからです。

ここでは各要素について簡単に紹介します。

Google Cloud

Google Cloud 利用料の説明

そもそも Google Cloud とは何かということから簡素な言葉でざっくり説明しています。流石に Google Cloud は有名なので説明は不要かもしれませんが、エンジニアしか知らないサービスに触れることも多いため、すべてのトピックに対し簡単に説明しています。

次に、最も重要な情報として、コミットメントの利用状況について説明しています。実は Google Cloud は利用料金を年間で確約することによって割引を受けることが出来ます。それが未達になると不足分の料金を期末に一気に請求されてしまうため、コミットメント消費量が適切かどうかは非常に重要です。もはや、コミットメントペースでの消費であれば委細不問とすら言えるでしょう(次回契約を決めるためには詳細を分析する必要はありますが)。

分析としては、各コンポーネントごとの利用料の内訳を説明しています。ダイニーの場合は、一番大きな割合を占めるのは AlloyDB です。ここでは「それが何の役に立っているのか」「その消費量が妥当なのか」について論じています。

前回のレポートでは AlloyDB の使用量が大幅に削減されたことが分かりました。これに対し、実施した施策を具体的に説明するのはあまり意味がありません。重要なのは どれだけの投資(人員・期間)でどれだけの効果(金額・割合)が得られたか です。

※ 興味を惹くレポートを作るには一定のユーモアも必要です。余談として苦労話や個人的意見を挿入するのも良いでしょう。重要なのは、本題と余談が区別されていることです。

imgix

imgix の利用料の説明

プラン変更により直近で利用料金が変わる可能性があるため、それをレポーティングしています。料金が上がった後に事後で報告されるより、事前になんとなくでも把握できていた方が良いですからね…。

Datadog, GitHub, Sentry, Autify

それ以外のトピックとしては上記のサービスの利用料について触れています。特に GitHub はコード管理に加え CI/CD にも利用しており、CI/CD は非エンジニアにとって理解のしにくい概念だと思われるため簡潔に説明しています。

ちなみに GitHub などのシステム提供ではなく開発生産性に関わるツールに関しては、エンジニア一人あたりのコストを算出しています。「平均の人件費が ¥xx だから ¥yy 程度の投資は妥当だろう」と判断してもらうわけですね。

更に余談ですが、開発生産性にかかるコストはエンジニアの人件費の n% を予算とする考えが妥当だなと感じています。個別のツールが売上をいくら上げるかを計算するのは至難の業ですが、先に予算枠を決めてしまうのは簡単です。内訳はエンジニア自身に考えてもらえばコストを最適化できますし、コストコントロールも容易です(人数を数えてサービスの請求書と見比べれば良いだけですから)。と、言いつつダイニーではこの n% の合意には至れていないので、今後の取り組みとして頑張っていきます。

まとめ

システムコストレポートを記述することは(間接的ではありますが)エンジニアが経営に参画する一つの手段です。システム自体を構築していくことも意義深く楽しい営みではありますが、会社組織として活動している以上は全社の投資戦略との整合性には常に意識を払わなければなりません。こういった取り組みを通じて、より上段からエンジニアリングを俯瞰してみるのはいかがでしょうか?経営陣とエンジニアリング部門の相互理解が深まることで、より深い投資とそれによるより良い顧客体験が実現できるかもしれません。

そんなシステムコストレポートを運用しているダイニーの Platform Team に興味を持っていただけましたでしょうか?もしそうであれば、ぜひカジュアル面談を実施しましょう。ここでは公開できなかったより深いお話もできると思いますよ!

貯金箱と招き猫

この記事が気に入ったらサポートをしてみませんか?