📗 Engineering Handbook

Introduction

Ce handbook dĂ©finit les standards d’ingĂ©nierie appliquĂ©s Ă  l’ensemble de nos projets logiciels. Il sert de rĂ©fĂ©rence commune pour tous les dĂ©veloppeurs, qu’ils interviennent sur le frontend, le backend ou le devops.

L’objectif n’est pas de sur-documenter, mais de :

  • Clarifier la maniĂšre dont nous construisons les logiciels

  • Garantir une qualitĂ© constante entre les projets

  • Faciliter la collaboration et la maintenance

  • AccĂ©lĂ©rer l’onboarding des nouveaux dĂ©veloppeurs


PortĂ©e du Handbook

Ce document couvre :

  • Les standards de dĂ©veloppement frontend

  • Les standards de dĂ©veloppement backend

  • Les standards de dĂ©veloppement devops

  • Les conventions communes (outils, workflow, qualitĂ©)

Il ne remplace pas la documentation projet spécifique, mais fournit un socle commun obligatoire.


Philosophie GĂ©nĂ©rale

Nos standards reposent sur des principes simples :

  • Utiliser les conventions natives des frameworks avant d’introduire des abstractions

  • Favoriser un code lisible et explicite

  • PrivilĂ©gier des structures simples et Ă©volutives

  • Éviter la complexitĂ© inutile

  • Construire des systĂšmes faciles Ă  maintenir par une autre Ă©quipe


Structure du Handbook

Le handbook est organisé en documents distincts :

📘 Standards de DĂ©veloppement Frontend

  • BasĂ©s sur Next.js et l’écosystĂšme React

  • Organisation du code, conventions, bonnes pratiques UI

  • Gestion de l’état, des erreurs et des performances

📕 Standards de DĂ©veloppement Backend

  • BasĂ©s sur NestJS

  • Organisation par modules, services et controllers

  • SĂ©curitĂ©, gestion des donnĂ©es et exploitation

📗 Standards de DĂ©veloppement Devops

  • BasĂ©s sur les standards devops (voir la page devops)

Chaque document doit ĂȘtre lu et appliquĂ© indĂ©pendamment, selon le pĂ©rimĂštre du projet.


Application des Standards

Ces standards sont :

  • Applicables Ă  tous les nouveaux projets

  • Progressivement appliquĂ©s aux projets existants

  • UtilisĂ©s comme rĂ©fĂ©rence lors des code reviews

Toute dĂ©rogation doit ĂȘtre justifiĂ©e techniquement et documentĂ©e.


ResponsabilitĂ©ïƒ

La qualité du code est une responsabilité collective.

Chaque développeur est tenu de :

  • Respecter ces standards

  • Signaler les incohĂ©rences ou points d’amĂ©lioration

  • Contribuer Ă  l’évolution du handbook lorsque nĂ©cessaire


Évolution du Handbook

Ce document est vivant.

Il évolue en fonction :

  • Des retours terrain

  • Des contraintes projets

  • De l’évolution des frameworks et outils

Les modifications doivent ĂȘtre discutĂ©es et validĂ©es avant adoption.