← brag

~atlan

SOFTWARE ENGINEER · Jan 2026 – present

Co-authored with Glean — Glean's organizational context spans every project, failure pattern, and ownership signal documented here.


Three acts, one through-line. First, getting production failures to explain themselves. Then, turning the business context that lives in documents into something agents can use and people can govern. Then taking those agents to customers — where the work became closing the gap between a run that says it succeeded and a run that actually did.

19 entries. Tap any for the full story: the problem, the call, what broke, what I learned, what changed. Impact is given as direction and magnitude — the internal numbers stay internal.

act i

Make failures legible · jan – apr 2026

The first job was getting production failures to say why they happened, and who should care.

●failure classification platformunknown → explained
●quality control agentregressions caught pre-merge
●intelligent alerting & outage detectionnext day → near-realtime
●temporal & app sdk observabilityfailures outlive retention
●error code system & failure attributionan owner on every failure
●workflow run observabilityone dashboard, every run

act ii

Context as a governed asset · may – aug 2026

Then the question changed from “why did this fail” to “what does the agent actually know” — and how to make what it knows something you can govern.

●knowledge folders & files — unstructured context for aimanual per-tenant fixes → zero
●knowledge synthesis agent — sources to governed assetsdemo → installable anywhere
●the architecture call — agent or connector?handler agent → durable workflow
●agent runtime — credentials, transport, sessionssecrets never cross http
●context agents — template, grant, scopeprompt box → governed config
●custom agent marketplace — outcome in, agent outdescribe it, get an agent

act iii

Agents in customers’ hands · sep – oct 2026

Real customers changed what “done” meant. Most of this act is about the gap between a run that reports success and a run that did the right thing.

●owning the rollout — private preview to early accessfirst customers live
●making the output correctmechanical, not the model
●the documents customers already havefraction → most of the page
●green runs with nothing in them3 silent-success paths closed
●evidence on every termone click to the source
●re-runs that update instead of restartin testing · not shipped
●debugging across layers, reviewing from first principlessymptom → owner

what I got wrong

The half I actually learned from. Each row is one of the entries above.

it looked likeit was
a model-quality problemplumbing — a check that could not fail, a misspelled tool name, a count measuring the wrong thing
a successful runthree separate paths to success with zero output
an agent problema connector with an LLM inside — and connectors were already a solved problem
code that read correctlyfour bugs in the PDF pipeline that only showed up when it ran end to end
a run manifest — the safe way to remember past outputthe bug. Derive state from what the tenant already holds
an agent ignoring its instructionsan agent following them exactly — the rules treated a listing as a licence
a transport that workedlegacy SSE, hanging against every real remote server
a cluster of customer bugssymptoms — two root fixes resolved all of them
a PR approvala deploy decision, once a merge reaches customers in minutes

how I work

  • Fix it in the platform, not the app — the agent is the proving ground, the harness gets the capability.
  • Ship an observation before a failing check, until real runs show what the check has to handle.
  • Release notes in one shape: what it unblocks, what it stops breaking silently, what was proven on a live run, and the known gaps.
  • Argue from first principles, give the other side what it gets right, and mark what I have not verified.
  • Hand work to whoever holds the most context, and say why when I push back on scope.