AI Engineer — production RAG systems. · Natal, Brazil (UTC−3)
Currently finishing my degree in Internet Systems at IFRN (expected 2027).
I build and operate retrieval-based AI systems that have to work in front of real users.
For the last year and a half I was the primary engineer on SmartFAQ, a Retrieval-Augmented Generation assistant for Brazil's Ministry of Communications, built at CCSL/IFRN. Most of my work sat in the part of RAG that doesn't demo well and decides whether the thing survives contact with production: evaluation, tracing, guardrails, failure modes, and latency.
Private repository (client-owned) · Python · LangChain · Milvus · Flask · Celery · Redis · PostgreSQL · Ollama
The code belongs to the client and lives in a private GitLab repo, so here is what I built rather than a link.
The seven things I actually shipped
- Retrieval pipeline — BGE-M3 embeddings into Milvus, cosine search, context assembly, generation with Llama 3.3 70B via Ollama, orchestrated across four services.
- Evaluation harness — context precision and context recall, an LLM-as-a-judge, and calibration tests that measure how much the judge itself moves the scores. This is the part I'd most want to talk about in an interview.
- Observability — a single request ID propagated across API, queue, AI service and vector store; ten structured trace events with per-phase timing; a provenance field on every response that says whether the answer came from real vector retrieval, a fallback, or an error.
- Fail-closed safety — I audited the codebase and found five undocumented paths that could return an answer without ever querying the vector index. Removed them and made the pipeline return HTTP 503 instead of quietly fabricating text, with automated conformance tests to keep it that way.
- Reliability — traced a full outage to a synchronous guardrail warm-up blocking the API from binding its port; moved it to a background thread with a keyword fallback. Added drift detection between the relational database and the vector index, and a filesystem lock to stop concurrent writers corrupting it.
- Performance — profiled the system and documented the ten biggest latency bottlenecks with file-and-line evidence, showing LLM inference at 50–80% of total request time and serialised URL validation as the second largest cost.
- Ingestion — Selenium crawlers for JavaScript-rendered government portals (accordion content, cross-domain documents, SSL and popup blockers), feeding an ETL that produced the structured Q&A knowledge base.
| Project | One line | Stack |
|---|---|---|
| Vehicle Access Control System | End-to-end access management platform — web front end, REST API, real-time messaging with cameras and access hardware, institutional SSO, automated backups with restore testing. | Angular · TypeScript · Node.js · Express · MySQL · Docker · MQTT |
| Municipal Data Scraper | Scraping pipeline for public-sector portals with JavaScript-rendered content and unstable page behaviour. | Python · Selenium · PostgreSQL |
| Jiu-Jitsu Academy Manager | Small full-stack platform for managing students, classes and operational data at a martial arts academy. Built because I train there. | Ruby · Sinatra · PostgreSQL · Docker |
| AI / LLM | RAG architecture · retrieval evaluation · guardrails · prompt engineering |
| Backend | |
| Data | |
| Infra | |
| Frontend |
Full project write-ups at augusto240.github.io/Personal-Site

