About Me

Computer scientist — MSc from UMons — building Acteble.

Working at the crossroads of AI-era software engineering — Claude Code workflows, autonomous agents, RAG pipelines, mobile development — anchored by Software Craftsmanship: clean code, clean architecture, hexagonal architecture, DDD, TDD.

Timeline

Education
Lycée Mater Dei · General studies Latin & Greek Centre Scolaire Saint-Adrien - Val Duchesse · C.E.S.S. — General Studies Maths & Modern languages UCLouvain - Université catholique de Louvain · Cours préparatoires — Médecine et dentisterie Université Saint-Louis - Bruxelles · Bachelor in Political Sciences — General orientation 16-17 Économie I Économie II Science politique Séminaire : penser le social Séminaire : principes et méthodes en sciences sociales Socio-économie des médias Anglais I (Saint-Louis) Néerlandais I Ecole Pratique Hautes Etudes Commerciales (EPHEC-EPS) · Professional Bachelor's degree — Information Systems Management 18-19 19-20 20-21 21-22 Structure des ordinateurs Informatique - Système d'exploitation Mathématique appliquée à l'informatique Principes algorithmiques et programmation Principes d'analyse informatique Bases des réseaux Gestion et exploitation de bases de données Information et communication professionnelles Initiation aux bases de données Notions de e-business Projet d'analyse et de conception Techniques de gestion de projet Web : principes de base Éléments de statistique Organisation des entreprises et éléments de management Produits logiciels de gestion intégrés Programmation orientée objet Projet de développement SGBD Projet de développement web Administration, gestion et sécurisation des réseaux Projet d'intégration de développement Veille technologique Student Representative Tutor WebMenu Institut Saint-Louis Bruxelles · Attestation — 7e Spéciale Mathématiques UMons · Master of Science - MSc — Computer Science (work-study program) — specialised professional focus (120 ECTS) 22-23 · Bridging block 23-24 · Bridging block 24-25 · Master 1 25-26 · Master 2 Bases de données I Algorithmique Modélisation logicielle Mathématique Anglais I Lecture et rédaction scientifique Stratégie et politiques en ressources humaines Réseaux Systèmes d'exploitation Anglais II Bases de données II Ingénierie de logiciels et gestion de projets Intelligence artificielle Recherche opérationnelle et applications Structures de données Séminaires d'informatique en veille technologique Cryptographie et sécurité des systèmes informatiques Éthique et droit de l'informatique Student Representative Buddy TandeMons Remi · AI Application Emvi App · Mobile Application Synergy · Platform fedrag-be · Research Mémoire de master · Dissertation
Events
20 km of Brussels 2022 Hackathon Citizens of Wallonia 2023 SoCraTes BE 2023 VisugXL 2023 VISUG meetup — Mediator pattern and .NET 8 Hackathon Citizens of Wallonia 2024 EduCraft 20 km of Brussels 2024 20 km Maredsous–Dinant 2025 20 km of Brussels 2025 20 km Maredsous–Dinant 2026 SoCraTes BE 2026

evening schedule

Work Experience

Founder | Acteble

–

Brussels, Belgium

Sole founder, architect and developer. Rust backend + Flutter mobile. The R&D layer also served as the dissertation for my MSc in Computer Science at UMons.

