Applications web sur mesure au Maroc

Une application sur mesure existe parce que le logiciel sur étagère ne colle pas au flux. Je modèle ce flux d’abord, puis je l’implémente en API Laravel et interface React.

Produits typiques : outils d'exploitation interne, portails clients, plateformes multi-tenant, et la colle entre un ERP existant et un nouveau canal. FRIGO SYS et AnyWare sont de ce type de travail : chargé de domaine, utilisé tous les jours, pas une démo.

Je ne vends pas un catalogue de modules. Si un produit SaaS couvre déjà 90 % du besoin, je vous dirai de l'acheter. Le sur-mesure est pour les 10 % restants qui font vraiment tourner l'entreprise.

L'étape de découverte est celle où l'on trouve les vraies entités : un lot, une palette, une ligne de facture, un statut de job — les noms et verbes de comment l'entreprise fonctionne réellement, avant que tout ça devienne une table de base de données. Se tromper ici coûte cher plus tard, parce que chaque écran et chaque rapport finit par être construit sur ce que les entités se sont avérées être.

Anybot et un système de tracking e-mail sont le versant automatisation et infrastructure de la même idée : un logiciel sur mesure construit parce que le flux exact — automatisation navigateur avec reprise et logs, ou tracking par pixel avec une réponse sous 100 ms — n'existait pas comme produit prêt à l'emploi au prix ou à la forme dont le besoin avait besoin.

Problèmes métier

  • Un logiciel sur étagère qui combat l'entrepôt, la flotte ou la finance, forçant le personnel à contourner l'outil plutôt qu'à l'utiliser.
  • Des tableurs qui font une vraie opération jusqu'à la casse, généralement au pire moment — fin de mois, grosse commande — où la panne coûte le plus cher.
  • Un précédent « sur-mesure » qui est en réalité un tas de scripts non maintenus que personne dans l'équipe actuelle ne comprend ni n'ose toucher.
  • Un flux réparti sur trois outils différents avec des données ressaisies à la main entre eux, si bien que la « source de vérité » est en fait le dernier outil que quelqu'un a consulté.
  • Un précédent développement sur mesure sans tests ni documentation, si bien que chaque changement est un pari sur ce qu'il pourrait casser d'autre.
  • Un flux qui marche pour le cas nominal en démo mais n'a aucun comportement défini pour les cas limites — un article retourné, une commande annulée — qui composent en réalité une part réelle des opérations quotidiennes.
  • Aucun plan pour ce qui se passe quand la personne qui comprend le système sur mesure part, si bien que le savoir institutionnel s'en va avec elle.

Processus de développement

  1. Découvrir le flux. Modéliser les entités du terrain. Livrer un module mince — un seul écran réel faisant un seul travail réel — avant de construire le reste.
  2. API Laravel, UI React, production sur Linux — comme FRIGO SYS et AnyWare, choisis parce que c'est ennuyeux de la façon dont l'infrastructure doit être ennuyeuse.
  3. Livrer un système que l'équipe du client — ou le prochain développeur — peut vraiment lire, avec un modèle de données nommé d'après le vocabulaire propre de l'entreprise, pas des noms génériques de framework.
  4. Remplacer d'abord la ressaisie manuelle entre outils par une source de vérité unique, même avant de peaufiner l'UI, puisque c'est là que le vrai temps se perd.
  5. Écrire des tests pour les parties du système où un bug silencieux coûterait vraiment de l'argent — facturation, stock, permissions — même quand le reste de l'UI n'est pas entièrement couvert.
  6. Cartographier les cas limites — retours, annulations, corrections — avec le même soin que le cas nominal, puisque dans la plupart des entreprises réelles ils ne sont en fait pas rares.
  7. Documenter le modèle de domaine du système et les décisions clés dans le cadre de la livraison, pas après coup, pour que le savoir ne parte pas quand une personne part.

Ce que vous obtenez

  • Un logiciel calé sur le vrai fonctionnement de l'entreprise, au lieu que l'entreprise remodèle son process pour coller au logiciel.
  • Un seul responsable pour tout le système, pour qu'un rapport de bug ne rebondisse pas entre la file de support d'un éditeur SaaS et une équipe interne qui ne voit pas l'autre moitié du problème.
  • Une seule source de vérité plutôt que les mêmes données saisies dans trois outils en espérant qu'elles restent synchronisées.
  • La confiance de faire évoluer le système, parce que les parties où un bug coûterait de l'argent sont réellement testées.
  • Des cas limites — retours, annulations, corrections — gérés par le système au lieu d'être contournés à la main parce que personne ne les avait modélisés.
  • Un savoir institutionnel qui survit à un changement d'équipe, parce que le modèle de domaine et les décisions clés sont documentés, pas seulement mémorisés.

Projets choisis

FAQ

How is this different from full stack development?

Full stack is the delivery model (backend, UI, production). Custom web applications is the product type: software shaped around one company’s process rather than a generic website.

Do you estimate before writing code?

Yes. A short discovery pass on the workflow is cheaper than building the wrong entities. I would rather decline a fit than invent a timeline.

Parlons de votre projet →