Technologies Dawap

On ne vend pas une stack. On construit des systèmes qui tiennent.

Symfony, API-first, Docker, Redis, RabbitMQ, MySQL, workers, cache, observabilité, CI/CD, sécurité et IA encadrée : chaque choix sert la production, pas la démonstration.

Doctrine technique

La bonne stack n’est pas celle qui brille. C’est celle qui reste compréhensible quand le projet grandit.

Chez Dawap, la technologie sert d’abord la stabilité du système : flux lisibles, dépendances maîtrisées, performance mesurée, sécurité intégrée et exploitation possible par une équipe qui n’a pas tout construit.

On aime les briques open source solides, mais on ne confond pas la maturité avec l’empilement. Une architecture doit être assez robuste pour tenir la production, assez simple pour évoluer, et assez documentée pour ne pas dépendre d’une mémoire orale.

Notre rôle est de choisir le bon niveau d’architecture pour le contexte : PoC, MVP, application métier, API critique, marketplace, outil interne ou plateforme à gros volumes. Le même projet n’a pas besoin du même socle au jour 1 et au jour 300.

Architecture Découper sans disperser

Modules, services, responsabilités et contrats API sont pensés pour évoluer sans casser tout le système.

Production Prévoir les incidents

Logs, monitoring, reprises, alertes, rollback et non-régression évitent de piloter le run à l’aveugle.

Performance Mesurer avant d’optimiser

Cache, workers, requêtes, assets et Core Web Vitals sont traités sur preuves, pas à l’intuition.

Sécurité Contrôler les accès

Droits, rôles, environnements, données sensibles et intégrations externes sont cadrés dès la conception.

Système cible

Une architecture lisible de bout en bout.

Le sérieux technique se voit dans la façon dont les briques se parlent, se surveillent et se réparent. On pense les flux avant de poser les frameworks.

Interfaces Front, back-office, portail client, dashboard, SEO technique et accessibilité.
API & domaine métier Symfony, PHP, contrats API, règles métier, droits, validations et documentation.
Intégrations SI ERP, CRM, PIM, WMS, paiement, logistique, marketplaces et services tiers.
Données MySQL, indexation, search, cache, migrations, exports et sources de vérité.
Infrastructure Docker, Nginx, environnements, sauvegardes, secrets, CI/CD et déploiements.
Asynchrone Redis, RabbitMQ, workers, jobs planifiés, retries, idempotence et reprises.
Observabilité Logs exploitables, alertes, métriques, traces, tableaux de bord et diagnostic.
Revue, tests, validation
Déploiement, rollback, monitoring
Run, correction, amélioration continue
Principes d’ingénierie

Ce qu’on regarde avant de choisir une brique technique.

Une technologie n’est bonne que si elle répond au niveau de risque du projet. On arbitre selon les volumes, le coût de maintenance, la criticité des flux, la maturité de l’équipe et la capacité à opérer le système.

API-first quand le SI est central

Contrats, webhooks, idempotence, retries, mapping, logs et supervision pour fiabiliser les échanges entre outils.

Asynchrone quand le flux doit respirer

Workers, queues, jobs planifiés et reprises pour éviter qu’un traitement lourd bloque toute l’expérience.

Performance dès la conception

Cache, requêtes, pagination, search, CDN, assets et Core Web Vitals sont intégrés avant la crise.

Sécurité et droits explicites

Rôles, permissions, SSO quand nécessaire, secrets, environnements et données sensibles ne sont pas traités en fin de projet.

Observabilité exploitable

Un incident doit pouvoir se comprendre : logs, alertes, traces, métriques et tableaux de bord donnent une lecture actionnable.

Documentation qui sert le run

On documente les contrats, les règles, les flux et les reprises pour qu’un système puisse vivre sans dépendre d’une seule personne.

Arbitrages

On adapte l’architecture au vrai niveau d’enjeu.

Le bon choix technique n’est pas le plus impressionnant. C’est celui qui donne assez de robustesse sans créer une dette d’exploitation inutile.

