Développeur web full-stack indépendant · Lyon
Des applications robustes qui résistent dans le temps.
Symfony / API Platform · React & TypeScript · IA appliquée : agents, LLM, outillage
Salvador Cardona, 13 ans à concevoir des API Symfony et des interfaces React pour des marketplaces, une plateforme de streaming et un studio de jeu. Aujourd’hui lead developer chez Animalink, et des agents LLM qui livrent du code sur mon temps propre.
Développement sur mesureAudit de sécuritéIntégration IA
Services
Trois prestations avec leur page dédiée, et des interventions plus courtes sur un sujet précis.
Développement web
Des applications web de bout en bout : API Symfony structurées, interfaces React typées, et l’outillage qui va avec.
En savoir plusAudit de sécurité et d’application
Un regard extérieur sur votre application : failles, dette technique, dépendances, configuration. Un rapport priorisé, pas un PDF de 200 pages.
En savoir plusMise en place de l’IA
Des agents et des automatisations branchés sur vos API et vos données : ce qui fait gagner du temps à l’équipe, en production.
En savoir plusAPI REST et architecture back-end
Concevoir ou refondre une API Symfony / API Platform : contrat JSON-LD, droits, performance, documentation.
Intervention ponctuelleAutomatisation et agents
Relier vos outils avec n8n, ajouter un agent là où une tâche répétitive coûte du temps, exposer vos API à des modèles via MCP.
Intervention ponctuelleConseil technique et formation
Choix de stack, relecture d’architecture, accompagnement d’une équipe sur Symfony, React ou les agents LLM.
Intervention ponctuelleÀ propos
Développeur web depuis 2013, indépendant à Lyon. Symfony et API Platform côté serveur, React et TypeScript côté navigateur, JSON-LD entre les deux : le contrat d’API décrit assez la donnée pour que le front en génère ses types, ses formulaires et ses vues.
Ces derniers mois, c’est sur l’IA appliquée que j’ai le plus progressé, avec des outils publics que j’utilise tous les jours : ticket-runner transforme un ticket Notion en session d’agent puis en pull request, gnome-claude-usage affiche la consommation Claude Code dans GNOME Shell, whisper-desk dicte hors-ligne sous Linux, WSL et macOS. Chez Animalink, ce sont des agents n8n branchés sur l’API Symfony, de l’analyse documentaire avec Mistral et un chatbot produit.
Technologies
Back
- PHP 8.4
- Symfony 7
- API Platform
- JSON-LD / Hydra
- Python
- Node.js
- Mercure
- Elasticsearch
- PostgreSQL
- Sylius
Front
- TypeScript
- React 19
- TanStack Router / Start & Query
- Vue
- Angular
- Tailwind
- shadcn/ui
- Three.js
- Next.js
IA
- Claude Code
- Ollama
- OpenRouter
- Mistral
- n8n
- Whisper
- Prompt engineering
- MCP
- LLM
Infra
- Docker
- Terraform
- AWS
- GitHub Actions
- Linux
Expériences
Des marketplaces, une plateforme de streaming, un studio de jeu, une application de soin animalier — et, en parallèle, de l’outillage open source pour agents IA. Le détail sur LinkedIn.
Janvier 2024 — aujourd’hui
Lead developer · Animalink
Application web et mobile pour le soin animalier. Nouvelle plateforme construite de bout en bout, de l’architecture au déploiement : API REST sous API Platform et Symfony 8 en Clean Architecture et CQRS, recherche Elasticsearch et stack ELK pour l’observabilité, workers asynchrones pour les traitements longs. Côté navigateur, une SPA React typée depuis le schéma de l’API, routée par TanStack Start, avec un design system sur shadcn/ui. Environnements Docker, CI GitHub Actions, hébergement AWS provisionné en Terraform. Côté IA : agents n8n branchés sur l’API, analyse documentaire et embeddings avec Mistral, chatbot produit — une API pilotable par un agent autant que par une interface.
Symfony 8 · PHP 8.4 · API Platform · React · TypeScript · TanStack Start · shadcn/ui · Elasticsearch · Docker · AWS · Terraform · n8n
Janvier 2017 — aujourd’hui
Open source — outillage et agents IA · SalvadorCardona (GitHub)
Sur mon temps propre, des outils qui font travailler des agents LLM sur des tâches réelles, et l’écosystème front qui va avec. ticket-runner : un ticket Notion devient une session Claude Code dans une worktree git jetable, avec une pull request à l’arrivée, une boucle de validation dans Notion et les questions posées à l’humain sur Telegram ou Slack. gnome-claude-usage : extension GNOME Shell publiée sur extensions.gnome.org, qui lit la consommation Claude Code depuis la CLI officielle, donc sans clé d’API. whisper-desk : dictée vocale hors-ligne, sur GPU ou CPU, pour Linux, WSL et macOS, avec un installeur qui branche systemd ou launchd selon l’hôte. trader-ia : arène de paper trading S&P 500 entre agents traders. Et neuf paquets pour consommer une API JSON-LD / Hydra sans réécrire le même CRUD : react-resource-view, react-data-form, jsonld-api-client, jsonld-repository, jsonld-item, resource-registry, react-jwt-session, react-mini-i18n, ssr-safe-storage — documentation et playground publiés.
Python · TypeScript · React · Claude Code · MCP · Ollama · OpenRouter · faster-whisper · n8n · Notion API · GitHub Actions
Février — juin 2023
Développeur back-end · Enkate
Studio de jeu vidéo lyonnais. API REST sous API Platform et Symfony 6 (Clean Architecture, CQRS, DDD), ajout d’une API web sur le serveur .NET existant, TMA C# côté Unity, découpage en micro-services et dockerisation complète.
Symfony 6 · API Platform · C# / .NET · Unity · Docker
Voir les 7 expériences précédentesMasquer les expériences précédentes
Août 2022 — janvier 2023
Développeur full-stack · Greenweez
Marketplace du bio. API REST sous API Platform et Symfony 6 en Clean Architecture, CQRS et DDD, migration du socle e-commerce vers Sylius, découpage en micro-services, front SSR sous Next.js pour un catalogue lisible par les moteurs de recherche.
Symfony 6 · Sylius · Next.js · React · Docker
Février — juillet 2022
Développeur full-stack · BeeTrip
Marketplace des outils du voyage. API REST sous API Platform et Symfony 6, SPA Next.js qui la consomme, tests unitaires et fonctionnels des deux côtés, conseil sur les choix techniques.
Symfony 6 · API Platform · PHP 8 · Next.js · React · TypeScript
Septembre 2021 — janvier 2022
Développeur full-stack · QANTIS.co
Marketplace des outils du BTP. SPA Vue 3 et TypeScript, API REST sous API Platform et Symfony 6, intégration du SDK Wizaplace pour la brique marketplace, tests unitaires et fonctionnels sur les deux stacks.
Vue 3 · TypeScript · Symfony 6 · API Platform · PHP 8 · Wizaplace
Février — août 2021
Développeur back-end Symfony · Bedrock Streaming
Éditeur des plateformes de streaming de TF1, M6 et d’autres diffuseurs européens. Évolutions de l’API Symfony 5 en DDD, tests unitaires et fonctionnels, travaux sur plusieurs services AWS.
Symfony 5 · PHP · DDD · AWS
Août 2019 — février 2021
Développeur full-stack · Jacquet Metal Service
Marketplace B2B de la métallurgie. Socle Sylius et API Platform, SPA Angular, migration de la base de données d’Oracle vers PostgreSQL.
Symfony · Sylius · API Platform · Angular · TypeScript · Oracle · PostgreSQL
Décembre 2017 — août 2019
Développeur full-stack · Wizaplace
Éditeur d’une solution de marketplace revendue à des intégrateurs. Développement du SDK PHP utilisé par les équipes clientes — du code à documenter et à ne pas casser —, marketplaces clientes et API REST sous Symfony 4, fronts Vue 2, Vuex et Nuxt.
Symfony 4 · PHP · Vue 2 · Vuex · Nuxt
Octobre 2018 — janvier 2019
Développeur full-stack et formateur · EDD
Conversion et indexation de médias — vidéo, presse, radio — dans une base documentaire, en parallèle de Wizaplace. Front Vue 2, Vuex et Vue Router, back Symfony 4 sur la base PostgreSQL existante, et formation de l’équipe en place pour qu’elle reprenne la main.
Symfony 4 · Vue 2 · Vuex · PostgreSQL
Diplômes
Septembre 2013 — juin 2015
Master en génie informatique
Université Lumière Lyon 2
Niveau Bac +4.
2011 — 2013
DUT informatique
IUT de Saint-Raphaël
En alternance.
Projets ouverts
Ce que je construis sur mon temps propre, et que j’utilise tous les jours.

