Aller au contenu

SNCF Connect & Tech, depuis mars 2023

App marque blanche de contrôle des titres de transport

L’application des contrôleurs dans les trains : scan des titres, régularisation, verbalisation. Clean Architecture, stratégie de tests, contributions backend AWS et TypeScript.

contrôleurs équipés à terme
4 500

Contexte

Les contrôleurs de train vérifient que chaque voyageur a un titre de transport valide, et régularisent ou verbalisent quand ce n’est pas le cas. Tesmo Contrôle leur donne ces outils directement sur smartphone, avec pour objectif d’équiper à terme près de 4 500 contrôleurs en France.

Le produit est pensé en marque blanche : un même socle doit servir plusieurs transporteurs et autorités organisatrices de la mobilité, chacun avec son identité visuelle, ses règles de gestion et ses parcours.

Ce que fait l’application

  • Connexion de l’agent et prise de service, en choisissant un contrôle à quai ou à bord.
  • Lecture du titre de transport par code 2D ou NFC, via un lecteur optique ou l’appareil photo du téléphone.
  • Interrogation du compte client quand le titre est dématérialisé sur un compte billettique.
  • Régularisation ou verbalisation du voyageur, avec encaissement.
  • Historique de la journée et fin de service.

Les enjeux techniques

  • Un seul code, plusieurs clients : la personnalisation par exploitant (charte, règles métier, parcours) doit rester de la configuration, pas des branches de code qui divergent.
  • Du matériel hétérogène : plusieurs modèles d’appareils et de systèmes, avec ou sans lecteur optique, doivent offrir la même expérience.
  • La fiabilité sur le terrain : l’application est un outil de travail quotidien, utilisé dans un train, face au voyageur. Une anomalie se voit tout de suite.

Mon rôle

Recruté comme développeur Flutter senior, dans une équipe de 4 développeurs Flutter, 2 développeurs backend et 1 PO, en agile. J’ai mis en place la Clean Architecture de l’application, défini la stratégie de tests, mené les études techniques en amont des développements et participé au développement des écrans.

Mon périmètre s’est ensuite élargi au backend : développement de services en TypeScript sur AWS, suivi de la production et de son monitoring, analyse des anomalies remontées du terrain. J’assure aussi la revue des merge requests et l’accompagnement des nouveaux arrivants, et j’ai contribué à faire évoluer les pratiques de l’équipe, notamment dans l’usage des outils d’IA pour le développement.

Apport

Je m’intègre à une équipe existante, je monte en charge en quelques jours, et je contribue autant à la qualité collective (revues, tests, architecture) qu’à mes propres tickets. Sur la durée, je prends en charge toute la chaîne, de l’écran mobile jusqu’à la production.

Stack

  • Flutter
  • Dart
  • Clean Architecture
  • Tests automatisés
  • AWS
  • TypeScript
  • CI/CD
  • Marque blanche

Ce qu’ils en disent

  • Recruté comme développeur Flutter, il a rapidement élargi son périmètre pour devenir un véritable développeur fullstack, avec une maîtrise de toute la chaîne du projet, notamment sur AWS. […] Fiable, engagé, polyvalent et toujours tourné vers les solutions, c’est un profil que je recommande sans hésitation !

    Remy T.Lead développeur, SNCF Connect & Tech,
  • Patrick maîtrise parfaitement la stack et apporte une véritable rigueur technique aux problématiques d’architecture comme aux choix d’implémentation au quotidien. […] Il prend toujours le temps d’accompagner les nouveaux membres de l’équipe, de partager son expertise et de transmettre les bonnes pratiques.

    Jérémy F.Lead développeur Flutter, Freelance,

Un projet en tête ?

Écrivez-moi ou prenez directement rendez-vous pour un call pour m’expliquer votre projet. C’est gratuit.

Réserver un créneau gratuit (nouvel onglet)

Vos informations servent uniquement à vous répondre.

Autres réalisations

Lead tech de l’app mobile Lunii

Lunii, 2021 à 2023

Architecture de l’app de la Fabrique à Histoires, mentorat de 2 juniors, coordination avec le backend et le firmware, transfert USB vers l’appareil sur Android.

  • Flutter
  • iOS
  • Android
  • Bluetooth
  • USB

Angers Map

Projet personnel, depuis 2019

Bus et tramways en temps réel, parkings, vélo et marchés sur une seule carte. Conçue, développée, publiée et maintenue seul.

téléchargements
1 000+
sur le Play Store
4,3/5
  • Flutter
  • TypeScript
  • PostgreSQL
  • Géolocalisation
  • Open data

Plateforme e‑commerce et e‑learning

Tityvillus Academy, depuis 2024

Parcours d’achat Stripe, modules de formation et CMS headless pour que l’équipe gère ses contenus sans développeur.

  • Next.js
  • TypeScript
  • Stripe
  • Strapi
  • Architecture headless