Nathaniel's blog
Back to posts

On leaving Microsoft after 18 months

Nathaniel LinMarch 5, 20234 min read2 views
On leaving Microsoft after 18 months

Disclaimer: this is a reflection, not a complaint.

A year and a half goes by faster than you'd think. When I joined, I was still fairly new to the kind of scale that a big tech company brings — hundreds of millions of daily active users, experiments running across dozens of markets simultaneously, revenue implications measured in the millions per decision.

I learned things I couldn't have learned anywhere else.

What working at scale actually means

"Scale" is thrown around a lot. Before joining, I understood it theoretically. After a few quarters of shipping features that touched millions of search sessions a day, I understand it differently.

At scale, the boring stuff matters the most. Logging. Monitoring. Gradual rollouts. Good error handling. The flashy distributed systems content you read on engineering blogs — that's mostly already solved for you. What you're left with is the discipline of not breaking things.

Any change I shipped had to go through experiment pipelines, traffic analysis, and multiple review gates before reaching real users. It felt slow coming from smaller teams. Now I see it as a feature.

The upside of a big codebase

The codebase I worked in is enormous. At first that was intimidating. Over time I started to see the value — there are patterns for everything, established conventions you can learn from, and a huge surface area of solved problems to reference.

When I needed to do something non-trivial with the React rendering pipeline or optimize some C# service response time, there were usually internal examples nearby. That's worth a lot.

What I'll miss

Honestly, the people. The engineers I worked with are sharp and thoughtful. The design review culture pushed me to think harder about decisions before committing to them. The data culture — where every significant decision is backed by experiment data — is something I'll try to bring wherever I go.

Why I'm leaving

I want to work on something earlier stage. Building things at scale is valuable experience, but building things from zero is a different kind of challenge, and it's one I miss.

I have an opportunity to join a Web3 startup and I'm taking it. Risky, but that's kind of the point.

Talk soon.

Share this post

Reactions