Fond indigo sombre avec trois lumières douces violette, corail et cyan — une par plateforme

Développeur Cross-Platform Freelance

Juil 2025 - Déc 2025

Auto-entrepreneur | Juillet 2025 - Décembre 2025 | Toronto, ON

Pause carrière entre General Motors (juin 2025) et PolarisMail (janvier 2026) — menée comme un sprint produit autonome en ingénierie cross-platform.

Aperçu

Plutôt que de faire une simple pause entre deux postes, je me suis donné le brief qu’on confie habituellement à toute une équipe : amener un produit de l’idée à la production, seul. Pendant six mois, j’ai conçu, développé et opéré une application grand public cross-platform pour les amateurs de fromage — une seule base de code Kotlin tournant sur Android, iOS et desktop — ainsi que le backend, l’infrastructure et le pipeline de livraison derrière. L’expertise Kotlin Multiplatform construite ici a mené directement à mon poste actuel de développeur senior KMP.

Responsabilités et réalisations clés

Ingénierie produit cross-platform

  • Architecture de l’application avec Kotlin Multiplatform (KMP) et Compose Multiplatform (CMP) : une implémentation, trois plateformes, zéro divergence de fonctionnalités
  • Pari précoce sur la nouvelle génération de la stack Android — Navigation 3, Paging 3, Metro DI, Ktor Client, Coil, Haze — en adoptant ces bibliothèques dès leur sortie, pour forger le retour d’expérience que la plupart des équipes n’ont pas encore
  • UI adaptative et au rendu natif sur tous les formats, du téléphone à la fenêtre desktop redimensionnable

Full-stack de bout en bout

  • Conception et développement de l’API REST du produit avec Kotlin/Spring Boot sur PostgreSQL
  • Backend conteneurisé avec Docker et déploiement auto-hébergé — en assumant l’ops, pas seulement le code

Rigueur d’ingénierie en équipe d’un

  • Mise en place d’un pipeline CI/CD GitHub Actions exécutant tests unitaires et tests de captures d’écran Paparazzi à chaque changement : la qualité est garantie par le pipeline, pas par la mémoire
  • Conception et mise en ligne de ce portfolio également : un site bilingue Hugo déployé sur Cloudflare Pages avec un middleware de sécurité sur mesure
  • Utilisation des CLIs Claude Code et Mistral Vibe comme assistants d’appoint — volontairement cantonnés à un rôle de support, l’objectif étant d’apprendre les frameworks et bibliothèques par la pratique plutôt que de déléguer cet apprentissage

Stack Technique

Langages
Kotlin
Frameworks
KMPCMPSpring Boot
Backend
PostgreSQLDockerdéploiement auto-hébergé
Bibliothèques
Navigation3Paging3Ktor ClientCoilHazeMetro DI
CI & Tests
GitHub ActionsPaparazziTests unitaires
Outils IA
Claude CodeMistral Vibe (usage léger)
Web
HugoCloudflare Pages

Défis et Solutions

Défi 01 Livrer une seule UI sur Android, iOS et desktop sans se contenter du plus petit dénominateur commun
Solution
Partage de l’intégralité de l’UI avec Compose Multiplatform tout en la gardant adaptative par format, avec des tests de captures d’écran Paparazzi pour verrouiller le rendu cross-platform
Défi 02 Parier sur des bibliothèques toutes récentes (Navigation 3, Metro DI) avec très peu de retours de la communauté
Solution
Lecture directe du code source et des notes de version, prototypage intensif, et isolation de chaque bibliothèque derrière des frontières d’architecture propres pour pouvoir remplacer n’importe quel pari à faible coût
Défi 03 Couvrir seul le produit, le mobile, le backend et l’infrastructure
Solution
Automatisation du travail d’équipe : services Spring Boot conteneurisés, déploiement auto-hébergé et pipeline GitHub Actions validant chaque changement

Impact

  • Livraison en solo de ce qui demande habituellement une équipe pluridisciplinaire : conception produit, mobile, backend et infrastructure
  • Expertise KMP/CMP de niveau production acquise en avance de phase — le tremplin direct vers mon poste actuel de développeur senior Kotlin Multiplatform
  • Démonstration d’une vraie polyvalence full-stack, de l’UI Compose aux services Spring Boot dockerisés sur infrastructure auto-gérée