Projects:

  • Acteble — Backend: a modular monolith in Rust, split into bounded contexts with a hexagonal architecture, CQRS and an event-driven core (event store, outbox/inbox), served over REST/JSON and gRPC streaming; a PostGIS pipeline turns OpenStreetMap data into routing graphs published to a CDN, and custom Dylint lints enforce the architecture in CI. App: an offline-first Flutter client for iOS, Android, web and desktop — a Melos monorepo with Riverpod over an encrypted local store (Drift, SQLCipher), end-to-end encryption through a Rust core (vodozemac via flutter_rust_bridge), Bluetooth peer-to-peer sync, MapLibre maps and LiveKit real-time media. Website: a React single-page application built with Vite and internationalised with i18next. · Platform Rust Tokio Axum Tonic gRPC Protobuf SQLx PostgreSQL PostGIS Redis MinIO LiveKit OpenBao Prometheus Testcontainers OpenStreetMap Docker Caddy Dylint DDD HexagonalArchitecture CQRS EventDriven Flutter Dart Melos Riverpod Drift SQLite SQLCipher Dio FlutterRustBridge MapLibre FlutterMap Firebase OfflineFirst E2EE Mobile React Vite JavaScript i18next ReactRouter ESLint Vercel
  • Mémoire de master — MSc dissertation « Un cadre computationnel multicritère pour l'exploration de projections spatio-temporelles dans des systèmes sociaux complexes », UMONS Service d'Algorithmique — the R&D of Acteble's planning engine. Multi-objective group formation under spatio-temporal constraints: NP-hard by reduction from k-CLIQUE; admissible groups enumerated as bicliques (Close-by-One); an iterative Pareto solver with termination and local-convergence guarantees; one DSL compiled to Python, MiniZinc and Rust that yield bit-identical fronts, the Rust output running in the Acteble API. Benchmarked against CP-SAT, NSGA-II, MOEA/D and SPEA2 (hypervolume, IGD, 30 seeds, Wilcoxon–Holm): significantly ahead of MOEA/D at every size, of NSGA-II and SPEA2 from 500 users. · Dissertation Python Rust LaTeX MiniZinc ORTools ConstraintProgramming CombinatorialOptimization MultiObjectiveOptimization Pareto DSL MutationTesting
  • Actrack — A Python engine (DDD, hexagonal) weighs fifteen match-outcome strategies — Elo, Poisson attack/defence, form, head-to-head, squad value, rest days, bookmaker odds — adjusted for venue, and is ported to Rust/Dioxus apps for web (WebAssembly), desktop, mobile and terminal, kept at parity with it. A research lab backtests the strategies walk-forward, one tournament held out at a time, on 635 matches from ten tournaments (World Cups 2002–2022 and four continental cups of 2023–2024), and tunes the ensemble weights; out of sample, Elo alone scores best (55.6% accuracy). · Forecasting engine Python Pandas NumPy SciPy DuckDB Rust Dioxus WebAssembly EloRating PoissonModel EnsembleModel WalkForwardBacktest BrierScore HexagonalArchitecture DDD TDD
  • LL — A Rust workspace whose pure domain core (hexagonal, DDD, test-first) drives a terminal UI (ratatui) and Dioxus desktop and iOS apps: Leitner boxes with SM-2 scheduling over SQLite, content from checksummed data packs. Its data lab builds the six-language lexical database in Python — about 8,900 word senses (October 2026) aligned on WordNet, illustrated with Tatoeba sentences, analysed with spaCy, every word-in-sentence link checked. · Application Rust Dioxus Ratatui SQLite iOS SpacedRepetition Leitner SM2 Python spaCy NLP WordNet Tatoeba HexagonalArchitecture DDD TDD
  • Baba — Five layers: a Rust CLI that does all the I/O, a link-grammar syntactic parser, an SWI-Prolog symbolic engine with no I/O, domain vocabulary packs kept as data, and some fifty Rust action binaries — a new verb is one pack fact and one binary. Mutation-tested, with a corpus of regression sentences and a cold start around 120 ms. · CLI Rust Prolog LinkGrammar SymbolicAI NLP DDD TDD MutationTesting
  • KAG — Nine pipeline stages (download → ocrize → parse → normalize → chunk → embed → retrieve → rerank → generate), each a port whose algorithm is chosen by label (BM25F, RM3, MMR, LambdaMART, TextRank…); hexagonal + DDD + TDD, standard library only in the core, no LLM. Metrics match pytrec_eval exactly. On six BEIR datasets no retriever wins everywhere (ndcg@10 0.668 on SciFact with BM25F); a LambdaMART reranker lifts ArguAna from 0.301 to 0.527 in 5-fold cross-validation. · Framework Rust RAG InformationRetrieval LearningToRank BEIR DDD HexagonalArchitecture TDD
  • Indexer — Each of the 523 sources is a TOML file that Rust validates and compiles into static JSON, embedded at build time in a Cloudflare Worker: pure-Rust API logic, ETag and 304 responses, per-IP and API-key rate limits counted exactly by a Durable Object, BM25F ranking weighted by a six-criterion reliability score, and a gap analysis that matches needs to candidate sources. · API Rust CloudflareWorkers WebAssembly DurableObjects TOML BM25F InformationRetrieval TDD
  • Polytech — A Python library (DDD, hexagonal, test-first, mutation-tested, mypy strict) of the notions of maths, physics, electronics, signals and optimisation, computed with SymPy, NumPy and SciPy and injected through macros into 920 LaTeX documents; a pipeline converts course material to Markdown, LaTeX and XML, and Lean 4 proofs with Mathlib trace results back to the axioms. · Library Python SymPy NumPy SciPy LaTeX Lean4 Mathlib DDD HexagonalArchitecture TDD MutationTesting
  • Converge — The AI writes operations, the engines compute: an LLM emits a strictly validated JSON part program; two independent kernels, OpenCASCADE (exact) and Manifold (mesh), must agree on volume and bounding box, and the assembly is checked for overlaps before any STEP, STL, 3MF or glTF export. A Rust core (hexagonal ports and adapters) drives a Python worker over JSON lines, and an NSGA-II search (Optuna) picks the components on a Pareto front, cross-checked by exact enumeration. · Platform Rust Python OpenCASCADE Manifold build123d Gmsh Optuna NSGA2 MultiObjectiveOptimization Pareto ThreeJS HexagonalArchitecture TDD

