Remplacer un ERP des années 90. Livrer un vrai produit.
Les transitaires aériens font encore tourner leurs entrepôts sur HFSQL/MALTA3 — un ERP Windows-only que personne ne veut toucher. Malta en est la refonte from scratch.
Le brief était simple, le scope ne l'était pas : reconstruire l'ERP en SaaS multi-tenant moderne — opérations entrepôt, IAM, mobile, douanes, facturation — et le livrer comme un produit cohérent.
J'ai rejoint comme spécialiste front-end. J'ai fini par owner la direction artistique, le design system, l'UX/UI de chaque module, et progressivement contribuer au back-end.
DDD, hexagonal, Turborepo.
Sept apps partagent quinze packages — dont un @malta/design-system custom. Les frontières sont enforced par ESLint, pas par Slack.
L'infra tourne sur Kubernetes (Scaleway), autoscalé avec KEDA sur SQS, observable via Grafana + OpenTelemetry, provisionné par Terraform.
50+ composants, une seule voix.
Le design system n'est pas une lib — c'est le contrat qui rend la scale possible.
J'ai construit @malta/design-system avant que la première page soit écrite : tokens, primitives, contrats motion, specs accessibilité. Le plus dur était d'imposer le réemploi — chaque Sidebar, Sheet, OTP, Chart devait sortir du système.
Le résultat : un produit qui ressemble à un produit unique, même avec sept contributeurs en parallèle.
Un assistant qui livre des actions, pas juste du texte.
Bill stream les réponses et déclenche des actions UI dans le même souffle. La conversation est l'UI.
Bill tourne sur Groq + Llama 4 Scout avec streaming SSE, rate limiting, et tool-calling structuré. Un user demande "Affiche les expéditions en transit de CDG vers DXB cette semaine" — Bill stream la réponse et met à jour les filtres du tableau en temps réel.
- Next.js 15
- React 19
- TypeScript
- Tailwind v4
- shadcn/ui
- Expo SDK 54
- React Native
- NativeWind
- NestJS
- Prisma
- PostgreSQL
- SQS
- Groq SDK
- Kubernetes
- Terraform
- KEDA
- OpenTelemetry
Une app entrepôt qui vit dans la poche.
Les opérateurs ne sont pas assis à un bureau. Ils marchent dans les racks, scannent des codes-barres, signent des bordereaux. L'app mobile est faite pour eux.
Construite sur Expo + NativeWind, design system mirroré, UX one-handed, tap targets glove-friendly, offline-first. Sortie sur le Play Store.
Ce qui a été livré.
Au-delà du front-end.
Malta m'a forcé à arrêter de penser comme un spécialiste front-end et à commencer à penser comme un product engineer. Les lignes se brouillent à cette échelle — et c'est tout l'intérêt. Owner le design system comme un contrat non-négociable est ce qui a fait que ça marche.
↳ Malta · 2024 — 2026Brand, design et code sont le même produit, écrit dans des langues différentes.