Contact
Illustration de la compétence Développement Fullstack - Jose DA COSTA
Compétence techniqueDéveloppement logiciel

Développement Fullstack

Onze ans sur la chaîne PHP (Joomla, Zend, Symfony, Magento) plus Java SE / Spring au Master, et stack moderne Node / TypeScript / Next.js en CTO. Profil fullstack polyglotte capable de remettre les mains dans le code aux moments critiques.

Confiance personnelle
Expert5/5
FondamentalEn développementOpérationnelAvancéExpert
Évolution de cette compétence dans le temps

Chaque segment représente une période (parcours ou réalisation) où la compétence a été mobilisée. La couleur et la taille du point final reflètent le niveau atteint sur cette période.

Ma définition

Le développement fullstack, c'est pour moi la polyglossie nécessaire à un SaaS de production : backend, frontend, scripting, et la capacité à choisir le bon outil pour chaque couche. Je couvre la chaîne PHP (Joomla, Zend, Symfony 2-7, Magento 1-2), la JVM (Java SE, Spring, Hibernate, Kotlin Android) et l'écosystème TypeScript moderne (Node, Next.js 16, React 19, Prisma 7, Drizzle, Bun). C'est le profil polyglotte qui permet à un CTO de remettre les mains dans le code de son équipe, pas pour réécrire à leur place, mais pour défendre les revues de code, soulager les pics et arbitrer les choix techniques senior.

Mon rythme actuel mêle code quotidien (lignes produit ACCENSEO, 234 K lignes en solo sur le SaaS comptable, packages OSS comme tailwindcss-obfuscator) et revue mensuelle (pair-programming avec les alternants, revues senior sur les codebases clients). 31 références techniques + 15 mobile dans le portfolio (Top 3 en fréquence). La polyglossie n'est pas un objectif esthétique : c'est la conséquence de 18 ans de rôles successifs qui ont chacun ramené leur stack. Joomla 1.5 chez ABDC, Zend Framework chez Pluxnet, Magento 1.10 chez Smile, Symfony 3-5 chez Pichet, Next.js 16 chez ACCENSEO.

Le grand basculement de 2026, c'est que le coût d'écriture du code a chuté avec l'IA, pas celui de lecture. Stack Overflow le décortique dans Why demand for code is infinite: How AI creates more developer jobs : avec 80 %+ d'adoption des AI coding tools chez les développeurs professionnels et un usage quotidien autour de 51 %, la couche d'agents génère du code à la chaîne - mais c'est la lecture critique, le system design et la revue d'architecture qui sont devenus le différenciant. Le CTO qui review un codebase TypeScript + Prisma + Drizzle en pair-programming avec Claude Code livre plus vite que celui qui délègue. Developpez.net relaie l'enquête côté France dans Stack Overflow Developer Survey 2025 : la place de l'IA chez les développeurs français, avec 41 % du code généré par IA déjà productif au quotidien et un débat sur la confiance qui reste vif.

Mes éléments de preuve

Réalisation

Anecdote 1 : Livrer en solo 234 K lignes sur le SaaS comptable

Sur le SaaS comptable d'ACCENSEO en 2025-2026, j'étais le seul développeur humain face à un produit qu'aucune équipe en early-stage ne livre habituellement seule : comptabilité française, fiscalité, banque (Open Banking DSP2), facturation, conformité e-facturation 2026-2027, assistant IA. La cadence à tenir était brutale : si je tombais sous 8 K lignes par mois pendant 14 mois, le produit n'était pas prêt avant la fin du mandat e-facture.

J'ai opéré chaque jour un cycle full-stack complet : Next.js 16 + React 19 + TypeScript côté UI, Prisma + PostgreSQL côté data, Better Auth avec MFA (email, TOTP, SMS), AI SDK pour l'orchestration multi-fournisseurs (OpenAI, Claude, Gemini), Stripe pour les abonnements SaaS, et un microservice Node.js dédié à la récupération automatique de factures. J'ai géré moi-même l'Open Banking DSP2 sur 3 providers en parallèle (GoCardless/Nordigen, Bridge, Qonto), l'EDI Teledec pour les téléclarations TVA / IS / CFE / DAS2 / PAS, et une extension Chrome pour le remplissage automatisé des formulaires sur impots.gouv.fr. Le binôme avec Claude Code a porté l'implémentation à 80-85 %, mais chaque fichier a été passé en revue, chaque calcul fiscal validé par script, chaque feature testée en non-régression.

