ARCHITECTURE & CULTURE
Processus et Rituels FinOps
Les optimisations sans rituels sont éphémères. Vous réduisez les coûts en janvier, ils remontent en mars parce que de nouvelles requêtes ont été déployées.
Un pipeline tourne en full-refresh, ou un warehouse a été scale up « temporairement » et jamais redescendu. Les rituels FinOps créent la cadence nécessaire pour que la maîtrise des coûts devienne un réflexe, pas un effort ponctuel.
La cadence FinOps
Quatre niveaux de fréquence, chacun avec un objectif différent :
| Fréquence | Rituel | Objectif | Participants |
|---|---|---|---|
| Quotidien | Alertes automatiques | Détecter les anomalies | FinOps Lead (passif) |
| Hebdomadaire | Cost Review (30 min) | Prioriser les actions | FinOps Lead + Champions |
| Mensuel | Cost Council (1h) | Piloter et prévoir | + Finance + Sponsor |
| Trimestriel | Strategic Review (2h) | Décisions structurelles | + CTO / VP Engineering |
Daily : alertes automatiques
Le monitoring quotidien ne doit pas être un effort humain. Ce sont des alertes automatiques qui notifient le FinOps Lead uniquement en cas d'anomalie. Pas de réunion, pas de rapport : juste un signal quand quelque chose dérape.
-- BigQuery : Alerter si le coût du jour dépasse 2x la moyenne
-- A exécuter via un scheduled query + alerte Cloud Monitoring
WITH daily_costs AS (
SELECT
DATE(creation_time) AS day,
ROUND(SUM(total_bytes_billed) / POW(1024, 4) * 6.25, 2) AS daily_cost
FROM `region-eu`.INFORMATION_SCHEMA.JOBS
WHERE creation_time > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
AND job_type = 'QUERY'
GROUP BY day
)
SELECT
day,
daily_cost,
ROUND(AVG(daily_cost) OVER (ORDER BY day ROWS BETWEEN 7 PRECEDING AND 1 PRECEDING), 2) AS avg_7d,
CASE
WHEN daily_cost > 2 * AVG(daily_cost) OVER (ORDER BY day ROWS BETWEEN 7 PRECEDING AND 1 PRECEDING)
THEN 'ALERTE'
WHEN daily_cost > 1.5 * AVG(daily_cost) OVER (ORDER BY day ROWS BETWEEN 7 PRECEDING AND 1 PRECEDING)
THEN 'ATTENTION'
ELSE 'OK'
END AS status
FROM daily_costs
ORDER BY day DESC
LIMIT 7;Décision concrète
Erreur fréquente
Weekly Cost Review (30 min)
C'est le rituel le plus important. 30 minutes par semaine qui font la différence entre un FinOps actif et un FinOps de façade. L'objectif n'est pas de tout analyser, mais de prioriser les 2-3 actions à plus fort impact pour la semaine.
WEEKLY COST REVIEW — AGENDA (30 min)
│
├── [5 min] Métriques clés
│ ├── Coût total semaine vs semaine précédente
│ ├── Tendance : on track vs budget ?
│ └── Alertes déclenchées cette semaine
│
├── [10 min] Top 5 postes de coût
│ ├── Les 5 requêtes/pipelines les plus coûteux
│ ├── Y a-t-il du nouveau dans le top 5 ?
│ └── Actions possibles pour chacun
│
├── [10 min] Actions en cours
│ ├── Status des optimisations en cours
│ ├── Résultats mesurés des actions précédentes
│ └── Blockers à escalader
│
└── [5 min] Décisions
├── 2-3 actions prioritaires pour cette semaine
├── Assignation claire (qui fait quoi)
└── Date de livraison attendueÀ retenir
Décision concrète
Monthly Cost Council (1h)
Le Cost Council est la réunion où le FinOps rencontre le business. C'est le moment de prendre du recul, d'analyser les tendances et de prendre des décisions stratégiques (réservations, changement d'édition, investissements architecture).
MONTHLY COST COUNCIL — AGENDA (1h)
│
├── [15 min] Executive summary
│ ├── Coût total du mois vs budget
│ ├── Evolution MoM et tendance 3 mois
│ ├── Forecast M+1, M+2, M+3
│ └── KPIs : coût/requête, coût/GB, coût/utilisateur
│
├── [15 min] Deep dive par équipe
│ ├── Showback : répartition des coûts par équipe
│ ├── Top 3 cost drivers par équipe
│ └── Équipes avec la plus forte croissance de coûts
│
├── [15 min] Bilan des optimisations
│ ├── Économies réalisées ce mois
│ ├── ROI des initiatives FinOps
│ └── Pipeline d'optimisations à venir
│
└── [15 min] Décisions stratégiques
├── Faut-il passer en flat-rate/éditions ?
├── Investissements architecture à valider
├── Objectifs de réduction pour le mois suivant
└── Escalades vers le sponsorErreur fréquente
Quarterly Strategic Review (2h)
La revue trimestrielle est le moment de questionner les fondamentaux : l'architecture est-elle adaptée à la croissance prévue ? Les engagements (réservations, éditions) sont-ils toujours optimaux ? Faut-il revoir le modèle de chargeback ?
- Revue architecturale : les patterns actuels tiennent-ils face à la croissance des données ?
- Benchmark : coût par GB stocké, coût moyen par requête, évolution sur 12 mois
- Engagements cloud : renouvellement ou ajustement des réservations/éditions
- Maturité FinOps : où en est l'organisation sur l'échelle de maturité ? Quelles sont les prochaines étapes ?
- Roadmap : plan d'optimisation pour le prochain trimestre, priorisé par ROI
Intégrer le coût dans le cycle de développement
Les rituels FinOps dédiés ne suffisent pas si le coût n'est pas pris en compte au moment où les décisions techniques sont prises. L'objectif est d'intégrer la dimension coût dans les pratiques existantes, pas de créer des processus parallèles.
| Moment | Action FinOps | Comment |
|---|---|---|
| Code review | Vérifier l'impact coût | Dry run obligatoire pour les requêtes sur les grandes tables |
| Sprint planning | Budget coût du sprint | Estimer le coût des nouvelles features data |
| Architecture review | Analyse TCO | Comparer le coût total sur 12 mois des options |
| Rétrospective | Bilan coût du sprint | Ce qu'on a dépensé vs ce qu'on avait prévu |
| Déploiement | Monitoring post-deploy | Vérifier que le coût réel correspond à l'estimation |
Automatiser pour durer
Tout rituel qui dépend d'un effort manuel finit par être abandonné. L'automatisation est la clé de la pérennité FinOps.
| Ce qu'il faut automatiser | Outil | Fréquence |
|---|---|---|
| Alertes d'anomalies | Cloud Monitoring / Snowflake Alerts | Temps réel |
| Dashboard de coûts | Looker Studio / Sigma / Metabase | Rafraîchi quotidien |
| Rapport showback | Scheduled query + email/Slack | Mensuel |
| Top requêtes coûteuses | INFORMATION_SCHEMA query planifiée | Hebdomadaire |
Succes