All 6 projects, newest first, each with the problem it solved, how it was built and what changed as a result.
August 2026
Odoo ERP Deployment: Internal Ops & CRM
Odoo 19DockerDokployCustom Modules
The problem
Qualfix needed one internal management and CRM system spanning two legal entities (Qualfix BD and Qualfix USA), including multi-currency operation.
What I built
Deployed and configured Odoo 19 Community on self-hosted Docker infrastructure via Dokploy, covering the CRM → Sales → Project → Invoicing pipeline, custom branded modules (login theme, report layout, portal theming), multi-currency support and banking integration.
Outcome
Both entities run day-to-day operations on it, maintained in-house rather than outsourced.
July 2026
Salesforce → Odoo Migration
PythonAI AgentsData Migration
The problem
Fourteen years of historical business data sat in Salesforce and had to move into Odoo, where the schema and structure did not line up field-for-field.
What I built
An AI agent-assisted migration: agents reconciled schema and structural differences between the two systems, with the mapping reviewed rather than hand-written record by record.
Outcome
Completed in 4 weeks. Work that would typically take months of planning.
April to May 2026
Email-to-Data Automation Pipeline
LangGraphGemini 2.5 ProPydanticMLflow
The problem
70-100 sales emails arrived daily carrying PDFs, images and spreadsheets in no fixed format. Extracting them into a standard template was entirely manual.
What I built
An agent built in LangGraph classifies each email and extracts structured records in a single Gemini 2.5 Pro call, with the output schema enforced by Pydantic so nothing downstream parses free text. MLflow 3.x traces every email with token cost; Prometheus and Grafana track queue depth, p95 latency and monthly billing. Runs on FastAPI and async PostgreSQL in Docker Compose.
Outcome
Daily processing dropped to roughly 5 minutes, down from a fully manual process, and the cost and latency of every run is now visible.
March 2026
AI Voice Agent for Tier 1 Support
Voice AIRetell AIGeminiOpenAIElevenLabs
The problem
Tier 1 technical support calls follow deterministic workflows, but callers rarely stay on script, so a rigid IVR fails and a purely free-form LLM drifts.
What I built
Combined structured call logic with LLM-driven conversation: the agent follows the defined support workflow while handling dynamic, off-script situations, built on Retell AI with Gemini, OpenAI and ElevenLabs.
Outcome
Proof-of-concept covering inbound and outbound calls; currently in review.
2025
GPO Entity Matching Engine
Data SciencePythonPandasSQL
The problem
Group Purchasing Organization contract data had to be matched against end-user records across inconsistent entity names. Anything the system missed fell to manual reconciliation, which did not scale with contract volume.
What I built
Reworked the matching logic and cleaned the underlying data: normalising entity names, resolving structural differences between sources, and tightening the comparison rules rather than reaching for a heavier model.
Outcome
Automatic match rate went from 37% to about 88%, removing most of the manual reconciliation load.
Hiring teams read applications in arrival order, so the strongest candidates are not necessarily the ones seen first.
What I built
A Next.js and PostgreSQL job board with an LLM that scores each applicant against the job description. Background processing and email notifications run on Inngest, keeping the request path fast.
Outcome
Reviewers see ranked candidates rather than a raw queue. Source is public on GitHub.
Lutful Kabir
AI Engineer @ Qualfix, building data pipelines, voice AI agents, and ERP-integrated automation.