De 1 million à 1 milliard : Les principes clés pour gérer la croissance sereinement — partie 3
Nous voici arrivés au terme de cette épopée, enfin au début du terme !
Si vous n’avez pas lu le début de notre aventure technique, je vous conseille de commencer par lire le premier et le deuxième article avant celui-ci.
Comme je le disais dans l’article précédent : Il est temps de rembourser notre dette technique.
Notre histoire continue donc avec une équipe technique solide et talentueuse prête à affronter des défis à sa hauteur.
La Conquête du Sommet
Notre team de super héros prête à tout pour gravir les sommets
À cette époque on récupère une solution HelloAsso vieillissante avec un objectif clair et simple :
- réduire notre dette technique
On commence par yoyoter pendant quelques semaines sur la question
Est-ce qu’on restart from scratch ?
On finit par aboutir sur un non.
5 ans plus tard, je dirai que c’était une mauvaise décision car la migration n’est pas 100% terminée et nous avons hérité de beaucoup de lourdeur du passé. Mais aurions-nous été meilleurs from scratch ? Je n’en suis pas sûr non plus !
Ce qui est important c’est que nous ayons fait ce choix par consensus.
On doit donc réfléchir à un plan pour améliorer notre solution.
On commence donc par s’enfermer pendant 3 jours pour mettre en place ce que l’on appellera HelloAsso.Core, il s’agit de notre framework interne gérant l’accès à la donnée (DAL) et ce que l’on peut qualifier de couche service.
On organise tout ça selon le pattern Command avec les fameuses CommandRequest et CommandResponse et on se pose des contraintes de qualités très importantes, grâce au test unitaire notamment. On pense également à anticiper les évolutions futures :
- .Net Core en développant tout ça en .Net Standard
- L’utilisation d’une couche front et déployant une nouvelle API et en arrêtant l’utilisation de ASP.NET MVC
On est satisfait du résultat et en termes de retour d’expérience cette architecture ne sera pas remise en question, ça valait donc largement l’investissement.
Voilà pour la partie code, reste maintenant à mettre en place une structure solide pour délivrer de la feature.
On s’oriente tout naturellement vers la création de feature team en se basant sur le modèle proposé par spotify et ses fameuses squads.
Ce framework est pratique car il permet la subdivision de façon native et n’est donc pas une vision statique de l’organisation ce qui est assez pratique dans une start-up en hyper croissance. Je vous dévoile tout de suite l’ensemble de l’évolution jusqu’à aujourd’hui.
On voit très clairement les phases de développement, avec la multiplication des squads puis de rationalisation des périmètres avec des suppressions ou changement d’intitulé. Pour aboutir en 2023 sur une organisation par domaine, un domaine regroupant au minimum 2 squads. 2024 hérite des méthodes shape-up & safe mettant au centre des domaines des équipes “enablers” dont le but est d’aider les équipes à effectuer leurs missions dans les meilleures conditions.
Je ne vous cache pas qu’une telle organisation, même si elle est dans le modèle de ce qui se fait partout, prend beaucoup de temps à mettre en œuvre et réside surtout dans le juste dimensionnement et la bonne affectation des personnes et des périmètres.
Je vais prendre l’exemple de l’équipe Admin Sys -> DevOps -> Infra & Cloud mais c’est vrai pour l’ensemble des équipes étant maintenant enablers.
Lors de la mise en place des squads nous avons fait les bons élèves et mis l’ensemble des compétences dans les squads. Celà a eu un effet bénéfique sur l’alignement au début mais un autre très néfaste sur la stabilité de notre infra. On a donc pris la décision de mettre en place une équipe DevOps dédiée dans le but de se concentrer sur notre infra et de la stabiliser. 2 mois après les résultats étaient là. Aujourd’hui nous avons renommé cette équipe en Infra & Cloud pour porter un message fort : le DevOps est l’affaire de tous !
L’équipe est donc bien toujours à part et se focalise plus sur l’infra et à une rôle de formation de l’ensemble de l’équipe tech aux pratiques DevOps.
La Transformation
Avec une base de code et une organisation solide on ne pouvait que se mettre en position d’accélérer.
Comme les plus attentifs d’entre vous l’auront vu dès 2021 nous commençons à travailler sur notre établissement de paiement (EP). Seulement avec les personnes en place c’est très compliqué d’être partout.
Fin 2022 on boucle donc une nouvelle levée de fonds 15M et comme on le voit sur notre organisation c’est à partir de ce moment là que l’on met en place une stratégie par domaine car on a maintenant une équipe tech & produit de 60 personnes.
L’organisation et l’architecture sont donc à la hauteur de nos ambitions ce qui nous permet d’adresser des projets qui avant n’étaient tout simplement pas possible à adresser convenablement.
Je pense notamment à la mise en place d’une logique constante de réduction des coûts de notre infra et plus récemment à la mesure de notre bilan carbone et l’élaboration d’un schéma directeur du numérique responsable.
La Légende
Et maintenant de quoi sera fait l’avenir ?
Comme on l’a vu notre organisation est à l’épreuve du scale et ne devrait pas évoluer de façon très importante. L’architecture mise en place est fiable et permet d’intégrer de l’innovation facilement. Ce qui va changer principalement c’est la version des technologies utilisées et que l’on fait suivre en fonction de l’actualité.
Au niveau de l’infrastructure il y a aussi quelques transformations et migrations à terminer mais l’ensemble est là encore très stable. L’idée étant surtout de respecter ce que l’on a mis dans notre schéma directeur.
Si on parle de l’avenir on va donc plutôt parler de produits. Les deux principaux étant notre établissement de paiement et notre API.
Notre établissement de paiement est un choix stratégique depuis 2021 pour offrir à nos associations encore plus de facilité dans la réception de leur paiement.
Notre API est aujourd’hui utilisé dans beaucoup de cas d’utilisation mais on pense pouvoir aller beaucoup plus loin et offrir encore plus de fonctionnalités aux intégrateurs de nos solutions.
J’espère que cette suite d’articles vous a plu. N’hésitez pas à régir.