AI Research Scientist | Belgian Senate

–

Brussels, Belgium

AI research and engineering for the Belgian Federal Parliament. Designed an internal platform that lets staff search, explore and converse with the parliamentary archives. Authored an open evaluation protocol that compares retrieval strategies on the Senate corpus, with a focus on bilingual FR/NL robustness.

Projects:

  • Synergy — Internal platform that lets parliamentary staff search, explore and converse with the archives of the Belgian Federal Parliament, powered by a retrieval-augmented pipeline with bilingual FR/NL support. Python Java .NET RAG AI
  • fedrag-be — Open, reproducible protocol that benchmarks retrieval strategies on the bilingual Senate corpus, measuring FR/NL robustness across the retrieval pipeline. RAG Python Evaluation Benchmark OCR SentenceTransformers Pandas

AI Software Crafter Lead | Emvi.ai

–

Brugge, Belgium

Led the crafting from technical design through delivery: OCR pipeline, code scanning, and a Valhalla routing system adapted for the visually impaired.

• Dart / Flutter / Firebase / Firestore / OpenAI / Valhalla

Projects:

  • Emvi App — AI powered visual assistant for visually impaired people providing them with a description of their environment, OCR, code scans (QR codes & barcodes), and an adapted Valhalla routing system for the visually impaired. Flutter Firebase OpenAI Valhalla AI Dart

AI Software Crafter | Emvi.ai

–

Brugge, Belgium

Built the facial recognition pipeline (DeepFace / Serengil — detection + recognition) and the sentiment-analysis stack for the LLM-generated photo descriptions.

• Python / FastAPI / OpenAI / Whisper / DeepFace by Serengil

Projects:

  • Remi — Reminiscence application allowing people with cognitive issues to recover their memories through descriptions of their photos powered by facial recognition and LLMs. DeepFace by Serengil was used for the facial recognition pipeline. Python FastAPI OpenAI Whisper DeepFace PostgreSQL SQLAlchemy

Data Scientist | Xtrada

–

Antwerp, Flanders, Belgium

Used Python libraries (SpaCy, ...) to extract named entities from text via NER model training and implementation in .NET. Model recall score: 87%.

Projects:

  • VhAuctions NER Inventory Model — Named Entity Recognition machine learning model to extract inventory items from an audio transcription. Python SpaCy Pandas NumPy .NET NER

Software Crafter | Xtrada

–

Antwerp, Flanders, Belgium

Software modernization within the .NET stack following domain-driven design and clean code principles. Implementation of Azure AI services in a .NET solution.

.NET DDD CleanCode CleanArchitecture

.NET/Blazor Software Crafter · aXinco | Xtrada

–

Anvers, Région flamande, Belgique

Crafted the webapp in .NET / Blazor following DDD and clean code principles.

Projects:

  • Kwalitijd — Survey manager for sports clubs and federations. .NET C# Blazor EntityFramework xUnit SQL Server DDD

Education

Master of Science - MSc in Computer Science (work-study program) — specialised professional focus (120 ECTS)

UMons

–

13.04/20 — obtained with satisfaction

MSc dissertation: « Un cadre computationnel multicritère pour l'exploration de projections spatio-temporelles dans des systèmes sociaux complexes » — carried out at the UMONS Service d'Algorithmique. Student representative & buddy TandeMons. Core coursework: software engineering & project management, artificial intelligence, databases, data structures, operational research, cryptography & IT security, and ethics & computer law, with two paid company internships.