234 K lignes livrées en solo, 42 features autonomes, 382 routes API, 91 modèles Prisma, 6 rôles différenciés, et la plateforme tournait fin de cycle prête pour la mise en production avec la conformité e-facturation 2026-2027 atteinte avant l'échéance réglementaire.

Ce qui m'a frappé sur ce projet, c'est que rester opérateur en CTO change tout : sans la pratique fullstack quotidienne, je n'aurais jamais cadré un domaine régulé en quelques mois. C'est cette posture-là - CTO qui code encore - que je veux conserver sur le prochain rôle scale-up, parce que c'est ce qui me donne le droit de challenger les décisions techniques de mes seniors plutôt que de les déléguer.

Réalisation

Anecdote 2 : Publier le package OSS tailwindcss-obfuscator

Fin 2025, j'avais besoin d'un outil d'obfuscation Tailwind v4 pour plusieurs missions ACCENSEO et l'unique alternative existante était cassée. Plutôt que de bricoler un contournement client par client, j'ai décidé d'en faire un produit OSS - parce qu'un package npm bien fait coûte moins cher à maintenir qu'une dizaine de patches custom. La fenêtre était courte : 6 semaines avant que la communauté ne se rabatte sur des hacks.

J'ai monté un monorepo TurboRepo avec pnpm workspaces pour piloter 25 modules internes, 5 plugins bundlers (Vite, Webpack, Rollup, esbuild, module Nuxt) partageant le même moteur central, et un CLI Commander.js pour les usages hors framework. La stack : TypeScript 5.7, Babel AST pour parser JSX/TSX/Vue/Svelte/Astro/Qwik, PostCSS pour transformer le CSS compilé, magic-string pour préserver les sourcemaps, Vitest pour les 295 tests unitaires + e2e, et VitePress pour la documentation. L'ensemble est typé strict, build par tsup avec sourcemaps complets.

82 K lignes de TypeScript publiées sur npm en 6 semaines, 10 frameworks supportés, détection automatique de Tailwind v3 vs v4, premier outil compatible Tailwind v4 sur le marché. Adopté par des équipes externes dès les premières semaines, mentions organiques dans les newsletters tech.

Ce package, c'est ce qui m'a maintenu affûté sur le TypeScript moderne en dehors du temps client. Je me suis fixé la règle de livrer au moins un OSS par an pour la même raison : un CTO qui ne publie plus de code finit par perdre la lecture quotidienne. Et c'est aussi un signal de crédibilité concret quand je discute d'un rôle scale-up - on me demande l'OSS, pas le CV.

Réalisation

Anecdote 3 : Refonte Magento Enterprise full-stack chez Fleurance Nature

À la refonte Fleurance Nature en 2017, je suis intervenu sur Magento Enterprise Edition 1.10 en posture Senior Software Engineer full-stack chez Smile : 60 modules custom accumulés, 1 040 fichiers PHP modifiés, 3 boutiques (Fleurance Nature France, International, Mincifine) à refondre simultanément. La complexité venait autant du backend (matrice tarifaire EAV, 4 groupes clients, ERP bidirectionnel) que du frontend (responsive mobile, 3 thèmes distincts, internationalisation).

J'ai opéré du backend au frontend sans rupture : côté serveur, PHP 5.3 + Zend Framework + Magento EE 1.10, MySQL avec EAV, Varnish en reverse proxy, et le backport ElasticSearch sur Magento 1.10 que personne n'avait fait jusque-là (autocomplete, navigation à facettes, catégories virtuelles). Côté frontal, j'ai produit les wireframes responsive (mobile, tablette, desktop), rédigé les spécifications graphiques des 3 thèmes, intégré le blog WordPress via parsing RSS (512 articles à migrer sans perte), et livré le thème front-end responsive sur les 3 boutiques. J'ai documenté les spécifications fonctionnelles sur 7 versions (de 30 à 50 pages) au fil des découvertes métier.

