Technologie

Des décisions techniques qui gardent données, intégrations et releases sous contrôle.

Le stack doit servir le travail que le système fera après le lancement : logique backend, interfaces frontend et mobile, contrats d’API, linked data, background jobs, infrastructure, observabilité et changements futurs plus sûrs.

Stack

Des outils choisis pour le travail de production

Nous équilibrons des écosystèmes open source durables et des outils de delivery modernes sur le backend, le frontend, le mobile, les API, les données, l’infrastructure et le delivery : Rails, Go, Python, JavaScript, TypeScript, React, Solid.js, SolidStart, Astro, Elixir/OTP, PostgreSQL, Redis, Docker, Linux, infrastructure cloud, REST, GraphQL, tRPC, JSON, linked data et OpenAPI.

Standards

Du code qui peut être exploité

Tests, visibilité des background jobs, déploiement, monitoring, documentation, clarté du workflow et gestion des erreurs font partie du build dès le début.

Architecture

Des frontières nommées tôt

L’architecture doit réduire le risque et faciliter le changement. Nous rendons visibles l’ownership des données, les contrats d’API, les frontières d’intégration et les contraintes de migration avant qu’ils disparaissent dans le code.
  • Backend et API
  • Frontend et mobile
  • Données et linked data
  • Docker, Linux et cloud
  • Workflows AI/LLM

Calme technique

Les choix technologiques devraient rendre la vie avec la production plus simple.

Un stack n’a de sens que s’il peut être compris, testé, maintenu, surveillé et changé. Le travail n’est pas de faire passer des données par une API une fois ; c’est de garder le flux fiable quand arrivent le volume, les pannes et les cas limites.

Architecture lisible

Frontières, dépendances, contrats de données et compromis sont nommés en clair, pas enfouis dans le détail d’implémentation.

Habitudes de production

Tests, queues, monitoring, déploiement et gestion des pannes font partie du build, pas d’une réflexion après coup.

De la place pour changer

Nous préférons des systèmes qui évoluent par migrations et petits releases plutôt que de transformer chaque besoin nouveau en rewrite.

Nous nous appuyons sur des écosystèmes matures comme Ruby on Rails quand cette maturité réduit le risque, et sur des outils modernes quand ils résolvent clairement le problème. Le choix suit le travail de production, pas la mode.

Carte de capacités

Une carte de capacités organisée par la couche qui porte le risque.

Chaque couche nomme la pression qu’elle porte souvent et le mouvement qui la résout : workflow, UX, contrat API, modèle de données, queue, déploiement, infrastructure ou pipeline IA.

De la couche au delivery

Quand la couche risquée est visible, le travail a besoin d’un chemin sûr vers la production.

Les choix technologiques comptent quand ils deviennent une séquence de delivery : cartographier le workflow, valider la tranche risquée, livrer en incréments utiles, documenter les décisions et garder la production observable après le release.

Quand la couche risquée est visible, le travail a besoin d’un chemin sûr vers la production.
PATH
Voir le processus de delivery
  1. Tranche validée
  2. Petit release
  3. Rollout observable