Infrastructure planning: A professional’s perspective.

Will Larson’s Bio:

Will Larson

April 1, 2007.

Hi. I grew up in North Carolina, studied CS at Centre College in Kentucky, spent a year in Japan on the JET Program, and have been living in San Francisco since 2009 or so.

Since coming out here, I’ve gotten to work at some great companies, and some of them were even good when I worked there! Starting with Yahoo! BOSSDiggSocialCodeUber and now Stripe.

A long time ago, I also cofounded a really misguided iOS gaming startup with Luke Hatcher. We made thousands of dollars over six months, and spent the next six years trying to figure out how to stop paying taxes. It was a bit of a missed opportunity.

The very first iteration of Irrational Exuberance was created the summer after I graduated from college, and I’ve been publishing to it off and on since. Early on there was a heavy focus on Django, Python and Japan; lately it’s more about infrastructure, architecture and engineering management.

It’s hard to predict what it’ll look like in the future.

In his article, Will Larson ( discusses the complicated processes of “Infrastructure Planning” and communicates in a very clear and effective way, a lot of what is necessary for something very complex and simplifies it down to less details and less technical language for the lay person. I think his brilliance is in this. I hope I find a lot more of this as I surf the Internet.

Here’s a couple of opening paragraphs to give you a taste.

Technical infrastructure is never complete. System processes can always run with less overhead or be bin-packed onto fewer machines. Data can be retrieved more quickly and stored at a cheaper cost per terabyte. System design can broaden the gap between failure and user impact. Transport layers can be more secure.

The sheer variety of investable projects is overwhelming. There are always new technologies to adopt or finish adopting: Docker, Kubernetes, Envoy, GKE, HTTP/2, GraphQL, gRPC, Spark, Flink, Rust, Go, Elixir are just the beginning of your options. Add cloud vendor competition, and the rate of change is pretty staggering.

With such a broad problem domain filled with so many possible solutions, I’ve sometimes found it difficult to provide guidance for infrastructure teams to prioritize their work. Originally, I thought this was because I lacked depth in some facets, but I slowly came to realize it was equally difficult for the teams themselves to prioritize their own work: there were simply too many options.

Read more…

I think you will find his article a very solid source of information.