Cybersécurité
Cas pratique Mailinblack
Contexte de la mission
Candidature Data Analyst — Plateforme de sécurité email
Cas pratique réalisé dans le cadre d'une candidature chez Mailinblack. L'objectif était de démontrer une maîtrise de l'analyse de données sur un domaine métier spécifique : menaces email bloquées, simulations de phishing par département, taux de complétion des formations Cyber Coach et cartographie de la santé globale des clients. Les données sont simulées en cohérence avec les ordres de grandeur publics de Mailinblack (150M de menaces bloquées en 2025).
Menaces bloquées 2025
141M
Simulation calibrée
Taux de clic moyen
20.5%
Benchmark secteur 22%
Complétion formation
84%
Moyenne décembre
Clients à risque
87
sur 200 clients
// Requêtes SQL
Taux de clic par département (dernière campagne)
Identifie les départements les plus exposés au phishing en se basant sur leur dernière campagne de simulation.
SELECTdepartment,ROUND(AVG(click_rate) * 100, 1) AS avg_click_rate_pct,COUNT(*) AS nb_campaignsFROM phishing_campaignsWHERE campaign_date >= DATEADD(month, -3, GETDATE())GROUP BY departmentORDER BY avg_click_rate_pct DESC;
Clients à risque élevé
Détecte les clients avec un faible taux d'activation OU une combinaison menace élevée + formation insuffisante.
SELECTc.client_id, c.name, c.segment,a.activation_score, t.completion_rate, ph.click_rateFROM clients cLEFT JOIN activation_scores a ON c.client_id = a.client_idLEFT JOIN training_latest t ON c.client_id = t.client_idLEFT JOIN phishing_latest ph ON c.client_id = ph.client_idWHERE a.activation_score < 50OR (ph.click_rate > 0.25 AND t.completion_rate < 0.60)ORDER BY a.activation_score ASC;
Analyse de cohorte — complétion par mois d'onboarding
Compare la progression des formations selon le mois d'intégration du client.
WITH cohorts AS (SELECT client_id,DATE_TRUNC('quarter', onboarding_date) AS cohort_quarterFROM clients),monthly AS (SELECT c.cohort_quarter,DATEDIFF(month, c.cohort_quarter, t.month) AS months_active,AVG(t.completion_rate) AS avg_completionFROM training tJOIN cohorts c ON t.client_id = c.client_idGROUP BY c.cohort_quarter, months_active)SELECT * FROM monthlyORDER BY cohort_quarter, months_active;