Freelance
AI Software Architect & Consultant · 2021 – present
My independent practice (Edvantage): end-to-end consulting and product development —applied AI, backend and infrastructure— for clients, and the umbrella under which I co-founded Baboon Technologies and Rackety TV. From idea to production: agentic chat wired to each client’s tools, RAG, AI document processing and full infrastructure.
Projects
Chat Engine
Chat Engine
A multi-client agentic chat engine with RAG, external tools and generative BI, isolated per client.
- The problem
- Give each client an assistant that answers any question about their documents and data, connects to their tools and generates charts and dashboards, while keeping data isolated.
- Stack decision
- FastAPI + LangChain/LangGraph, RAG indexing with pgvector and Cohere Rerank, orchestration of several LLMs by quality/price (OpenRouter, Gemini, Deepseek) and tools via MCP/FastMCP. Fully traceable with Langfuse.
- The technical challenge
- During indexing, automatically clustering information, detecting discrepancies and allowing manual curation; and isolating data by project_id in a reusable multi-tenant engine.
- Impact
- A reusable engine in production for several clients (financial Q&A, margin and profitability monitoring with charts).
AI order extraction & validation
AI order extraction & validation
A generic document-processing engine that, from an Outlook add-in, extracts the order from each email and validates it against SAP in a split document/data screen.
- The problem
- Turning orders that arrive by email —heterogeneous documents, a different layout per client— into structured orders validated against SAP, solving that the products in the document match neither the name nor the format of those in the client’s database.
- Stack decision
- A generic document-processing engine combining pdfplumber for structured PDFs, Azure Document AI for complex layouts and an OpenAI LLM for the unstructured parts. Extraction is materialized as a per-client "mask" that is reused on every later order of the same layout, avoiding reprocessing. The Outlook add-in triggers the flow from the email itself, and a split screen sets the attached document against the extracted data —editable and wired to SAP— with automatic price calculation to sanity-check the order.
- The technical challenge
- Building the generic reusable extraction-mask engine and, on top of it, a learning engine: any user correction (product name, format, SAP mapping) is detected automatically and proposed as a learning to validate. Even a product’s correct format was inferred from the price the client itself set in the order, given that each client had its own pricing.
- Impact
- Processes around 600 orders a month straight from Outlook. By reusing each client’s mask, recurring orders are resolved without reprocessing, and the learning engine improves extraction with every user-validated correction.
PrismaRiders
PrismaRiders
A platform for at-home therapists with a slot optimizer that minimizes travel and waiting time.
- The problem
- Cutting travel and waiting time for at-home therapists, bringing several roles (therapists, patients, centers, guardians, admin), clinical records, calendar and payments into a single platform.
- Stack decision
- Next.js/React + FastAPI/SQLAlchemy on PostgreSQL; Stripe (recurring payments and Connect), Google Calendar (two-way sync) and OpenRouteService for real distances/times.
- The technical challenge
- The slot optimizer: it scores (0–100) each therapist’s gaps and places every patient in the best one using real locations, penalizing dead waiting time and travel.
Ecosystem infrastructure & observability
Ecosystem infrastructure & observability
The cross-cutting infrastructure that orchestrates, deploys and monitors every service and project.
- The problem
- Managing multiple services and platforms in a reproducible, well-monitored way, with continuous deployment, backups and alerts.
- Stack decision
- Dokploy + Docker for orchestration, Traefik as reverse proxy, DNS on Cloudflare, WireGuard VPN, SSH tunnels with socat, daily S3 backups and job monitoring with Uptime Kuma plus centralized observability.