An autonomous support agent for the pydantic/pydantic repository. It triages incoming issues, researches them against a hybrid RAG corpus of ~1,500 resolved issues, and drafts grounded, citation-backed replies — or escalates to a human when the quality gate says it shouldn't answer.
A RAG assistant over the Spanish INSHT / NTP occupational-safety corpus. It answers regulatory queries with retrieved evidence and grounded generation — every claim traceable to a source.
The judge initially showed TNR 0.00 due to threshold miscalibration and missing reference answers. I diagnosed the failure, rebuilt the judge with reference-aware prompting and explicit fault enumeration, and validated the fix.
A full-stack agent (RepoDoctor) that clones any repo, auto-detects its stack (Python / Node + package manager), installs dependencies, and runs its own test / build / lint suites to diagnose and explain what's failing. Built as a LangGraph state machine — clone → detect → install → diagnose → report — with every claim grounded in real command output. Each repo runs in an isolated sandbox with async subprocess execution and per-command timeouts; the Next.js frontend streams progress live via server-sent events.
Fast-tracked past intermediate interview rounds. Built a PowerPoint-to-PDF async conversion service: upload triggers a Celery worker via Redis, LibreOffice converts server-side, the result lands in S3, the frontend polls for completion.
Design, build and ship production LLM systems end to end — retrieval architecture, agent orchestration, evaluation harnesses, deployed interfaces. Selected work below.
Technical Challenge — SlideSpeak
2025
AI presentation startup
Built an async PowerPoint-to-PDF conversion service under time constraint. Fast-tracked past intermediate interview rounds.
Fullstack AI Engineer Intern — Gaddr
Sept — Dec 2025
Stockholm, Sweden · Remote
Built authentication flows in Next.js / TypeScript and integrated early API features into the product.