also answers to Canopus
the navigator's star.
second brightest in the night sky.

Housedevinci — the workshop of

Souhaile.

Java craftsman & tech lead 10+ YEARS · FINANCE-GRADE SYSTEMS · PARIS
Codex I · Paris est. MMXXV

The craft, as principles.

folio I
§ 01

Frameworks are guests here.

Ten years with Spring taught me to love it — at the edges. The heart of a system is plain Java that doesn't know Spring exists. When the framework changes its mind, the business logic shouldn't have to care.

§ 02

Trust nothing at the door.

Banking teaches you this fast: data that walks in unchecked becomes a production incident on a delay. I validate at the boundary and fail loudly. Bad news early is cheap — bad news late is a war room.

§ 03

If it's clever, I rewrite it.

The best compliment a codebase can get is "boring". The next engineer — usually me, six months later — should read the code, not decode it. No magic annotations nobody remembers configuring.

§ 04

Done means it survived production.

I've been the architect, the reviewer, and the guy on call. A feature isn't finished when it compiles — it's finished when it takes real traffic without waking anyone up.

Language & core
  • Java 17 · 21 10+ yrs
  • Spring Boot · Security · Batch certified
  • Hibernate · JPA
  • TDD · JUnit · Mockito · Karate discipline
Architecture
  • Hexagonal · DDD · SOLID
  • Event-driven · CQRS
  • Microservices multi-team
  • REST · OpenAPI
Data & messaging
  • PostgreSQL · Oracle
  • Elasticsearch · MongoDB
  • RabbitMQ · Kafka
  • Flyway migrations
Platform
  • Docker · Kubernetes
  • Jenkins · GitHub Actions
  • AWS · S3 · EC2
  • ELK stack · SonarQube

certified — Spring Professional (VMware) · Oracle OCP 8 · OCA 8.

From the workshop.

folio II
Open source · v1.0.0 on Maven Central

Tenantify

Zero-boilerplate row-level multi-tenancy for Spring Boot. One annotation on the entity — every query scoped to the current tenant, automatically. No repository changes, no findAllByOrgId() sprinkled through the codebase ever again.

how — Hibernate filters wired through Spring Boot auto-configuration; the mechanism disappears behind @TenantAware.

ships as — a Spring Boot starter · Java 21 · Hibernate 6.

github ↗  ·  the story, on medium ↗

Live · ships every Saturday 09:00

DevBrief

A news engine that reads the internet so I don't have to. Sources scraped daily, every article scored by an LLM against what actually matters — Java, architecture, DevOps, the craft — then compiled into one weekly digest. Built for an audience of one; the archive is open.

how — scraping pipeline · LLM relevance scoring · automated compilation & delivery, end to end.

runs on — a small Linux box that never gets a day off.

brief.housedevinci.com ↗

In development · 2026

Rovii

Turn driving into an experience. Set a duration — Rovii composes a real loop route from wherever you are and guides you through it. No destination. Just the road.

route engine — loop generation over real road graphs, tuned for the pleasure of the drive, not the shortest path.

stack — Spring Boot backend · Flutter client · Mapbox.

status — heads down. it ships when it's worth your time.

rovii.app ↗

// the notebook has more pages — they surface when they're ready.

The record, briefly.

folio III

Ten years inside French banking — KYC workflows, regulatory platforms, e-invoicing under finance law. Systems where a quiet failure costs real money, built to not fail quietly.

Led the Java 7 → 21 modernisation of mission-critical platforms, and a distributed team across Paris and Bangalore — architecture workshops, mentoring, clean-code culture as a practice, not a poster.

Banking sharpened the discipline — it doesn't own the curiosity. The same rigor travels: any domain where systems have to hold is interesting to me.

Senior craftsman by trade, builder by nature — the workshop is where the two meet.

Write, the door is open.

folio IV

Looking for a senior tech-lead or platform role — open to selective contracting, and always to a good conversation about systems.