Python LaTeX DDD CleanArchitecture

Projects:

  • Mémoire de master — MSc dissertation « Un cadre computationnel multicritère pour l'exploration de projections spatio-temporelles dans des systèmes sociaux complexes », UMONS Service d'Algorithmique — the R&D of Acteble's planning engine. Multi-objective group formation under spatio-temporal constraints: NP-hard by reduction from k-CLIQUE; admissible groups enumerated as bicliques (Close-by-One); an iterative Pareto solver with termination and local-convergence guarantees; one DSL compiled to Python, MiniZinc and Rust that yield bit-identical fronts, the Rust output running in the Acteble API. Benchmarked against CP-SAT, NSGA-II, MOEA/D and SPEA2 (hypervolume, IGD, 30 seeds, Wilcoxon–Holm): significantly ahead of MOEA/D at every size, of NSGA-II and SPEA2 from 500 users. · Dissertation Python Rust LaTeX MiniZinc ORTools ConstraintProgramming CombinatorialOptimization MultiObjectiveOptimization Pareto DSL MutationTesting
  • Synergy — Internal platform that lets parliamentary staff search, explore and converse with the archives of the Belgian Federal Parliament, powered by a retrieval-augmented pipeline with bilingual FR/NL support. · Platform Python Java .NET RAG AI
  • fedrag-be — Open, reproducible protocol that benchmarks retrieval strategies on the bilingual Senate corpus, measuring FR/NL robustness across the retrieval pipeline. · Research RAG Python Evaluation Benchmark OCR SentenceTransformers Pandas
  • Emvi App — AI powered visual assistant for visually impaired people providing them with a description of their environment, OCR, code scans (QR codes & barcodes), and an adapted Valhalla routing system for the visually impaired. · Mobile Application Flutter Firebase OpenAI Valhalla AI Dart
  • Remi — Reminiscence application allowing people with cognitive issues to recover their memories through descriptions of their photos powered by facial recognition and LLMs. DeepFace by Serengil was used for the facial recognition pipeline. · AI Application Python FastAPI OpenAI Whisper DeepFace PostgreSQL SQLAlchemy

Course units:

2022-2023 · Bridging block

  • Algorithmique — Algorithmics Algorithms DataStructures Complexity Trees
  • Bases de données I — Databases I SQL RelationalAlgebra Normalization Indexing NoSQL BigData
  • Mathématique — Mathematics GraphTheory Combinatorics Complexity PropositionalLogic PredicateLogic
  • Modélisation logicielle — Software modelling Java UML DesignPatterns UnitTesting MockTesting BDD

2023-2024 · Bridging block

2024-2025 · Master 1

2025-2026 · Master 2

Volunteer:

  • Student Representative — UMons, –
  • Buddy TandeMons — UMons, –

Professional Bachelor's degree in Information Systems Management

Ecole Pratique Hautes Etudes Commerciales (EPHEC-EPS)

–

62.8%, Satis Bene

Student representative and tutor.

TFE: WebMenu 2.0

Programme: analysis & design, programming in .NET, Java and web, relational databases, e-business and integrated management software (ERP), networking and IT project management.

SQL C# .NET Java Python JS HTML CSS

Projects:

  • WebMenu — QR code based cash register for HoReCa establishments. .NET Flutter SQL Server QRCode

Course units:

2018-2019

2019-2020

2020-2021

2021-2022

Volunteer:

  • Student Representative — EPHEC École Supérieure de Promotion Sociale, –
  • Tutor — EPHEC École Supérieure de Promotion Sociale, –

Attestation in 7e Spéciale Mathématiques

Institut Saint-Louis Bruxelles

–

Attestation

Bachelor in Political Sciences in General orientation

Université Saint-Louis - Bruxelles

–

29 credits earned in 2016-2017, contact me for more information.

Course units:

