.....+..............................................................................................................
....................................................................................................................
.......................................................................+&&&&+.......................................
.....................................................................&&&&&&&&&&.....................................
....................................................................&&&&&&&&&&&&:...................................
...................................................................&&&&&&&&&&&&&&...................................
.................................................................. &&&&&&&&&&&&&& ..................................
...................................................................&&&&&&&$&$&&&&&$.................................
..................................................................:&&&&X&&&&&&&&&X:.................................
..................................................................;&&&&X$&&&&&&$&...................................
..................................................................:&&&&&&&&&&&&$....................................
...................................................................&&&&&&&&&&&&;....................................
...................................................... ... ........ .&&&&&&&&&& .;:.................................
....................................................;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&.............................
..................................................$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$............................
.................................................&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ...........................
...............................................:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$&&&&:...........................
.............................................+&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$&&&&X...........................
...........................................&&&&&&&&&&&+&&&&&&&&&&&&&&&&&&&&&&&&&&&X&&&&&$...........................
........................................+&&&&&&&&&$...&&&&&&&&&&&&&&&&&&&&&&&&&&&&X&&&&&&...........................
...................................... &&&&&&&&&+.....&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&...........................
..................................... &&&&&&&$... ......+&&&&&&&&&&&&&&&&&&&&&&&&$&&&&&&&...........................
..................................... &&&&&X&$$&$$XXXXXXXXX&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;.........................
..................................... &&&&$$&&&&&&&&&&&&&&&&&x&&&&&&&&&&&&&&&$&&X&&&+&&&&&&&&&&: . .................
......................................&&&&+X&&&&&&&&&&&&&&&&&&&$X$&&&&&&&&&&&&&&&&&&&&&&&$X&&&&&&&&&&+ .............
.....................................;&&&&.X&&&&&&&&&&&&&&&&&&&&&&&&&&$ .:;X&&X&&&&&&&&&&&&&&&$$&&&&&&&&:..........
.....................................x&&&&;x&&&&&&&&&&&&&&&&&&&&&&&&&&&.....&&&&&&&&&&&&&&&&&&&&&&&&&+$&&&X+........
.....................................$&&&&X+&&&&&&&&&&&&&&&&&&&&&&&&&&$....$&&X&&&&&&&&&&&&&&&&&&&&&&&&&&X&$& ......
.....................................$&&&&$+&&&&&&&&&&&&&&&&&&&&&&&&&&$...:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$XX&;.....
.....................................$&&&&++&&&&&&&&&&&&&&&&&&&&&&&&&&$...&&&X&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$x&.....
.....................................X&&&&.+&&&&&&&&&&&&&&&&&&&&&&&&&&$..+&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&X&&&.X&....
.....................................X&&&&.;&&&&&&&&&&&&&&&&&&&&&&&&&&$. &&&X&&&&&&&&&&&&&&&&&&&&&&&&&&&$&$&$..&$...
.....................................X&&&X.;&&&&&&&&&&&&&&&&&&&&&&&&&&$.$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$&+&........
.....................................X&&&;.;&&&X&&&&&&&&&&&&&&&&&&&&&&$&X&&$&&&&&&&&&&&&&&&&&&&&&&&&&&&:. .:........
.....................................X&&&..;&$&x&&&&&&&&&&&&&&&&&&&&&&$&&$$&&&&&&&&&&&&&&&&&&&&&&&&&&&$.............
.....................................;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$&&$$&&&&&&&&&&&&&&&&&&&&&&&&&&& .............
..................................... &&&&&&&&&&&&&&&xx&&&&&&&&&&&&&&&$&&&&&&&X&&&&&&&&&&&&&&&&&&&&&&;..............
........................................:X&&&&&&&&$.:+&$.&&&&$$XXXX$$$X&&&&&&&&&&&&X&&&&&&&&&&&&&&&&&...............
................................................... .... &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&x&&&&&&&&&&& ...............
.........................................................&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;..+&&&&&+................
.........................................................&&$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&....... x.................
.........................................................&&X&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&.........................
.........................................................&&X&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&+.......................I build production AI systems: retrieval, agents, evaluations, and the backend and cloud infrastructure that keeps them running. I came into AI engineering through backend and cloud infrastructure, and that background shapes how I work. If an agent can't recover from a crash, explain what it did, or be tested before it ships, it isn't ready for production.
- Building retrieval and agent systems for production AI products
- Building Assay, a durable financial planning agent on LangGraph
- Open-source tooling for running AI agents safely in production
- assay: A durable financial planning agent built on LangGraph for users who need trustworthy answers about their financial situation without trusting the AI to do the arithmetic. The AI only reads the user's details and explains the results; every calculation runs in tested code that applies the financial rules of the user's country.
- waypoint: A Python SDK for building fault-tolerant LLM agent workflows. Recovers from crashes by replaying execution from checkpoints, without re-invoking LLM calls or completed tool invocations.
- provenance: Agentic compliance and governance middleware. Lets autonomous agents operate within policy-defined guardrails, with human approval for risky actions and cryptographic audit trails.
- safe-agentic-payment-system: An agent that initiates payments on its own, but only within policy limits it cannot override.
- ai-video-generation-poc-with-temporal: An AI video generation pipeline (generation, S3 upload, token deduction, database write) orchestrated with Temporal workflows and FastAPI.
- folio: A self-hostable investment tracker for portfolio management, performance analysis, and financial goal tracking.
- Agents and agentic workflows (LangGraph, LangChain, PydanticAI, smolagents)
- RAG and LLM evaluation (RAGAS, custom evaluators)
- Vector and hybrid search (Qdrant, Elasticsearch)
- Durable execution and workflow orchestration (Temporal, Celery, event sourcing)
- Guardrails, human-in-the-loop approval, audit logging
- Multi-provider model integration (LiteLLM, 12+ generative AI providers in production)
- Languages: Python, TypeScript
- Frameworks: FastAPI, Django, Node.js
- Data: PostgreSQL, Redis, MongoDB
- Queues: Celery, RabbitMQ, Kafka, AWS SQS
- Cloud: AWS
- Tooling: Pulumi, Docker, NGINX, GitHub Actions
- React, Svelte





