I architect the agentic systems the investment teams run on. A multi-agent extraction pipeline that turns unstructured documents into structured metrics, and an orchestration layer over 30+ institutional research providers where a single agent run picks its own tools, resolves the question, and answers with citations. Versioned agents, eval gates before release, trace telemetry on every run.
Business Intelligence Developer
May 2024 — Jul 2025
Built the warehouse-backed reporting the investment and operations teams work from, and automated the catalog sync, lineage and ownership behind it, so a metric meant the same thing in two different reports.
IT Technical Support
Mar 2022 — May 2024
Two years of escalations, security policy, and the process fixes that stopped the same ticket from coming back a third time. Most of what I know about how production fails, I learned here rather than from a design doc.
Nuvia/ Montreal
Founder
Apr 2025 — Present
AI consulting for Canadian businesses. I find the two or three workflows where automation pays for itself, then build and deploy them on infrastructure the client owns and can audit.
CISSS de la Montérégie-Est/ Longueuil
IT Specialist Level II
Mar 2021 — Mar 2022
Infrastructure deployment and level-2 support across a regional health network, where an outage reaches clinical staff in minutes and the rollback plan matters more than the change itself.
Collège de Maisonneuve/ Montreal
IT Technician Level I
Aug 2020 — Jan 2022
My first job in tech: SLA-bound ticket work, hands-on troubleshooting, and a lot of practice explaining a complicated failure to someone who just wants their machine back.
How I build
01Context
Most of my agent bugs were never model bugs.
Every time an extraction came out wrong and I went looking, the model had done something reasonable with something it should never have been handed. So I spend most of my time on what goes into the window, and very little on the prompt.
Retrieval over 30+ research providers
02Evals
I stopped trusting changes I could not measure.
A demo tells you the happy path works. It tells you nothing about the next forty documents. I build the eval set first now, even when it feels like a detour, because the alternative is editing prompts and hoping.
Eval gate on a versioned extraction agent
03Quiet failures
The expensive failures are the ones nobody sees.
A tool returns something useless, the model works around it, the run finishes clean, and nobody gets paged. That whole class of failure is why I trace every tool call going in and coming out, instead of logging only the ones that throw.
Trace-level observability on every agent run
Systems
Things people depend on at work.
04 systems
012026
Video Extraction
Structured extraction for video
Private beta
A video and a schema in, typed JSON out. Transcription, scene detection, frame dedup, vision, and a temporal knowledge graph, with every value pointing back to the second and the modality it came from. Exposed as an API, an MCP server for agents, and apps.
My part: Architecture, extraction pipeline, API and SDK.
TypeScript·Cloudflare Workers·D1·Python·MCP
022026
Document AI Extraction
Four modules, one metric at the end
In production
Turns an unstructured document into a metric an investment team can act on. The parsing lane reads whatever the file actually holds, text and tables but also charts, images, audio and video, and lands it with a trace of every step. A multi-agent extraction lane runs one versioned agent per metric behind an eval gate, writing results into a staging layer. A desktop cockpit lets the owner of a document correct its metadata. A web app is where a human confirms before anything promotes. Telemetry on every agent run, and nothing promotes on its own.
My part: Architecture, data model, the extraction agents and their eval harness, release pipeline across three environments.
Client system. The names, the internals, and the data stay with the client.
032026
Macro Economics Research Agents
Multi-agent system with security-level access and parallelization
Shipped
Fixed income and currencies research, searchable in one place. A named agent object owns routing and search strategy, the backend executes its tools, and a citation composer links every claim back to the report and the page it came from. One agent run resolves a conversation turn. Runs as a container service beside the warehouse, with a desktop client and trace-level observability over every run.
My part: Agent design, retrieval and tool layer, desktop client, deployment.
Python·Flask·Next.js·Cortex Agents·SPCS·Electron
Client system. The names, the internals, and the data stay with the client.
042025
Contract management system
Contract lifecycle out of the inbox
In production
Contract records with verified status, period selection, and an in-app PDF viewer, plus a sync that pushes contract metadata into the data catalog. Replaced a process running on shared spreadsheets and email threads.
My part: Full-stack build, catalog sync, deployment.
Python·React·Snowflake·Atlan
Client system. The names, the internals, and the data stay with the client.
Open Source
Built in the open, run on your own hardware.
05 projects
012026
Opale UI
A design system with an agent that applies it
Next.js and React 19 with shader-level Three.js scenes, and an agent trained on the design rules so they hold across builds. This site runs on it.
A Go CLI that indexes a folder and answers questions about it. Embeddings and generation run locally against Ollama. Single binary, no network, no API key.