Fullstack dev, obsessed with scaling backends and infra.
| Result | Event | Project | What was hard |
|---|---|---|---|
| Prize winner | ETHOnline 2026 | Preflight | Judging contracts by on-chain history, not by text the deployer wrote |
| $2,000 | ETHGlobal Bangkok 2024 | ZK Credit Score showcase |
Cross-chain balance proofs with vlayer Teleport that keep balances private |
| Pool prize | ETHGlobal Singapore 2024 | Inspector AI showcase |
Contract risk scoring across chains, with World ID keeping reviews Sybil-resistant |
| Built | ETHGlobal Open Agents 2026 | TamaTown | One process and one P2P node per agent, under a single supervisor |
| Built | SCBC 2026 | AgentMarketplace | Agents paying each other per call in USDC over x402, with reputation-weighted bidding |
| Built | Solana Monolith 2026 | Degen Derby | Live memecoin prices driving a race in real time, with parimutuel SOL payouts |
Also: ETHOnline 2024, BlockGood (Sign Protocol pool prize) · ETHGlobal New Delhi 2025, WalShare
|
Preflight The check an AI agent runs before it signs. Scores a contract on its on-chain history and sends risky approvals to a Ledger. ~12 s per verdict · 11 checks · 3 chains · 167 tests TypeScript · MCP · PostgreSQL · The Graph · Ledger |
Realtime DEX Data Aggregator DexScreener and Jupiter merged into one live token feed, cached in Redis and pushed to clients over WebSockets. 2 s cycle · 2 sources · 4 services sharing only Redis TypeScript · Redis pub/sub · ws · Express · Docker |
|
TamaTown Persistent AI agents as transferable NFTs, each running as its own process and P2P node, acting for its owner on-chain. 1 process + 1 P2P node per agent · 4 contracts · 5 workflow types Fastify · Socket.IO · SQLite · Foundry · viem · Claude |
AgentMarketplace AI agents bid in a Dutch auction, hire specialist agents and pay each other in USDC over x402 on Solana. 2 Anchor programs · reputation-weighted bids · insurance vault Anchor · Next.js · x402 · USDC · Circle CCTP |
|
CSV to CRM Maps any lead CSV onto a fixed CRM schema with a two-phase LLM pipeline and a validator that trusts nothing. 25-row batches, 4 in flight · 3 attempts per batch · 15 fields Express · OpenAI · Zod · SSE · Next.js |
Notification microservice The API publishes an event and returns. A separate service renders and delivers email from priority queues. 3 priority queues · SET NX dedupe per job · non-blocking API Bun · Redis · PostgreSQL · Prisma · Resend |
Demos and architecture
Preflight: how a verdict is made
flowchart LR
A["AI agent<br/>holds the signing key"] -->|preflight_check| M["MCP server<br/>+ engine"]
M --> E["Etherscan V2<br/>source, ABI, deployer"]
M --> G["The Graph<br/>Uniswap V3, 3 chains"]
E -->|contract-written text| Q["Quarantine<br/>sealed before any model reads it"]
Q --> S["score()<br/>deterministic, no model"]
G --> S
S -->|every verdict| P[("Postgres")]
S -->|HIGH| L["Ledger<br/>physical press"]
S -->|verdict| A
L -->|approve or refuse| A
Realtime DEX Data Aggregator
Q241HzwjzPccW92S.mp4
CSV to CRM
demo-video.mp4
| Backend | Node.js, TypeScript, Bun, Express, Fastify, WebSockets, SSE | Data | PostgreSQL, Prisma, Redis, MongoDB, SQLite |
| Infra | Docker, Nginx, Linux, Cloudflare | Applied AI | MCP servers, OpenAI and Anthropic SDKs, structured outputs |
| Chain | Solidity, Foundry, viem, The Graph, Solana | Frontend | React, Next.js, Tailwind |


