「FinOpsはツールの問題ではなく、文化の問題だ」と佐藤CTOは強調した。「エンジニア一人ひとりがコストを意識し、ビジネス判断としてコストを最適化する。それがFinOpsだ。」
1. FinOpsフレームワーク
| フェーズ | 目的 | 活動 |
|---|
| Inform | 可視化と配分 | コストの可視化、チームへの配分、レポーティング |
| Optimize | 最適化 | Right-sizing、予約購入、無駄の削減 |
| Operate | 運用 | バジェット管理、異常検知、継続的改善 |
2. Unit Economics
// コストをビジネスメトリクスに紐づける
interface UnitEconomics {
costPerUser: number; // $/MAU
costPerTransaction: number; // $/取引
costPerApiCall: number; // $/1M API calls
costPerGbStored: number; // $/GB/月
}
function calculateUnitEconomics(
monthlyCost: number,
metrics: { mau: number; transactions: number; apiCalls: number; storageGb: number }
): UnitEconomics {
return {
costPerUser: monthlyCost / metrics.mau,
costPerTransaction: monthlyCost / metrics.transactions,
costPerApiCall: (monthlyCost / metrics.apiCalls) * 1_000_000,
costPerGbStored: monthlyCost / metrics.storageGb,
};
}
// 例: 月$50,000、MAU 100万、取引50万件
const economics = calculateUnitEconomics(50000, {
mau: 1_000_000,
transactions: 500_000,
apiCalls: 500_000_000,
storageGb: 10_000,
});
// costPerUser: $0.05/MAU
// costPerTransaction: $0.10/取引
// → ユーザー数が2倍になってもコストが2倍にならないことが理想
3. チームへのコスト意識浸透
Showback と Chargeback
| モデル | 説明 | メリット | デメリット |
|---|
| Showback | コストを見せるだけ | 抵抗が少ない | 行動変容が弱い |
| Chargeback | チームの予算に課金 | 強い動機づけ | 運用が複雑 |
// チームごとのコストレポート(Showback)
interface TeamCostReport {
team: string;
totalCost: number;
breakdown: { service: string; cost: number }[];
trend: { month: string; cost: number }[];
unitCost: number; // チームのUnit Economics
optimizationScore: number; // 0-100(Savings Plans カバレッジ等)
recommendations: string[];
}
// 毎週のSlack通知
function generateWeeklyCostSummary(teams: TeamCostReport[]): string {
return teams.map(t =>
`*${t.team}*: $${t.totalCost.toLocaleString()} (${t.trend.length > 1 ?
`${((t.totalCost / t.trend.at(-2)!.cost - 1) * 100).toFixed(1)}% vs 先月` :
'初月'})\n` +
` 最適化スコア: ${t.optimizationScore}/100\n` +
(t.recommendations.length > 0 ? ` 推奨: ${t.recommendations[0]}` : '')
).join('\n\n');
}
4. FinOps 成熟度モデル
| レベル | 特徴 | チェックポイント |
|---|
| Crawl | タグ付け、基本的なコスト可視化 | Cost Explorerを定期的に確認 |
| Walk | チーム別Showback、Right-sizing | 週次コストレビューを実施 |
| Run | Chargeback、自動最適化、Unit Economics | コストがOKRに含まれる |
まとめ
| トピック | 要点 |
|---|
| FinOpsサイクル | Inform → Optimize → Operate の継続的改善 |
| Unit Economics | コストをビジネスメトリクスに紐づけて判断 |
| コスト文化 | Showback/Chargebackでチームのコスト意識を醸成 |
| 成熟度 | Crawl → Walk → Run で段階的に導入 |
チェックリスト
次のステップへ
FinOpsプラクティスを学んだ。次は 演習 で、コスト最適化計画を策定しよう。
推定読了時間: 30分