PoC ou test business Aller vite, prouver un usage, limiter la surface technique, garder une base propre si le projet continue. Architecture légère
Application métier Modéliser les règles, les droits, les workflows, les exports, les validations et la maintenance quotidienne. Socle durable
API critique Gérer les erreurs, les retries, l’idempotence, le monitoring, les quotas, la sécurité et la documentation. Contrats robustes
Marketplace ou gros catalogue Absorber offres, prix, stocks, commandes, recherche, exports, imports, exceptions et montée en charge. Flux industrialisés
Plateforme en croissance Prioriser scalabilité, observabilité, dette technique, automatisation, sécurité et migration progressive. Run pilotable
Tech radar Dawap

Des briques éprouvées, choisies pour leur capacité à durer.

Notre socle courant reste volontairement lisible : Symfony, PHP, Docker, MySQL, Redis, RabbitMQ, Nginx, CI/CD et outils de monitoring. Selon le projet, on ajoute search, workers avancés, data, IA, connecteurs ou briques cloud.

La règle : ne pas rendre une architecture plus complexe que le problème. On évite les microservices trop tôt, les dépendances opaques et les choix impossibles à maintenir par le client.

Socle backend

  • Symfony
  • PHP
  • API Platform si pertinent
  • Doctrine
  • Architecture modulaire

Infrastructure

  • Docker
  • Nginx
  • CI/CD
  • Environnements
  • Sauvegardes

Flux et données

  • MySQL
  • Redis
  • RabbitMQ
  • Workers
  • Search

Qualité et run

  • Tests ciblés
  • Logs
  • Monitoring
  • Alertes
  • Documentation
Quand ça devient sérieux

Les vrais sujets techniques apparaissent rarement dans une démo.

Ce sont les exceptions, les volumes, les intégrations, les reprises et les changements d’équipe qui révèlent la qualité d’une architecture. C’est là qu’on veut être bons.

SI existant

Brancher sans casser

ERP, CRM, PIM, WMS, e-commerce et marketplaces doivent rester cohérents. On identifie les sources de vérité, les formats, les erreurs possibles et les responsabilités.

Migration

Avancer progressivement

On peut remplacer, isoler ou moderniser par étapes : coexistence, redirections, imports, synchronisations, feature flags et plans de retour arrière.

Dette technique

Réduire sans bloquer

On distingue ce qui doit être corrigé maintenant, ce qui peut être encapsulé, et ce qui doit être surveillé pour garder une trajectoire réaliste.

Run

Rendre le système opérable

Logs, alertes, documentation, dashboards, exports et reprises permettent aux équipes de comprendre et d’agir sans attendre le développeur initial.

Sécurité

Protéger les accès et les données

Droits, rôles, SSO, secrets, flux sensibles et séparation des environnements sont traités comme des contraintes d’architecture.

Scalabilité

Monter en charge sans improviser

Cache, files, workers, indexation, pagination, séparation des traitements et monitoring aident à absorber la croissance.

IA et engineering

L’IA accélère notre delivery, mais elle ne remplace pas l’architecture.

On utilise des agents IA internes pour explorer plus vite, produire des variantes, documenter, générer des scénarios, accélérer certains développements et relire des zones de code. Mais le niveau de qualité vient de la revue, des conventions, des tests, de la sécurité et de la compréhension métier.

Notre approche est simple : l’IA doit augmenter l’équipe sans rendre le système opaque. Le code livré doit rester maintenable, testable, explicable et exploitable.

Agents IA encadrés

Accélération du développement, documentation, refactoring assisté et exploration, avec revue humaine systématique.

Qualité vérifiable

Critères d’acceptation, tests utiles, non-régression et vérifications ciblées sur les flux qui comptent.

Sécurité gardée en tête

Pas de dépendance magique : droits, secrets, données sensibles et intégrations restent dans un cadre maîtrisé.

Code explicable

Le résultat doit pouvoir être relu, maintenu et transmis. L’IA n’est utile que si elle laisse un système plus clair.

On parle concret

Vous avez une stack, des flux ou une plateforme qui doivent passer un cap ?

On peut qualifier vos contraintes, vos volumes, vos dépendances SI, vos risques de production et l’architecture la plus raisonnable pour avancer vite sans fragiliser l’existant.