Software engineer focused on building production-minded AI systems.
My work centers on making LLM applications measurable, reliable, and deployable through strong architecture, evaluation, and observability.
A modular retrieval-augmented generation system designed for large technical document collections.
Focus areas:
- modular pipeline architecture (hexagonal design)
- hybrid retrieval (vector + BM25 with RRF)
- swappable components for chunking, retrieval, and reranking
- structured evaluation harness measuring Recall@K, MRR, and NDCG
- LLM groundedness scoring
- regression detection across runs
- multi-worker ingestion for large document sets
- full trace logging for reproducibility and failure analysis
Repository
https://github.com/qdon314/obsidian-vault-RAG
An experimentation platform that uses LLM agents and deterministic rules to help producers run disciplined marketing experiments.
Core loop:
- Strategy agent proposes audience segments and hypotheses
- Creative agent generates ad copy variants
- Producer runs campaigns using generated specs
- Observation data feeds a decision engine
- Experiments are scaled, held, or killed
- Memo agent summarizes outcomes
Architecture:
- FastAPI backend
- Next.js dashboard
- Claude tool-use agents
- structured domain models for experiments and observations
- deterministic decision policies
Repository
https://github.com/qdon314/agentic-growth-system
Areas I’m actively exploring:
- retrieval evaluation and ranking quality
- scalable document ingestion
- LLM observability and tracing
- agent architectures for real-world workflows
- AI systems in regulated or high-reliability domains
Much of my career has involved building software for data-intensive and highly regulated environments, where correctness, traceability, and operational reliability are critical.
Recently I’ve been applying the same mindset to AI systems engineering.

