Senior developer
A design and fine-arts education, then 12 years of engineering
Yesterday Designer, today Senior Frontend Developer,
tomorrow Product Engineer.
From design I keep the eye, affordance. From fine arts, conceptual plasticity.
From software engineering, high standards and rigour, proven with major accounts and complex, high-traffic environments where the stakes are high. All three serve a single way of thinking, which I carry across disciplines — product, design, back end, ops.
Experience
Nine hotel brands — including Sofitel, Novotel, Mercure, Ibis — with heavy traffic and business-critical stakes. Architecture and delivery strategy.
- Led the architecture and delivery strategy across the nine brands.
- Containment strategies and reduction of massive, multiple and varied technical debt.
- Cross-functional scoping meetings and workshops — Product, Design, Back end, Ops — planning, estimates.
AEM
JavaScript
Vue 3
SASS
BEM
Webpack- Monorepo
Git
Jira
The 3D web experience for the single from NoQuantize’s album “ONYI”. An album coming out, and a website that exists for that alone.
- 3D staging, prototyping and GLSL shaders.
- Concept, art direction and code by the same hand.
Three.js
GLSL
Vue 3
Nuxt 3
Blender
GSAP
Critical user journeys and component industrialisation for a high-traffic international e-commerce site.
- Refactored critical journeys (cart, search, order tracking), industrialised components, corrective and evolutive maintenance of complex environments.
- Ticket refinement and code reviews.
Vue 2
Nuxt 2
Vue Storefront
TypeScript
GraphQL
Elasticsearch
Tailwind
BEM
The custom front end of Danone’s DAM, on AEM: the internal tools where the group centralises its technical and commercial assets.
- End-to-end design and implementation of “Medical Portal”, the Nutrition division’s DAM.
- End-to-end design and implementation of “DAM One Portal”, which brings together the DAMs of every division.
- Fully autonomous on the front end, paired with a (super) AEM architect.
- Onboarding offshore teams, technical documentation.
AEM
JavaScript
LESS
BEM
Webpack
Four years at a luxury agency, where an interface that isn’t pixel-perfect doesn’t ship. That is where the visual standards came from.
- Designed and built hybrid projects combining very large-scale e-commerce platforms with experiential, immersive web.
- Consistent application of rigorous standards of excellence — performance, cross-device, pixel-perfect, SEO, accessibility, tracking — and command of robust architectures (MVC, web apps, OOP, SOLID).
- R&D and technical innovation: advanced graphics (WebGL) and the AI then emerging (DialogFlow).
Direct work on the websites of:
JavaScript
Vue
React
Node.js
GSAP
WebGL
PHP
Laravel
Symfony
Drupal
Twig
AEM
Building an app agency’s entire production line, mixing code and no-code — up to twenty-five apps per person per month.
- Created a mobile-app production line for small businesses, mixing code and no-code solutions: an optimised output of twenty-five apps produced per person per month.
- That is where a well-designed production line proved worth more than a team running flat out.
Angular 1
HTML5
CSS3
GoodBarber
Photoshop
App Store
Google Play
Three months of responsive mock-ups, then custom integrations into CMSs.
- Responsive mock-ups, and custom CMS integrations (WordPress, Joomla, proprietary PHP).
HTML5
CSS3
WordPress
Joomla
PrestaShop
Photoshop
Graphic design, art direction, print and web graphics. Ten years that grounded UX and design before the turn to software engineering.
- Web projects and communication materials for a range of clients, including the Fondation Vasarely and the Friche Belle de Mai.
- Command of UX fundamentals and responsive design, before moving into software engineering.
- Art direction
- Visual identity
- Publishing
Photoshop
Illustrator
Side projects
A semantic recommendation engine designed, built and run single-handedly — from data acquisition to production deployment.
- End-to-end design and delivery, working autonomously: scoping the need, prioritising use cases, industrialising a V1 geared to immediate value creation (SaaS model).
- Architecture and agentic management: steering and orchestrating AI agents to design, prototype and structure the system end to end.
- QA, quality control and deployment automation — a release can be rejected by its own battery of checks.
- The product is designed in the abstract so that it can be replicated: the pipeline holds beyond its first domain.
- GDPR, the EU AI Act and WCAG 2.2 treated as architectural constraints, upstream, rather than as an end-of-project formality.
Claude Code harness
TypeScript
PostgreSQL- Embeddings
- LLM
Mistral
React- SSE
Docker- GDPR
- AI Act
- WCAG 2.2
An AI harness agency that guarantees efficiency.
- Site designed and shipped through agentic coding, with Claude Code.
Claude Code harness
Nuxt 4
TypeScript
Three.js- TSL
GSAP- Lenis
Node.js
Agent systems built with Claude Code, and the products they ship.
CORE
A multi-agent monorepo whose single source of truth is an Obsidian vault. Its goal: produce web apps and SaaS autonomously, from idea to V1.
- metaDashboard: a Nuxt dashboard that reads and writes the vault directly. SQLite only keeps the runtime — events, tokens, builds, processes.
- Supreme flow: an Idea → Delivery → V1 pipeline where each stage is a Claude Code skill run as a detached process. The end of one stage triggers the next.
- Thirteen agents in two teams, incubation and code: scoping, specs, design, build, code review, QA, security.
- Gates before delivery: install, build, type-check and tests, up to ten fix attempts, then a real start of the application.
- A knowledge loop: each project’s lessons learned are aggregated, then fed back into the next ones.
Claude Code harness
Nuxt 3
TypeScript
SQLite
Obsidian
Python
Mattermost
Chat with Legends
Socrates, Oscar Wilde and Cleopatra debate the big questions in real time.
- Two conversation formats: the debate and the dinner.
- Lines stream in, and the characters draw on a web search.
- Produced by CORE’s supreme flow.
Claude Code harness
NestJS
Next.js
React
TypeScript
SQLite
Tailwind
GSAP
Docker
Scraper Foundry
Scrapix, a factory of vertical micro-SaaS: data scattered across several sites becomes a clean, normalised feed, comparable over time — without the client writing or maintaining a single scraper.
- One collection queue per sector: each has its sources, its schema and its alerts, and can fail without taking the others down.
- Scrapers that watch themselves: spaced-out retries, a circuit breaker after three empty runs, regression tests on recorded pages.
- Each client only sees their own data: isolation is enforced by PostgreSQL itself, and checked on every commit.
- Built-in deduplication, CSV or JSON export, email alerts.
- Legal as an architecture constraint: watching each source’s terms and robots.txt, a public manifest for the bot.
Claude Code harness
NestJS
Next.js
TypeScript
PostgreSQL
Redis
BullMQ
Drizzle
Stripe
Scaleway
Agent Crafter
A personality builder for AI agents, modelled on video game character creators.
- Over fifty parameters, including the Big Five model and eight communication styles.
- A budget of 500 points to spread across the traits.
- Export as JSON, as a prompt template or as Markdown.
Claude Code harness
Nuxt 4
Pinia
Tailwind
Chart.js
TypeScript
Auto Job Applier
Job collection and autonomous applications for two profiles — senior developer and AI producer —, with CVs and cover letters sent as they are.
- Collection from France Travail, LinkedIn and the Lever, Greenhouse and Ashby boards, deduplicated.
- Deterministic sorting, no LLM: deal-breakers, location, salary, then a category or a reasoned rejection.
- No document generated or edited: only the job title goes into the letter, and an English posting gets a fixed translation.
- An application only counts once its confirmation is read on the platform; each submission leaves screenshots as proof.
- Quotas, scheduled cycles and a circuit breaker per channel.
Claude Code harness
Bun
TypeScript
SQLite
Playwright
Dream Journal
Voice capture on waking and a Jungian symbolic reading of dreams, for adults in introspection.
- Capture designed for the few minutes a dream stays in memory, then transcribed.
- A reading split into acts and portions, each one open to discussion with the AI.
- A constellation of symbols, rebuilt with each dream from the links between notions.
- Leads for reflection, not truths: the analysis can say a dream probably has no deep meaning.
- Built by CORE’s supreme flow, then reworked over fifty-two work sessions.
Claude Code harness
Mistral
NestJS
Next.js
TypeScript
PostgreSQL
OpenClaw × Mattermost
The agent system before CORE: OpenClaw agents talking on a private Mattermost, driven from a dashboard.
- mattermost-orchestrator: bots — architect, developer, project manager — answering through Claude, then an incubation that turns an idea into a project with six agents.
- openclaw-ui: the control dashboard. Creating an agent there creates its workspace, its Mattermost bot and its configuration.
Claude Code harness
OpenClaw
Mattermost
Python
Nuxt 3
TypeScript
SQLite
Non-exhaustive list
Claude Code harness
OpenClaw
Obsidian
Nuxt 3/4
TypeScript
Python
Loot Your City is a web3 mobile game: a play-to-earn built on the Solana blockchain.
- Landing page development
- Three.js development
- Gyroscope handling on mobile: tilt the phone and the set follows
Three.js
Blender
Vue 3
Nuxt 3
HTML5
CSS3
JavaScript
GSAP
SASS
BEM
Git
My previous CV and portfolio, built in my spare time. The aim: learn Astro and give HR teams and recruiters the full scope of my career, in a visually digestible way.
- Continuous deployment: GitHub → Netlify
Astro
Vue 3- React Three Fiber
Svelte
Nano Stores
VueUse
HTML5
CSS3
JavaScript
GSAP
SASS
BEM
Git
Netlify
For the 2024 new year, the agency wanted a digital greeting card, with a mini-game, to send to its clients.
- Canvas development
- Front-end development
- Going live
- Canvas 2D
Vue 3
Nuxt 3
HTML5
CSS3
JavaScript
GSAP
SASS
BEM
Git
A bespoke CMS for a social content agency: content model, API, interface, hosting.
- Delivered on time and fully functional
Vue 2
Nuxt 2
Strapi
PostgreSQL
GraphQL
Apollo
Heroku
AWS
HTML5
CSS3
JavaScript
SASS
BEM
Git
An event website for the opening of an exhibition organised by the agency. The idea: a site you browse like Google Maps.
- Front-end development
- Every map interaction in vanilla JavaScript: grab, drag, zoom, video autoplay
- The site is now offline
Vue 2
Nuxt 2
HTML5
CSS3
JavaScript
GSAP
SASS
BEM
Git
The launch of a fragrance and skincare brand: mock-ups and the full development of the website.
- Data structured as JSON
- Multilingual without page reloads
- Dynamic audio player
- Fully client-side routing, in vanilla JavaScript
- Responsive, CSS3 animations
- A diagnostic tool, and a standalone version running offline on iPads at cosmetics trade shows
- The brand has since redone its website: the link leads to a backup of my work
Angular 1
HTML5
CSS3
JavaScript
Photoshop
Illustrator
The showcase website of a sushi restaurant.
- Mock-ups of the printed menu and of the website
- Hand-coded integration
- A search-by-ingredient tool
- Beforehand, a PHP parser to turn all the existing content into structured JSON
Angular 1
HTML5
CSS3
JavaScript
PHP
Photoshop
Illustrator
Education
- 2025 – 2026Continuous learning and tech watchOnlineAgentic coding: Claude, OpenClaw, Hermes, etc.
WebGPU, TSL, Higgsfield. - 2023 – 2025Continuous learning and tech watchOnlineAstro, React Three Fiber, Vue 3, Nuxt 3, Strapi, GraphQL.
- 2021Three.js JourneyOnlineThree.js, GLSL shaders, Blender, Figma.
- 2017 · 4-month intensiveThe Hacking ProjectParisRuby, Rails, JavaScript, unit testing, scraping, algorithms.
- 201730 Days of JSOnline · Wes BosThirty vanilla JavaScript exercises, no libraries.
- 2017freeCodeCampOnline100% of the platform’s JavaScript exercises.
- 2015 · 3-month intensive3W AcademyMarseilleOOP, MVC, PHP, MySQL, HTML5, CSS3, JavaScript.
- 2014Multimedia designerMarseilleMultimedia design, UX, production pipeline.
- 2010 – 2013Fine ArtsAix-en-ProvenceArt history, theory and criticism. Generative drawing, painting.
- 2004 – 2006Graphic design schoolMarseille · CondéGraphic theory, composition, illustration, identity.
- 2002 – 2004BTS in Business ComputingMarseilleNetworking, system administration, SQL.
- 2002Baccalauréat STTLuynesFrench high-school diploma, business sciences and technologies track.
Skills
Self-assessed levels, out of 100.
Front-end
HTML5100 out of 100
CSS3100 out of 100
SASS100 out of 100
JavaScript100 out of 100
Vue 2/3100 out of 100
BEM100 out of 100
GSAP100 out of 100
VueUse90 out of 100
Nuxt 3/490 out of 100- Async dev (Promises / Fetch)90 out of 100
Three.js90 out of 100
Blade90 out of 100
Twig90 out of 100
Tailwind85 out of 100- SSR80 out of 100
GraphQL80 out of 100
Vite80 out of 100
npm80 out of 100
Vue Storefront75 out of 100
React75 out of 100
TypeScript75 out of 100
GLSL75 out of 100
Webpack75 out of 100
Google Tag Manager75 out of 100
Astro70 out of 100
SVG60 out of 100
Bootstrap50 out of 100
jQuery50 out of 100
Storybook50 out of 100
Tampermonkey50 out of 100
Elasticsearch40 out of 100
Pug40 out of 100
Gulp40 out of 100- PhantomJS30 out of 100
Grunt30 out of 100
Jest20 out of 100
Electron20 out of 100
AI
Claude Code harness90 out of 100
Obsidian85 out of 100
OpenClaw80 out of 100
Hermes70 out of 100
Back-end
Node.js95 out of 100
PHP70 out of 100
Ruby65 out of 100
Ruby on Rails40 out of 100
Laravel30 out of 100
Symfony30 out of 100
Magento 230 out of 100
Maven30 out of 100
CMS
Strapi90 out of 100
AEM85 out of 100
WordPress60 out of 100
Drupal60 out of 100
Joomla40 out of 100
DevOps
GitLab CI75 out of 100- Surge70 out of 100
Heroku60 out of 100
AWS40 out of 100
Jenkins40 out of 100
Databases
- SQL75 out of 100
PostgreSQL60 out of 100
MongoDB40 out of 100
MariaDB20 out of 100
Tools
- Visual Studio Code / Cursor100 out of 100
Chrome DevTools100 out of 100
Git95 out of 100
GitHub95 out of 100
Jira80 out of 100
Confluence80 out of 100- SmartGit50 out of 100
PhpStorm30 out of 100
Bash30 out of 100
Graphics
Photoshop90 out of 100
Figma75 out of 100
Illustrator75 out of 100- Midjourney75 out of 100
Blender60 out of 100
Languages and interests
- FrenchNative
- EnglishFluent and technical
- Geek TalkFluent
- Making music
- Literature — Romain Gary, Alessandro Baricco
- Philosophy — Spinoza
- Science fiction — Philip K. Dick
- Sport, concerts
Contact
Let’s talk.
Interested in my profile? Email me or connect with me on LinkedIn: I’d be glad to talk about your projects.
- Based in
- Paris and Marseille, or remote
- Status
- Freelance — fixed-price or time-and-materials engagements
- Reply
- Within 48 business hours, always from a human