ticket-runner
Vos tickets Notion, joués par Claude Code : une session par ticket, une pull request à l’arrivée.
Python · Agents LLM · Notion API

React Resource View
Vues CRUD pour API JSON-LD / Hydra : on déclare une ressource et le package génère liste, détail, création, édition et suppression, câblés à l’API et à l’URL.
React · TypeScript · JSON-LD

Whisper Desk
Dictée vocale hors-ligne pour Linux, WSL et macOS : un raccourci clavier, un overlay, et le texte est dans le presse-papiers.
Python · Whisper · Linux · macOS

Claude Usage
Extension GNOME Shell affichant la consommation Claude Code en graphique circulaire dans la barre supérieure, avec le détail des limites hebdomadaires au clic. Sans clé d’API.
GNOME Shell · GJS · Python

React Data Form
Formulaires React pilotés par la donnée : on décrit le formulaire comme un objet, la librairie rend les champs, tient l’état, valide et remonte les erreurs de l’API.
React · TypeScript · Formulaires
Derniers articles
Découper un domaine métier en ressources API Platform
Praticien, créneau, rendez-vous, acte, produit : sur une marketplace de rendez-vous vétérinaires, la découpe en ressources décide de tout ce qui vient après. Quatre séparations qui ont tenu, et la règle qui les explique.
Suivre sa consommation Claude Code sous Linux
Trois limites courent en parallèle, et la seule façon de savoir où j’en suis était de taper /usage au milieu d’une session. J’en ai fait une extension GNOME Shell : un camembert dans la barre, le détail au clic.