Skills
- Back-end
- PHP 8 / Symfony 8 · API Platform · Node.js · PostgreSQL · MySQL / MariaDB · RabbitMQ / Symfony Messenger · Elasticsearch / Typesense · Redis
- Front-end
- React · TypeScript · React Native · Next.js
- AI / LLM
- Anthropic API (Claude) · RAG architectures (embeddings, vector search) · multi-agent orchestration · AI-assisted development (Claude Code) · self-hosting open-weight models
- Infra / DevOps
- Docker · CI/CD · AWS · Caddy · Linux administration · self-hosting · monitoring
- Quality & method
- unit / integration / e2e testing · static analysis · continuous integration · code review
- Practices
- software architecture (DDD, hexagonal) · data modeling · scoping & gathering business requirements · technical audits · application security · explaining tech to non-technical audiences
Experience
Lead full-stack developer · Purjus Communication
Jan 2026 – present
Freelance · Vauvenargues, France · web agency
Technical lead for the Retail Renault Group (RRG) account, from design to deployment.
- Flagship project: front-end migration from Symfony Twig/React to Next.js.
- API refactoring.
- Conversational vehicle-search agent (Symfony AI).
- Quality standards (tests, CI, static analysis, code review) closely aligned with business needs.
- For the agency: security & architecture audit of a Laravel/Flutter payment system (remediation), Podio extraction pipeline with AI-generated documentation (PHP CLI + RAG, Claude API).
Full-stack developer · See Tickets (Digitick)
May 2020 – Dec 2025
Freelance · fully remote · online ticketing
Very large-scale ticketing platform (Tour Eiffel, RMN, Olympique de Marseille, Château de Versailles, Musée d'Orsay…), working fully autonomously within a distributed team.
- Set up a complete CI pipeline and raised code quality across several of the group's products.
- Robust scripts for mass ticket refunds during the COVID-19 cancellations.
- Design and architecture of a high-traffic CRM (tens of millions of emails per month).
- Peer-to-peer ticket resale platform (organizers' official resale marketplaces).
- Optimized ticketing systems for bulk ticket sales to travel agencies.
Lead full-stack developer · Purjus Communication
Sept 2017 – May 2020
Permanent contract · Vauvenargues, France · web agency
Technical lead and lead developer on projects for Retail Renault Group (retail-renault-group.fr, jobs.renaultretailgroup.com), Fleury Michon, datagora.fr (web and iOS/Android mobile app), and more. Flagship build: quartierdesjantes.com, developed from scratch with one front-end integrator (cross-source data imports, Elasticsearch search engine, strong business constraints).
PHP/Symfony developer · Himalaya 8868
2016 – 2017
Fixed-term contract · remote
Built and shipped management and administrative-assistance products for nonprofits: software architecture, development, CI, deployment and system administration.
Web developer · Allopneus
2015 – 2016
Permanent contract · France's leading online tire retailer
High-traffic e-commerce. Developed and improved the wheels section; designed an internal data hub, a single source of truth connecting all departments through APIs.
Full-stack developer · Digitick
2012 – 2015
Permanent contract · Marseille, France
Ticketing software: specifications and back-office modules, production incident management for major clients.
Developer · Habitat Trade / Easy-Devis
2008 – 2012
Permanent contract · first position
Four years of full-stack development in a small company.
Education
BTS Informatique de Gestion (French two-year degree in software development), 2008.
Continuous self-training since: LLM architectures, the Symfony ecosystem, DevOps.
Languages
French (native) · English: fluent technical English (daily working language).