Carlos
Altamirano
Applied AI Builder with 7 years in finance and valuations — MBA, Industrial Engineer. Shipping AI products that measure, model, and accelerate how businesses work.
— C. Altamirano · 2026 —
Business Analyst and AI Builder with 7+ years in banking and valuations, based in Vancouver (Permanent Resident). I ship production AI systems — FlowLens (process mining, PM4Py + LLM), FinSight Pro (multi-agent LangGraph with pgvector RAG over SEC filings), CleanTably (live SaaS, 100% pipeline success). Finance depth most AI builders don't have ($500M restructured, 500+ valuations, MBA), production shipping most analysts don't have. That's the edge I bring.
Three side projects — each closes a specific technical gap most analyst portfolios can't.
FlowLens
Finds bottlenecks in event logs
Stack
PM4Py
FastAPI
polars
Gemini 2.0 Flash
React Flow
The gap
Dashboards show you that something is slow. They don't show you where the bottleneck lives or why cases skip steps. With 100k+ events, only process mining (PM4Py) can reconstruct the real path.
What I built
Three steps: (1) rebuild the actual process from raw event logs (PM4Py), (2) rank the slowest steps by worst-case time — not averages, so the long-tail problems don't hide, (3) an AI layer (Gemini 2.0 Flash) explains why each bottleneck happens, using only the numbers (never the raw graph) so it can't make things up.
Key decision
The AI never sees the actual process map — it only gets 8 summary numbers. That way it can't invent steps that don't exist, and every run costs less than a cent. The trade-off: the AI can't reason freely about the shape of the process, only about the numbers it's given.
Lessons learned
Per-activity LLM prompts on every transition → cost 8× and findings got noisier. Reverted to aggregated-metric summary only.
FinSight Pro
Routes information across extense datasets and long documents
Stack
LangGraph
pgvector
voyage-finance-2
BM25
Ragas
The gap
Most RAG systems treat every question the same: vector-search the docs, return the top chunks. But real questions split into types — "what's the number" needs a database query, "what does the filing say about X" needs document search, "is this risky" needs both plus rules. One pipeline can't serve all three without inventing answers. You need a router that picks the right tool per question — multi-agent routing (LangGraph).
What I built
Three steps: (1) a router (LangGraph + Gemini 2.0 Flash) sends each question to the right specialist — numbers, text, comparison, or risk; (2) text questions run two searches in parallel — finance-trained embeddings (voyage-finance-2) and keyword search for tickers — then merge the rankings; (3) risk questions run 6 hard-coded financial rules on the actual numbers, with no AI, so the verdict is always reproducible.
Key decision
The risk score doesn't use AI at all. It runs 6 fixed rules on the actual numbers and outputs the same answer every time. An LLM would write a nicer-sounding explanation, but it could also change its mind between two runs of the same question — and an analyst defending a recommendation can't have that. The trade-off: the output reads like a checklist, not a story.
Lessons learned
First run used text-embedding-3-small + high-k retrieval → Ragas Context Precision 0.44 on finance queries. Switched stack after measuring, not after reading a blog.
CleanTably
Turns any document into a clean, ready-to-use Excel sheet
Stack
FastAPI
Gemini 2.0 Flash
OpenRouter
Railway
Cloudflare R2
The gap
Most PDF scanners (Adobe, Klippa) work fine when the document is clean and predictable — a printed invoice, fixed layout. They break the moment a page is stamped, rotated, photographed, or written in two currencies. About 3 in 10 real-world documents hit one of those cases, and a bookkeeper ends up retyping anyway. To skip the cleanup step entirely, you need a model that reads the page directly, the way a human does — vision-capable LLMs (Gemini 2.0 Flash via OpenRouter).
What I built
Three steps: (1) look at the first page and classify it across 7 document types (Gemini 2.0 Flash); (2) pull the fields into a clean table using a prompt tuned to that type, chunking long PDFs and stitching the output into one Excel sheet; (3) when the model's reply comes back broken — missing brackets, stray formatting — 5 local repair tricks fix it before paying for a second model call. Total cost stays at $0.0002 per document.
Key decision
The whole pipeline reads PDFs through Gemini 2.0 Flash — no OCR step in front, the model sees the page exactly as a person does, stamps and rotations included. And every call goes through OpenRouter.
Lessons learned
Async batch processing for 20+ page PDFs → Railway's 5-min timeout killed jobs silently. Rewrote to synchronous 12-page chunks with explicit progress.
A
AI & LLMs
07- LangGraph
- RAG / pgvector
- Claude API
- Multi-agent systems
- Prompt Engineering
- OpenRouter
- AI model evaluation
E
Engineering
07- Python
- FastAPI
- SQL (Advanced)
- JavaScript
- HTML / CSS
- Cloudflare Pages
- Railway · CI/CD
F
Finance & Analytics
07- Financial Analysis (7y)
- Portfolio Management
- Asset Valuation
- Risk Assessment
- Excel / Dashboards
- Credit Analysis
- KPI Design
Loan Portfolio▲ restructured
$500M
150,000 accounts / 3 months
Events Analyzed4 datasets
1.8M
FlowLens · compliance to ITSM
AI Appsin production
3
FinSight · CleanTably · FlowLens
Experienceyears
7 yrs
Finance × AI
Mar 2024 —
Present
Present
Valuations Analyst
Verus Valuations Ltd · Maple Ridge, BC
- Led $25M fleet appraisal — 80 Caterpillar units, team of 3 analysts, bank-grade deliverables
- 500+ individual heavy equipment valuations for banking credit decisions
- Promoted within 11 months on manager recommendation
- Designed a 3-phase AI automation prototype — own initiative
2017 — 2021
Collections Strategy → Jr. Manager
BanBif · Lima, Peru
- Managed analytics and strategy for $30M portfolio of 25,000+ delinquent accounts
- Co-developed $500M COVID loan restructuring covering 150,000 accounts in 3 months
- Built SQL pipelines for daily portfolio segmentation, targeting and KPI reporting
- Promoted to Junior Manager within the same department
2015 — 2017
Intern — Credit Risk
Banco de Crédito BCP · Lima, Peru
- Managed real estate appraisal process for 100+ properties valued at $75M
- Coordinated 20+ external appraisal firms across the country
'23Master
MBA — Business Administration
University Canada West · Vancouver, BC
'20Master
Master · Customer Intelligence
Master School UTP · Lima, Peru
'17Bachelor
B.Sc. Industrial Engineering
Universidad de Lima · Peru
Let's work.
caltamiranocampos@gmail.com · Vancouver, BC · © 2026