The languages, databases and tools I build with.
I get asked what my stack looks like fairly often. This is what I’ve actually shipped production systems with over the last decade or so — across founding-engineer work, startup platforms and large-scale infrastructure.
Languages & frameworks
Python (FastAPI)
My default for backend services today. The Havenwise API platform runs on FastAPI, and it’s what I used to stand up UEFN AI’s infrastructure for autonomous agents in games. Before that, Django at Cargobase.Go
The workhorse for high-throughput services at Grab — invoicing, reconciliation pipelines and internal platforms handling millions of rows a month. Also what I standardised on for parts of Jelly’s backend.Node.js & React
The combination I’ve built the most product with: Championfy’s platform and admin portal, Ampverse’s AmpCreds marketplace, and a long tail of internal tooling.Expo (React Native)
How I ship mobile without a separate iOS and Android team. Built Championfy’s cross-platform apps and, more recently, Havenwise’s app from scratch to replace a no-code product.Ruby on Rails
Still one of the fastest ways to get a real application in front of users. Used heavily on internal platforms at Grab.
Data & infrastructure
Supabase & PostgreSQL
Postgres with batteries included — auth, storage and row-level security out of the box. It’s the data layer behind Havenwise.MySQL & MongoDB
MySQL for most of the transactional systems I’ve built at Grab, Cargobase and Championfy; MongoDB (and DocumentDB) where the shape of the data kept moving.Redis
Caching, rate limiting, queues, leaderboards. The first thing I reach for when a database starts feeling the load.Kafka
For event streaming at scale — onboarding 10+ data streams into a central warehouse for reconciliation and fraud detection at Grab.AWS
ECS, SQS, Lambda, DocumentDB and friends. I migrated Championfy’s entire infrastructure from Google Cloud to AWS and cut thousands of dollars a month off the bill. AWS Certified Developer – Associate.Google Cloud
Cloud Functions, Cloud Run and the rest of the stack behind Havenwise, and where a lot of my early Google-era work lived.Terraform
Infrastructure that’s reviewable in a pull request. Non-negotiable once more than one person is touching the environment.
AI & developer tools
Claude
Powers the conversational side of Havenwise AI, and it’s in my editor and terminal most of the day.Cursor
Where I write most code now. The gap between “I know what I want” and “it’s running” has never been shorter.MCP
Model Context Protocol is how I wire models to real systems — I built an MCP integration with Intercom’s Fin AI so it can diagnose heat pump faults directly against our platform.CI/CD pipelines
Standardised pipelines, engineering docs and release processes are the cheapest way I know to make a small team deliver consistently — it’s the first thing I set up on every team I join.