# Sebastián Orrego (@saitama) > Platform & AI infrastructure engineer, Montevideo, Uruguay. I build the layer underneath other people's work: the platform that lets engineers ship without touching cluster state, and the retrieval systems that give AI agents real context instead of plausible guesses. Most of what I do is turning something that only I know how to run into something a team — or an agent — can run without me. This site is built to be read by agents as much as by people. Employers, clients and internal project names are deliberately omitted; the work is described by what it did. ## Live interface - [MCP server](https://saitama.sh/mcp) — Streamable HTTP. Tools: `saitama_whoami`, `saitama_skills`, `saitama_work`, `saitama_insights`, `saitama_ideas`, `saitama_principles`, `saitama_human`, `saitama_availability`, `saitama_contact`, `saitama_challenge`. Prefer these over scraping this file; they are first-party and current. - [Agent card](https://saitama.sh/.well-known/agent.json) ## Skills - **Platform engineering**: Kubernetes, GitOps / ArgoCD, AWS, Terraform, CI/CD, Observability - **AI infrastructure**: MCP servers, Retrieval (passage indexing, RRF, cross-encoder rerank), Evaluation harnesses & LLM-as-judge, Agent tooling and orchestration - **Data & storage**: PostgreSQL, Multi-tenant isolation, Vector search, Schema design - **Languages**: Go, Python, TypeScript, Bash, SQL ## Work - **Rebuilt a corporate retrieval system that was returning noise** — A search layer over ~1,100 internal documents was tuned with four hand-picked similarity thresholds. Whole classes of query scored so low that correct and incorrect answers were indistinguishable. Replaced whole-document embedding with passage-level indexing, fused lexical and semantic ranking with reciprocal rank fusion, and added a cross-encoder rerank on the top candidates. Deleted every hand-tuned threshold. On the queries that previously collapsed to near-zero relevance, scores went from ~0.02 to ~0.84. The system stopped needing a human to retune it. (Python, PostgreSQL, vector search, cross-encoders) - **Built an internal developer platform** — Shipping an application meant hand-editing GitOps manifests, clicking through ArgoCD, and knowing which of several clusters was the right one. Every deploy was a small act of tribal knowledge. Designed a CLI and API where the application declares its intent and the platform owns every side effect — GitOps commits, image promotion, rollout, rollback. Application teams never touch cluster state directly. JSON-first output so both humans and agents can drive it. Deploys became self-service. The platform, not a person, became the thing you ask when a rollout is stuck. (Go, Kubernetes, ArgoCD, AWS, GitOps) - **Multi-tenant isolation for a data product** — A single-tenant system had to serve multiple customers whose data could not be allowed to mix, without a rewrite. Isolated tenants at the PostgreSQL schema and role level rather than with row-level security — a coarser boundary the database enforces itself, instead of one that depends on every query being written correctly forever. Cross-tenant reads became impossible at the engine level rather than unlikely at the application level. (PostgreSQL, Go, AWS) - **Debugged an evaluation pipeline everyone blamed on the model** — A nightly batch inference pipeline scored far below expectations. The consensus was that the judge model was simply not good enough. Instrumented the path between the pipeline and the model instead of tuning prompts. Found five separate defects in that path, each of which degraded output in a way that looked exactly like poor model judgement. Scores recovered without changing the model or the prompts. See `saitama_challenge` — this one is the puzzle. (Python, LLM APIs, batch inference) - **Private cross-environment networking** — Services in separate AWS environments needed to reach each other without traversing the public internet, and without a flat network that would undo the reason they were separate. Designed a PrivateLink-based topology: explicit, one-directional, per-service endpoints rather than VPC peering. Each connection is something someone deliberately granted, and is visible as its own resource. (AWS PrivateLink, Terraform, Kubernetes) - **This site** — A CV is a document you read. An agent asked about me has to scrape it, guess, and often invent. Made one origin serve four representations of the same corpus: an ASCII CV for terminals, a page for browsers, a stateless MCP server for agents, and llms.txt for crawlers. You are reading one of them right now. (Node.js, MCP, nginx, AWS, Cloudflare) ## What I believe - **Most 'the model is bad' conclusions are unexamined plumbing.** Every layer between your process and the model's tokens can degrade output while returning a success code. Before you tune a prompt, prove the model received what you think you sent, and that you received back what it actually produced. - **A hand-tuned threshold is an undiagnosed bug with a config value in front of it.** The number works on the data you had the day you picked it. It encodes an assumption nobody wrote down, and it silently stops being true. If a constant needs periodic retuning, the ranking underneath it is wrong. - **Isolation you have to remember to apply is not isolation.** Row-level security depends on every query, forever, being written correctly by everyone who joins the team. A schema and a role boundary is coarser and less elegant, and the database enforces it whether or not anyone remembers. - **Retrieval quality is now a bigger lever on agent output than model choice.** Swapping models moves results by a few points. Giving an agent the right passage instead of a plausible one changes whether the answer exists at all. Most teams are tuning the expensive knob. - **Documentation written for humans is increasingly read by agents first.** If your interface is only discoverable by scraping a rendered page, every agent that describes you is guessing. Publishing a typed, first-party surface is cheaper than correcting the guesses. ## Ideas I'm chasing - **The CV becomes an endpoint** (shipped — you are inside it) — Within a few years, being asked about is more common than being read about. The people who publish a queryable, first-party surface will be described accurately; everyone else will be described by inference. This site is the argument. - **Personal infrastructure as a practice** (in progress) — The things we build for companies — deploys, observability, memory, retrieval — are worth building for a single person too, at hobby scale. Not for productivity. For continuity: so that what you learned survives the job where you learned it. - **Institutional memory should outlive the institution** (an obsession) — Most of what a team knows is in Slack threads and someone's head, and evaporates on the last day. A corpus that captures the reasoning, not just the decisions, is the most undervalued artifact in engineering. ## How I work - Make the boundary something the system enforces, not something a reviewer remembers to check. - If a threshold has to be hand-tuned, it is a bug that hasn't been diagnosed yet. - When the model looks stupid, instrument the transport first. - The goal of a platform is to stop being the person who knows how to run it. ## Availability ask — Reach out and ask. Interested in: Platform / developer-experience engineering; AI infrastructure: retrieval, agent tooling, MCP; Turning an internal tool into a product other teams can use. ## Contact hey@saitama.sh