About

Sélim Trabelsi

I spent five years checking other people’s work. Today I build systems, and the method is still the same.

Sélim Trabelsi

Five years inside a supervised bank

Three years of French classes préparatoires, then ESCP Business School, entered by competitive examination. I began my career at Groupama Banque, which became Orange Bank in 2017. Assistant inspector, then internal controller, then inspector.

The job fits in one sentence: establish what a control is supposed to do, verify that it does it, and be able to prove it. I took part in rebuilding the bank’s second-line control framework - two years spent writing down what had to be checked, how, and with what evidence, then getting it adopted by teams who had other priorities. I worked on inspection assignments in France and Germany. And I was part of the team that handled liaison during an inspection by the ACPR, the French banking supervisor.

That last point taught me something no training conveys: what it feels like to sit across from someone who verifies, with an obligation to show rather than assert.

Moving into engineering

Between 2020 and 2026 I trained in web development, then in AI engineering. Full-stack developer at iORGA Group, then twenty months on an apprenticeship contract at ITFacto - publisher of Le Monde Informatique - working on the company’s first AI applications, in direct contact with the executive team.

I delivered five applications that are still running there: a CRM with a client extranet, analytics dashboards, a file-analysis pipeline, a company-matching engine, and prospecting pipelines.

In one of them, two features sat side by side. One became part of the teams’ daily routine. The other was never used - not because it didn’t work, but because it found no place in the daily work. Same code, same care, opposite outcomes. That taught me more than anything else.

Shipping is not the same as being used. And the hard part was never the model: it’s understanding how the work actually gets done, and leaving behind something that still runs once you’ve gone.

What I build today

Under the name La Moulinette AI, I work with teams from use case to deployment: framing, data pipelines, LLM integration, production rollout, handover. Three systems are online, public, and you can try them.

  • The Code Auditoran agent that scores the quality, security and architecture of GitHub repositories across six measured axes, calibrated by percentile against a corpus of 2,784 public repositories.
  • Documented searcha search engine over 6,504 publications of the Haute Autorité de Santé, where every statement cites the extract that grounds it, and which says nothing when the corpus has no answer.
  • The FHIR Bridgea connector that reads a patient record in FHIR R4, resolves its SNOMED CT codes against the French national terminology server, and plugs the resulting context into the engine above.

How I work

Internal control left me three reflexes I never got rid of, and don’t want to get rid of.

Write the criterion before measuring.
A score is worth nothing if you can’t say what it measures. That’s why the Auditor publishes its six axes as an appendix to every report.
Show where the answer comes from.
A statement without a source is an opinion. That’s why documented search cites sentence by sentence, and refuses to answer rather than invent.
Know where to stop.
My medical demonstrators run on synthetic data and provide no decision support. That’s a regulatory line, and it’s also a design line: compliance can’t be retrofitted at the end, it is decided before the first line is written and it determines what you allow yourself to build. Hence the notices carried by the FHIR Bridge - SNOMED CT licence, national agency authorisation, release version, displayed on the page.

An AI in production shouldn’t be a black box. Where it makes sense, I build on open-source and sovereign building blocks - you keep control of your data.

Let’s talk

Assignments, subcontracting, partnerships, or a Forward Deployed Engineer role.

contact@lamoulinette.aiLinkedInGitHub