CISSTECH
Pièce nº 005Trempé

Le premier vrai client, la première pièce forgée de zéro.

Encore étudiant, j'ai livré à un gestionnaire de copropriété une application complète : Vicinity, l'outil qui relie les résidents et leur syndic, sur le web, iOS et Android à partir d'un seul code. Ma première vraie mise en production, et l'école où j'ai appris les patterns qui me servent encore.

Période
2015 · 2018
Format
Forfait
Rôle
Conception · développement
Nature
App cross-platform
Front
Ionic · Angular · Android (Java) · Swift
Back
NestJS
Infra
Firebase
Outillage
Xcode · Nx
Le contexte

Relier des résidents et leur syndic

Une copropriété, c'est deux mondes qui se parlent mal : des résidents qui veulent signaler un problème, suivre les charges, réserver un espace commun, et un gestionnaire qui reçoit tout par téléphone et par e-mail. Le besoin était de mettre les deux dans la même application, sur tous les écrans, sans multiplier les développements.

J'étais encore à l'université. Ce n'était pas un projet d'école : un vrai client, un vrai budget, une vraie obligation de livrer. C'est la pièce qui a fait basculer le goût du code en métier.

L'intervention

Un seul code, trois plateformes, la prod comprise

Web, iOS et Android à partir d'une base unique en Ionic et Angular, une API NestJS et Firebase pour le temps réel et les notifications. Tout, de la conception au déploiement sur les stores : je n'ai pas seulement écrit l'application, je l'ai mise en production et maintenue.

Livrer seul un produit multi-plateforme quand on débute, ça oblige à trancher : ce qui est essentiel, ce qui attendra, ce qui doit tenir dans le temps. La meilleure formation que je pouvais recevoir.

À quoi ça ressemble

Résidents et syndic, dans la poche

Le fil d'actualité de la copropriété
La fiche d'un immeuble
Les notifications en temps réel
Les services aux résidents
Le thème dynamique de l'application
La signature technique

L'école des patterns

Trois problèmes concrets ont posé des réflexes que je garde. L'offline : une app mobile doit rester utile sans réseau, donc synchroniser plutôt que dépendre. Le temps réel : un signalement déposé par un résident apparaît chez le gestionnaire sans qu'on recharge quoi que ce soit.

La modularité multi-tenant : chaque copropriété activait sa propre liste de fonctionnalités, à la carte. Il fallait donc un système de droits modulaire, où les permissions se composent selon les modules souscrits plutôt que d'être semées en dur dans le code. Des patterns appris ici sur le tas, que je retrouve aujourd'hui dans chaque architecture propre.

Un produit à forger de zéro ?
Voir la démo