Tech & AI
Fixing hiring, starting with the problem
I build AI products for hiring. Not because AI is exciting, but because hiring is broken and, done right, AI is the best tool we have to make it human again.
The problem
Hiring was already broken. AI made one part worse.
Hiring was slow and inefficient long before AI. Then generative AI arrived, and every open role started drawing a flood of polished, AI-written resumes that all look perfect. When every applicant looks perfect on paper, the resume stops being a signal at all. Recruiters drown, genuinely strong candidates go unseen, and the layers of middlemen between talent and opportunity only add friction. The volume went up. The signal went down.
The founder
How I build
I start with people, not technology. Before writing a line of code I sit with the stakeholders, the hiring managers, the recruiters, and the candidates, to find the root problem instead of the loudest symptom. I ran more than 100 discovery interviews, then built small MVPs to test what actually moves the needle rather than what sounds good in a pitch.
Because the whole product runs on language models, I treated evaluation as a first-class discipline: building evals to measure output quality objectively, and comparing several large language models to choose the right one for each task instead of the trendiest. Then I recruited and led a 14-person team and launched two products: VideoMatch and Jobz.
Product one
VideoMatch, a Bumble for jobs
VideoMatch is a two-sided marketplace powered by video and AI. Instead of a flat resume, candidates introduce themselves in a short video; hiring managers browse real people and reach out directly. Video plus AI lets candidates be seen for who they actually are, and lets both sides skip the middleman entirely, connecting talent and opportunity without a recruiter in the middle or a resume black hole in the way.
Product two
Jobz, a team of AI agents
Jobz is a collection of AI agents that help companies hire better and help candidates get found more efficiently. Each agent owns one part of the pipeline: candidate signals are turned into structured profiles, embedded into a vector space, reasoned over by large language models with retrieval and evaluation loops, then scored against the specific role, so a hiring manager gets a shortlist they can trust, with the reasoning shown, not hidden.
Sourcing Agent
Continuously scans public talent signals, resolves duplicate identities across sources, and builds a vector embedding of each candidate. It runs semantic similarity against the open role to surface strong matches before they ever apply, and re-ranks as new signals arrive.
Screening Agent
Parses every application into a structured profile, normalizing titles, skills, and tenure. It reads the resume, portfolio, and answers together and reasons over the full context with an LLM instead of matching keywords, then flags the few things a human should actually look at.
Outreach Agent
Drafts first-touch messages grounded in the candidate's real background and the specific role, tuned to tone and channel. It personalizes at scale, sequences follow-ups automatically, and learns from reply rates which openings land.
Ranking Agent
Scores each candidate against a role-specific rubric derived from the job itself, not a generic keyword list. It calibrates across the whole pipeline so scores are comparable, and it explains every score so the shortlist is transparent and defensible.
More agents in the works ...
Under the hood
Selected technical work
A sample of the systems I have architected and shipped, spanning AI, a two-sided marketplace, and the infrastructure that runs it.
AI job-fit scoring
An AI engine that reads a resume and a job description and returns a 0 to 100 fit score with the strengths and gaps behind it, the judgment a strong recruiter makes, automated. Built on large language models (Google Gemini) with structured output and resume PDF parsing.
LLM infrastructure and multi-model routing
Migrated the AI stack from OpenAI to Google Gemini behind a routing layer that picks the right model for each task. Automated evaluation tests prove the new model scores as well as the old, with a one-line kill switch to roll back, roughly halving response time with no loss in quality.
Agentic AI distribution (MCP)
Put the product inside Claude and ChatGPT. I built a Model Context Protocol server so anyone can ask their AI assistant whether a job fits them and get the scoring back, including a visual result card in ChatGPT, and listed it in Anthropic's connector directory.
AI candidate sourcing and enrichment
An autonomous tool that discovers public professional profiles and uses AI to parse them into clean, structured candidate records, turning messy data into a searchable talent pool with no manual entry and built-in safeguards against duplicates.
Two-sided marketplace matching
The matching core of a two-sided hiring marketplace where candidates and hiring managers connect directly. A swipe-to-match experience ranked by AI fit score, with approval gates so only real, vetted profiles surface, and search ranking on Elasticsearch.
Candidate web app and conversion funnels
Shipped the candidate web product, create a video profile, check your fit, get daily job matches, and instrumented the full signup funnel to see exactly where users drop off and A/B test the fixes. Built in Next.js with product analytics.
Multi-service integration architecture
Wired one product across a Rails backend, a Next.js web app, a React Native mobile app and a browser extension, plus a dozen third-party services for video, payments, email, Slack and LinkedIn, coordinated with webhooks and asynchronous pipelines so everything stays in sync.
Automated testing and adversarial QA
The safety net: automated test suites on backend and front-end, end-to-end audits of the async flows, and an adversarial security review that runs before every deploy and has caught real vulnerabilities before they shipped.
Serverless video pipeline
A pipeline that takes a set of short recorded video answers, stitches them into one polished clip with FFmpeg, and attaches it to the user's profile, fully automated through webhooks and cloud storage with no manual editing.
Cloud infrastructure and observability
Run production infrastructure on AWS, deploys, encrypted secrets and logging, and debug live issues straight from production logs, for example root-causing a login failure by reading the server's request logs. Elastic Beanstalk, Amplify, CloudWatch and CI/CD.