2016-2017

  • Économie I — Economics I Microeconomics CompetitiveMarkets FirmBehaviour MarketFailure
  • Économie II — Economics II ImperfectCompetition Macroeconomics NationalIncome MonetaryMarket
  • Science politique — Political science PoliticalScience Power State Democracy
  • Séminaire : penser le social — Seminar: thinking the social Epistemology Durkheim Weber Marx
  • Séminaire : principes et méthodes en sciences sociales — Seminar: principles and methods in the social sciences AcademicWriting Citation Epistemology
  • Socio-économie des médias — Socio-economics of the media MediaEconomics Advertising MediaRegulation WebEconomy
  • Anglais I (Saint-Louis) — English I English
  • Néerlandais I — Dutch I Dutch

Cours préparatoires in Médecine et dentisterie

UCLouvain - Université catholique de Louvain

–

Attestation

C.E.S.S. in General Studies Maths & Modern languages

Centre Scolaire Saint-Adrien - Val Duchesse

–

Satis bene

in General studies Latin & Greek

Lycée Mater Dei

–

References

Waseem Virk, Flutter Dev Emvi.ai

Working alongside Baptiste Grosjean on the EMVI project has been an incredibly rewarding experience—both professionally and personally. Not only is Baptiste a highly skilled developer with a sharp eye for design and functionality, but he’s also been a mentor and an inspiration throughout our collaboration.

I’ve learned so much from him—from best practices in Flutter development to the importance of thoughtful UI/UX and clean architecture. He’s always willing to share his knowledge, explain complex ideas with clarity, and support the team in any way he can.

What stands out the most is Baptiste’s ability to turn challenges into opportunities. His calm, focused approach and problem-solving mindset helped us overcome technical hurdles and build features that truly improve user experience. On top of that, his collaborative nature made working as a team feel seamless and motivating.

If you're looking for someone who not only delivers exceptional results but also uplifts everyone around him, I can't recommend Baptiste enough. He’s a fantastic developer, a great teammate, and someone I’ve been lucky to learn from.

Tino Schuerewegen, Software developer at Xtrada

I had the pleasure of working with Baptiste for a year, with the added joy of mentoring him on a project for three months. If there's one thing that stands out about Baptiste, it's his boundless energy. Whether it's 9 AM or 9 PM, he's always the most enthusiastic person in the room—sometimes even more enthusiastic than the coffee machine.

Baptiste brings a contagious energy to any project he's part of. He’s outgoing, smart, and has an eagerness to learn that is truly admirable. Whether he's diving into a complex task or asking insightful questions, he's always in search of knowledge. His enthusiasm for learning, especially when it comes to leveraging tools like ChatGPT, is both impressive and a little intimidating. Seriously, if ChatGPT had a best friend, it would be Baptiste!

He’s also incredibly hands-on, never shying away from rolling up his sleeves and getting deep into the work. His approach isn't just theoretical; he's all about practical, tangible results.

In summary, if you're looking for someone who brings enthusiasm, intelligence, and a touch of humor to every task, Baptiste is your person. Working with him was not just productive, but genuinely enjoyable.

Emiel Van Gysegem, Marketing and operations at Xtra Groep

Hoewel we niet direct samenwerkten, had ik altijd een heel fijne connectie met Baptiste. In een mengelmoes van Engels, Nederlands en Frans deelden we vaak leuke gesprekken. Zijn enthousiasme en energie zijn echt aanstekelijk, en hij weet een prettige, informele sfeer te creëren in elke interactie. Baptiste is iemand die een positieve dynamiek met zich meebrengt.

Steven Claus, CFO at Xtra Groep

Baptiste is a full-stack software developer and is driven by an unwavering determination. This mindset permeates every aspect of his career. He has worked in various fields, allowing him to quickly adapt to any situation. These roles have honed both his technical and interpersonal skills, making him a versatile collaborator who significantly impacts every project he joins. Fueled by a constant desire to learn, he continually updates his knowledge through a master’s degree in computer science. This ongoing learning journey makes him a well-rounded IT professional in the field of computer science.

Tjörven Janssens, software developer at Xtrada

Baptiste is naast een software ontwikkelaar, graag bezig met data-analyse en is een expert in het gebruik van ChatGPT. Hij leert graag nieuwe dingen en doet dit ook snel. Hij is erg enthousiast in omgang en staat steeds klaar voor een vriendelijk woord of wat advies.

Michael Culot, Sales manager at Xtrada

Baptiste is a great and devoted developer who’s eager to keep learning new technologies and elevate his skill set. You would be amazed about not only his knowledge but also his warm open enthusiasm. Baptiste, you’re going to be doing great things in your life, just keep your vibrant spirit ✊