Mohamed Amine Hajji / Experience
Software & AI Engineering Intern (PFE / End-of-Studies Project) — Drivago
End-of-studies internship at Drivago (Autoécole Plus), a driving-school SaaS platform — built the analytics and optimization layer end to end, across three distinct workstreams.
- Owned the analytics and optimization layer of the platform end to end, from production data extraction to deployed FastAPI services.
- Built Looker Studio dashboards on PostgreSQL data covering 600+ partner driving schools, giving the product team visibility into revenue, feature adoption, and churn signals.
- Diagnosed Angular performance regressions with Chrome DevTools and stack-trace profiling, cutting interaction latency 75% on average and 87% in the worst case.
- Authored the full internship report in Typst and an animated Manim defense presentation with live model metrics and algorithm walkthroughs.
Candidate self-assessment app & driving-hours predictor
A 3D cockpit self-assessment app that measures candidate readiness, feeding the ML model that predicts individualized driving-hours needs.
- Leak-aware feature engineering (Bayesian-smoothed region pass rates, code-to-conduite gap) feeding a HistGradientBoosting model benchmarked across families — R²=0.39, MAE=8.2h, +22% vs. baseline.
- Two-stage hybrid design: the ML base estimate is adjusted by a regulation-grounded score from a purpose-built candidate self-assessment app.
- That app centers on a Three.js interactive 3D cockpit for vehicle-familiarity evaluation, with cognitive mini-games (memory, procedural ordering, comprehension) replacing standard psychometric forms.
- 7-step wizard architecture in Angular with FR/AR internationalization.
Lesson scheduling optimizer
Constraint-programming engine that places driving lessons across instructors, vehicles, and availabilities — full horizon in under a second.
- CP-SAT model: boolean slot variables, weighted-sum quota constraints, no-overlap resource constraints, multi-objective (coverage, grouping, earliness).
- FastAPI microservice: full-horizon generation + single-event reschedule endpoints.
- Benchmarked CP-SAT vs OptaPlanner vs commercial ILP solvers to justify the choice.
Subscription churn prediction
Leakage-free churn model flagging at-risk driving-school agencies before they cancel — ROC-AUC 0.875.
- Leakage-free labeling: temporal cutoffs + renewal-chain reconstruction.
- Grouped CV + temporal holdout validation; segment-specific models.
- Actionable monthly risk score surfaced ahead of each agency’s renewal date.
Stack: Python, scikit-learn, OR-Tools CP-SAT, FastAPI, PostgreSQL, Angular, Three.js, Looker Studio, Typst, Manim