Clement Oh
About · clementoh.dev

Engineer, PM, occasional founder. Mostly curious.

I started writing code as a teenager and haven't really stopped since. Along the way I picked up product, picked up teams, picked up a few startups. The thread through all of it is the same: building things that are honest about what they are.

Philosophy

Four opinions I keep returning to.

01 · On team size

Smaller teams ship sharper products.

Every additional headcount is another communication edge to keep clean. Past about eight, the meta-work to keep the team coherent eats the work itself. I'd rather hire one person who can hold the whole picture than three who each hold a third.

02 · On measuring output

Lines of code are not throughput.

Velocity feels like progress until reliability degrades, review fatigue sets in, and the SLA drifts. The teams I trust most are the ones who count what shipped, what stayed shipped, and how surprised the customer was.

03 · On product surface

What users see is ~10%. What they feel is ~90%.

Latency, error states, the tone of an empty screen, the moment a thing snaps into place. Those are the product. Pixels are downstream of decisions made weeks earlier.

04 · On AI in the loop

Accountability stays with the human.

AI accelerates the writing, the searching, the iterating. It doesn't take the meeting, own the outcome, or apologise to the customer. Treat it like a very fast junior: useful, frequently wrong, never accountable.

Funny stories

The Fibonacci incident.

The time I walked into my first technical interview and tried to import Fibonacci from a library. Somehow I got the job, and it turned out to be one of the best roles I’ve had.

State’s exhibit · fig. I
23581321
1 · 1 · 2 · 3 · 5 · 8 · 13 · 21φ ≈ 1.618
Screenplay · One actWorking title: "The Fibonacci Incident"
INT. INTERVIEW ROOM — DAY ONE

Entered the room with enormous confidence and no idea what a technical interview was.

INTERVIEWER

Alright, implement Fibonacci.

ME

Sure. import fibonacci from "fibonacci". Done.

> In my defence: why reinvent what already exists?

Silence. The good kind? Almost certainly not the good kind.

INTERVIEWER

Interesting choice. Could you walk me through writing it yourself?

ME

Sure, I could, but the library is tested and handles a lot of edge cases I probably wouldn't think of.

> Still not reading the room.

Pauses. Polite follow-up questions. Answered with complete sincerity.

INTERVIEWER

We'll be in touch.

CUT TO:

Got the offer. Turned out to be one of the best roles I've had, learned an enormous amount.

Every time someone reaches for a library now, I try very hard not to smile.

FADE OUT.✓ Hired anyway
Right now

Based in KL. Building remotely.

Day-to-day I'm working on cloud infrastructure for AI workloads at io.net. Off-hours I read about Formula One paddock politics, obsess over civil engineering YouTube, and tinker with side projects that might never ship.

CloudWeb3AI toolingEngineering culture

Want to talk?