Mise en production sur 8 environnements sans régression majeure, garantie de 58 jours post-lancement assurée en personne, et la plateforme refondue a tenu plus de 5 ans en production sans nouvelle réécriture.

Cette mission a verrouillé chez moi un réflexe que je rejoue aujourd'hui : profondeur PHP legacy + stacks modernes ne sont pas 2 mondes séparés. Pouvoir lire une codebase Magento 1.x ou Symfony 2 aujourd'hui me donne accès à des audits CTO advisory que les profils strictement TypeScript-modernes ne peuvent pas faire. C'est exactement ce qui m'a permis d'enchaîner ensuite sur Symfony 3-7 puis sur le stack TypeScript moderne sans rupture.

Mon autocritique

Mes niveaux par stack

  • PHP (Joomla, Zend, Symfony 2-7, Magento 1-2) : Expert, 16 ans
  • TypeScript / Node / Java (Spring, Hibernate) : Senior
  • Kotlin Android, Scala, Angular : Confirmé

La polyglossie n'est pas un objectif esthétique mais une conséquence d'un projet : chaque rôle a ramené sa stack, je la pratique tant qu'elle sert. Ce qui reste à muscler : Bun + edge runtimes en production et Kotlin Multiplatform pour cross-mobile.

Différenciant majeur face aux CTOs qui ne codent plus. C'est ce qui me donne le droit de challenger une décision technique senior, d'opérer une revue de code sérieuse et de soulager l'équipe en cas de pic. C'est aussi ce qui rend possible un cycle de delivery solo-grade en early-stage : le SaaS comptable ACCENSEO n'aurait pas été cadré + livré sans cette polyglossie.

Indicateur récent qui parle pour la cadence : 234 K lignes livrées en solo en 14 mois sur le SaaS comptable (2025-2026) et 6 semaines pour livrer le premier obfuscator Tailwind v4 en partant de zéro sur Babel AST + PostCSS.

À moi-même : livrer au moins un package OSS par an pour rester aiguisé hors confort client, ne jamais perdre la lecture quotidienne du code même quand la charge management explose. Aux autres : *ne pas chercher la polyglossie pour elle-même*, choisir un langage par projet, l'exécuter à fond, capitaliser sur le pattern. La discipline d'écriture (tests automatisés, types stricts) vaut plus que la nouveauté de la stack.

Mon évolution dans cette compétence

Le développement fullstack est ce qui maintient ma posture CTO scale-up crédible côté ingénierie. Dans le projet à 24 mois, il me permet de pair-programmer avec mes équipes, d'arbitrer les revues de code seniors, de livrer un MVP en personne sur un nouveau marché et de muscler la cadence par mentoring inversé. Sans lui, le rôle bascule vers une posture purement managériale et perd son levier d'opération.

L'objectif observable est de livrer en solo un MVP complet (back + front + infra) en moins de 6 semaines sur une stack moderne, et de co-écrire un package OSS référencé dans la communauté. Pratiquement : monter Senior+ sur TypeScript / Node / Bun, maintenir Expert sur PHP, ouvrir Senior sur Kotlin si le marché mobile devient pertinent.

Code quotidien sur les produits ACCENSEO (SaaS comptable, packages OSS), pair-programming hebdomadaire avec les alternants, revue de code mensuelle de codebases tiers (audit conseil). Master Expert en Ingénierie du Logiciel actif jusqu'en 2026.

Possible immersion Kotlin Multiplatform si un produit ACCENSEO requiert du mobile cross-plateforme. Programme Total TypeScript (Matt Pocock) prévu 2026 pour stabiliser le niveau Senior+. Certification AWS Developer Associate envisagée 2027.

Pair-programming systématique avec les alternants en mentoring inversé (ils apportent les réflexes modernes, j'apporte la profondeur architecturale). Lecture mensuelle *Effective TypeScript* (Vanderkam), suivi continu des changelogs framework (Next.js, React, Prisma). Au moins 1 package OSS publié par an comme discipline.

Navigation circulaire