Senior software engineer. Payments infrastructure in Go, and essays.

Now

Updated August 2026 — a /now page

At work: programmability for the Digital Rupee at NPCI — rule definition, validation, and the bank-to-central-ledger sync that has to agree with itself under load. Most of my week is Go and Hyperledger Fabric.

Outside work: gouse, a browser-automation agent library in Go. It drives Chromium over the DevTools Protocol and hands the model a compact list of interactive elements rather than screenshots — fewer tokens, fewer round trips. The interesting part is concurrency: agents are goroutines sharing a tab pool, so running a hundred of them is cheap.

Also maintaining govm, a Go version manager that installs as one binary with nothing else to set up first. Written in Rust, mostly to see what that felt like.

Writing: the most recent essay is on the reflection pattern in agent design. Before that, cryptography told as a story and how Rust manages memory. Everything goes up on Substack.