thoroughly
jk@thoroughly ~ $ whoami

I write things down so I remember how they break.

Jun Kang. Backend engineer at a Singapore fintech. I work on payments validation, KYP infrastructure, and the slow accumulation of systems that no one else wants to debug at 2am.

This is where I write that down — mostly Go, MongoDB, ClickHouse, Kubernetes, and the long tail of things that fail in production for stupid reasons.

recent writing
last 4 posts
about
$ cat about.md

I'm a backend engineer at iPiD, a Singapore fintech doing payment validation and KYP scoring. I spend most of my time in Go and TypeScript, with occasional excursions into MongoDB query planning, ClickHouse aggregation, and Kubernetes manifests that worked last week.

I write here because I forget things. Mostly I forget why we did something the way we did it — the constraints, the dead-ends, the meeting where someone said "let's just ship it." So I write the constraints down. The posts here are the version of those notes that's safe to share.

Topics I keep coming back to: idempotency, retry semantics, MongoDB read concerns, ClickHouse query shapes, Go context propagation, the cost of logging, K8s liveness probes that aren't, and the design of internal tools.

If anything here is useful to you, or wrong, I'd genuinely like to know. Reach me at junkangwong00@gmail.com or on linkedin.