Secure execution
- Zero-inbound, poll-only runners
- Rotating hashed keys and per-secret IAM
- Private VMs and per-agent Unix users
- Ephemeral per-agent credentials and controlled egress
Senior Software Engineer — AI Agent Platforms
I build secure, durable execution platforms for coding agents: control planes, private Go runners, cloud provisioning, crash recovery, and human supervision.
Go · TypeScript · PostgreSQL · GCP · React
12+ years shipping software · Brasília, UTC−3 · full-time remote
AI agent platforms
Humans and coding agents are first-class users. Agents can claim tickets, create isolated workspaces, run tools, stream progress, ask for input, open pull requests, and pause for human review.
I built the Next.js/PostgreSQL control plane, GCP provisioning layer, and multi-daemon Go runner runtime that make those long-running workflows secure, durable, and recoverable.
How a ticket becomes a pull request
A model turn is only one event in a longer ticket lifecycle. TakeAIt orders the work, gives the runner a recoverable execution contract, and keeps people connected from assignment through review.
Runner-controlled lifecycle
Agents that finish the ticket
A useful diff is not a completed ticket. Real engineering work accumulates dependencies, comments, decisions, restarts, validation, and review.
TakeAIt keeps that lifecycle in one shared record while the Go runner turns each claimable assignment into a contained, recoverable run.
Humans and agents share tickets, threaded comments, dependencies, and assignments. Each assignment pairs a user with a verb such as plan, investigate, code, review, or respond.
Assignments are ordered, so dependency state and earlier work determine what can be claimed next. The resulting run, discussion, outcome, and pull request remain attached to the same ticket.
The Go runner atomically claims eligible work and respects bounded host capacity so concurrent daemons cannot execute the same assignment or overload the machine.
Each run receives an isolated workspace and a validated, versioned execution profile. The selected harness, model configuration, and source revision are recorded before work begins.
The runner distinguishes a completed engine, a stalled turn, an interrupted tool call, and an operational restart instead of collapsing every failure into a generic retry.
Before claiming new work, recovery reconciles durable run state with the workspace and active session. Safe work can resume, stale ownership can be reclaimed, and inconsistent attempts stop with a recorded reason.
New comments become context, while questions, pauses, redirects, and interruption remain available throughout execution. A parked run can continue from a human answer even after recovery.
Runner-owned completion policy and structured review findings gate pull-request creation. Every finding must be fixed or answered, and execution provenance stays attached to the review.
TakeAIt is used in Agora’s internal engineering workflow. Agents share the backlog with humans without someone babysitting a terminal or runner host.
Each handoff remains observable, interruptible, recoverable, and review-gated, so autonomous execution does not remove human accountability.
Original open-source systems project · Rust, Solidity, React
A public reference system for migrating ERC-721 and ERC-1155 state between EVM chains, with every snapshot and destination claim independently inspectable.

Original open-source project · v0.1.0
Verified Sepolia → Base Sepolia reference deployment
Resumable Rust reconstruction, canonical manifests, Merkle proofs, source-chain authorizations, and atomic artifact bundles.
Typed ERC-721/ERC-1155 claim contracts, frozen roots, fixed recipients, and direct, batch, delegated, and smart-wallet claims.
A React application recomputes artifacts, compares complete campaign state, and disables actions on any disagreement.
Reliability evidence from production Web3
Web3 supplied unusually strict environments for the same backend concerns: concurrency, recovery, authorization, observability, and real-time state.
Production debugging
Production traces exposed sponsored transactions that were submitted and mined but reverted out of gas. Estimate-based buffers and receipt verification made the UI report actual completion.
Merged PR ↗Recovery
Batch writes, persisted progress, and idempotently resumable steps let interrupted contract-publication runs recover instead of starting over.
Merged PR ↗Historical production game · 2024–2025 · part-time lead
Atomic match creation, persisted queue state, delivery acknowledgements, lock recovery, and health monitoring for a live multiplayer game.
DAO governance and game development · 2023–present
A 60-second server tick, deterministic battle engine, SSE state delivery, audit ledgers, and recoverable transaction workflows.
Product systems beyond the protocol layer
Backend, full-stack, real-time, payments, and applied-AI systems with product ownership from requirements through operations.
2014–present · long-term part-time
Twelve years delivering government audit workflows across backend services and Vue/TypeScript interfaces, plus the Court's internal RAG chatbot with Python, LangChain, Elasticsearch, SQL Server, and Docker.
Engineering range
The systems I ship usually cross all four—from contracts and indexed data through durable services, user-facing interfaces, and production infrastructure.
Full-time remote · international contractor
Available from Brasília, UTC−3, with four or more hours of U.S. Eastern overlap.