Skip to content
mike.hamata

Fintech operator · AI product builder · Toronto

I spent 13 years deciding what not to let through. Now building AI agents that know when not to.

That was thirteen years of risk and credit at an $85B brokerage, where I still run the desk: find what breaks before it does, and protect the customer on the other side of every account. Nights and weekends, I build AI products end to end. I ask the same two questions of everything I ship: what does this do on its worst day, and what does it do for the customer?

8 case studies·7 live·13 years in risk and credit
“Start with the customer experience and work backwards to the technology.”
Steve Jobs

Currently: shipping Mila and reading AI Engineering by Chip Huyen

Selected work

all projects →

DentinFlow

In build

An AI voice agent, "Mila," that answers the phone for dental practices day and night, books appointments through normal conversation, and keeps after-hours calls from rolling to voicemail.

AI stack: Practice-scoped JSON embeddings use in-process cosine ranking with keyword fallback. Vapi conversations reach bounded scheduling tools; identity checks, signed slots and idempotent writes protect the appointment ledger.

VapiExpressPrismaPostgresOpenAI

Isaac

Live

An AI coaching app with a soul: eight personality archetypes, a five-layer memory updated through background reflection, and proactive daily check-ins. Built in React Native, shipped to TestFlight.

AI stack: Claude receives structured profiles, goals, memory layers and recent conversations from Supabase. Background reflection and weekly synthesis update stored context; there is no vector retrieval or model training in this path.

ExpoReact NativeExpo RouterTypeScriptZustand

PRAXIS

Live

A gamified, industry-generic way to actually practice product management. A six-level path from your first PM job to VP where you build mastery by doing the reps: drills, written artifacts, stakeholder roleplay, and a simulation that teaches itself. Runs in the browser, no signup.

AI stack: Deterministic simulations sit alongside bounded Claude rubric grading and roleplay. Prompt-driven JSON is normalized into feedback; thirty synthetic calibration samples rehearse a human-panel study, with conditional database-backed budgets.

Next.jsTypeScriptZustandTailwindAnthropic SDK

Filings Analyst

Live

A research workspace over SEC filings that separates structured financial facts from narrative retrieval, checks generated claims against their sources, and makes missing evidence visible.

AI stack: text-embedding-3-small (1,536 dimensions), section-aware parent/child chunks, pgvector + PostgreSQL full-text search and rank fusion. LangGraph verifies financial claims against XBRL facts and source inputs.

PythonLangGraphFastAPIPostgrespgvector

Canadian Policy Navigator

Live

A policy workbench that keeps employee submissions outside the answer library until independent review, with exact document versions and source-backed retrieval.

AI stack: text-embedding-3-small + Chroma, BM25Plus and rank fusion retrieve eligible policy editions. Optional Cohere reranking; private employee uploads stay outside external embedding and generation calls.

PythonFastAPIReactTypeScriptSQLite

Evidence Desk

Live

A research workspace with inspectable source support, bounded manual and LangGraph agent execution, and reviewed explanations and diagrams.

AI stack: OpenAI web search and safe page reading feed local term-overlap passages, with no vector index. Manual/LangGraph stages checkpoint research and separately audit claims, lessons and diagrams.

PythonFastAPILangGraphTypeScriptVite

Realty Support

Live

A fictional brokerage support workspace with client/staff views, private notes, property exploration and human-approved appointment changes.

AI stack: Guided rules use selected-client records; optional gpt-4.1-mini has no write tools. Staff approval, original-time checks and collision checks own appointment changes. No embeddings or vector retrieval.

PythonFastAPITypeScriptViteSQLite

Model Observatory

Live

A lab for comparing three model providers, inspecting token usage, and separating prepared examples from measured evidence.

AI stack: Native OpenAI, Google and Anthropic adapters, validated structured answers and a bounded calculator loop. Provider token accounting and human task scores stay inspectable; no embeddings or RAG.

PythonFastAPITypeScriptViteSQLite