I’m Aaron Lam (林善威). I live in Singapore, where I build software and keep a workshop of my own.

I grew up in Hong Kong and then spent eighteen years in the United States, which is long enough that I stopped being able to say cleanly where I was from. I studied applied mathematics at Emory, mostly because there was no real engineering degree on offer and I genuinely did not know what I wanted to do. Maths taught me how to take a messy problem apart. It did not teach me how to build anything.

That came after I graduated, at Hack Reactor, where I finally understood that software engineering was the thing I actually wanted to do — not as a fallback, but as the work itself. I started in US consumer web, refactoring a legacy .NET platform at Esurance and then building internal ad tooling and GraphQL APIs at Yahoo.

In 2019 I moved back to Asia, partly to find out what living here would be like and partly because Hong Kong was still home. I ended up in Singapore and fell for it properly — the food, the culture, the way the whole region is a short flight away. Since then I’ve worked across marketplace, fintech, and platform engineering: the web migration at Carousell, payment partner integrations at Wise, an internal developer platform at ByteDance, PayLater and payouts at Shopback, and now age verification and privacy architecture at k-ID.

Alongside that I co-founded Airteach, an ed-tech platform for creators. We built it, shipped it, and I eventually moved on. I also spent a stretch teaching data structures and algorithms to over 200 students at Trent Global — which mostly taught me that explaining something is how you find out whether you actually understand it.

These days I default to Next.js and Postgres, and this site is less a portfolio than a workshop: somewhere I own, where I can build the small useful tools I want for myself. First up is probably a news aggregator. It only has to be useful to one person.