RAG Lab
Lexical retrieval · extractive synthesis
Explore a transparent, in-memory retrieval pipeline built in TypeScript. It scores a curated corpus, ranks matching sources, and assembles an answer from that evidence without an external model.
This is an educational approximation of a RAG architecture, not an LLM, embedding model, or vector database.
Systems-minded engineer, remote-first since 2016
Over the last 14 years I've shipped production software for early-stage startups and large companies — full-stack web, React Native mobile, real-time data products, and the supporting backend services that keep them honest.
I've been fully remote since 2016, working with distributed teams across the United States and internationally. I own work end-to-end, communicate asynchronously, and care just as much about the systems we build as the people we build them with.
What the work delivers
Less buzzword bingo, more outcomes. The thread across my work is building software that ships, holds up under load, and stays maintainable.
Architecture that survives
Clear domain boundaries, small focused modules, and types that document intent — so the system is easy to change six months later, not just today.
Systems thinking
Treat data flow, failure modes, and observability as first-class concerns. The interesting bugs live between services, not inside them.
Pragmatic problem solving
Reach for the smallest tool that fits, ship a working slice, then harden where reality demands it. Avoid framework-driven architecture.
Why this demo exists
Retrieval-Augmented Generation grounds an answer in trusted context instead of relying on a model's memory alone. The pipeline below runs entirely in this app — no external APIs — so you can read every line and see exactly how the data flows. The point isn't the novelty; it's the structure: deterministic retrieval, observable generation, typed boundaries between layers.
- Step 1
Knowledge
A small curated corpus about my work, stack, and approach.
- Step 2
Retrieve
Score documents against the query, return the top matches.
- Step 3
Generate
Synthesize a grounded answer from the retrieved context.
Ask the knowledge base
The pipeline retrieves the most relevant documents and synthesizes a grounded answer. No external model — pure TypeScript, end to end.
Evaluating applied AI or retrieval architecture?
Explore the broader AI-assisted engineering approach, or start a conversation about the constraints in your own system.