Photographic Composition Analysis
A vision model that scores photographs on composition rules — rule of thirds, leading lines, depth of field — with explainability via Grad-CAM. Trained on a personal dataset I annotated from my own photographs.
M2 engineering student at ESILV, building AI applications around LLMs and synthetic data. Currently a Fullstack / AI Solution intern at Aubay Solutec, with prior experience at BPCE SI and Manaos.

I'm William, a final-year engineering student in Data Science & AI at ESILV Paris La Défense. Over the past few years I've been moving back and forth between data engineering, machine learning, and fullstack development — chasing the projects where those three intersect.
My focus today is on LLMs and synthetic data: how we can train models on data that doesn't exist yet, generate it responsibly, and make AI systems people can actually trust and inspect.
Outside the screen, I'm a setter on a competitive volleyball team, I run trails, climb, and shoot photographs — interests that, more often than I expected, seep back into the way I think about code.
Three internships at the intersection of data engineering, AI and product — each one a step deeper into building things that ship.
Building a fullstack synthetic data generation platform: a micro-services architecture (FastAPI / Angular) that selects and tunes generative algorithms (GAN, VAE, ARGN, DDPM) based on input data. Storage on MinIO and PostgreSQL hosted on Nexus.
Optimised data pipelines through performant SQL on Oracle databases via SQL Developer. Delivered BI reports tailored to business needs, and contributed to migrating the data heritage to Google Cloud Platform.
Built an ESG data management application in Python / Streamlit (team of 6) with an integrated open-source LLM (Hugging Face) to query the data in natural language.
A mix of school, internship and personal work — usually somewhere between AI research and shipping software.
A vision model that scores photographs on composition rules — rule of thirds, leading lines, depth of field — with explainability via Grad-CAM. Trained on a personal dataset I annotated from my own photographs.
A retrieval-augmented system for querying financial and ESG reports in natural language. Semantic retrieval pipeline with source citation and a hallucination-detection layer.
Built with a team of 6 inside BNP Paribas' MANAOS subsidiary: an ESG data management app in Python / Streamlit with an integrated open-source LLM (Hugging Face) for natural-language queries over the data.
Ongoing at Aubay Solutec: a fullstack micro-services platform that picks and tunes generative algorithms (GAN, VAE, ARGN, DDPM) based on the input dataset. FastAPI + Angular, MinIO and PostgreSQL on Nexus.
The hours I spend away from a keyboard — and why they end up shaping my engineering work more than I expected.
Setter for a competitive amateur team in Lognes. The position taught me a lot about anticipating, reading patterns, and making quick calls under pressure.
Long runs and trail outings — the rhythm I rely on to think through hard problems, away from any screen.
On the wall I get to optimise something different: balance, route reading, body tension. Debugging a route is a lot like debugging code.