Minimum Viable Structure

minimum viable structure

We order lunch to the office everyday. The ops team picks a couple restaurants, posts the group links in slack, and everyone clicks a link and submits their order. During our first year, someone on our team asked if we should put a limit on weekly food spend per employee. They suggested we limit lunch spend per employee to $100/week. My co-founder and I immediately shot down the idea. We practice minimum viable structure.

Limits on spend aren’t great, but one might say $100/week/employee is a rounding error. When you a put a max limit on spend, people tend to hit the max. That conflicts with our principle of frugality. But more than that, it’s the hidden costs that are cancerous.

For every structure you add, you create managerial work. To implement the $100/week/employee lunch cap, you need to set up a system that tracks the amount of food being ordered:

Is someone going to write down all the orders into a spreadsheet to keep track or should engineering come up with a product that does this and also accounts for tax, tip, delivery, and other fees to know exactly how much they spent? Should there be a warning system when an employee gets close to their limit? Should it let them know how much they have spent for the week and how much is left? What if their order was refunded because the wrong item showed up? What if an order puts them at just 5 cents over their weekly limit? What if they’re out of town next week and want to order more this week? Should we adjust the weekly limit to account for inflation? What’s the process when an employee wants to request a particular restaurant? 

There are dozens of processes we’d have to create, and people designated to implement and oversee the structure and report on the processes… for lunch orders. This is insane. There are a million more important things to do.

Process vs Structure

Adding excess internal structure to smart creatives is a lazy way of dealing with bad actors. We don’t work with bad actors. Structure should only be added if absolutely necessary, e.g. for compliance purposes or stopping a rogue individual from permanently deleting the codebase. Beyond that, a company should have processes.

Processes are guidelines/suggestions. Processes don’t have to always be followed as long as the end result is achieved. This empowers employees to do things their way, to innovate. As long as goals are morally and compliantly accomplished, it doesn’t matter how.

My father was the best elementary school chess teacher in America. He often says, if you treat children like children, they’ll act like children. Treat children as responsible adults, and they’ll act like responsible adults. It’s a Jedi mind trick. Startups should treat employees like owners of the company because they are owners. Employees are responsible adults and should be treated that way. They possess the competence to order food and keep costs under control. Management should be mature enough to deal with anomalies on a case by case basis. There may be annoyances where people act irrationally, but it doesn’t mean everyone should be punished because of one bad actor. That’s what the TSA does, not a well run company.

There are countless potential things that can go wrong, but things also have a way of working out that we could have never foreseen. This is why we practice minimum viable structure. We wait for things to break before adding structure. We wait for things to not work before assuming they’ll break.

I was asked early on to practice sales pitches before our first few sales meetings. I refused. We learn by jumping in the deep end. We had more than enough real sales pitches with real feedback vs hypothetical feedback. We have infinite real work to do. We don’t have time for fake work. When building a company, with few exceptions, practicing is fake work. Implement then iterate. In software, premature optimization is the root of all evil. When you pre-optimize, you can create infinite fake work.

Working at a startup is scary to those who crave structure. It’s why startups aren’t the right place for everyone. Six months in, a new hire visited and made the suggestion that we move our desks around. 10 minutes later we had a new and significantly better office layout. We can’t always operate with that lack of structure, but we intend to embrace smart creatives and resist structure wherever possible.

The ideal structure for a 5 person company is different from a 20 person company, which is different from a 100 person company, which is different from a thousand person company. The optimal structure changes based on team size and culture. Instead of pre-optimizing structure, we let things break and have the team insist on adding processes then structure. This requires transparent communication. It’s bottom up management.

The bigger a company gets, the more structure it implements. Excess structure is the lazy way to make things work at scale. Excess structure slows development. The original Netflix culture deck famously speaks to this. Similarly, we prefer to be picky with hiring.

Processes and minimum viable structure are optimal.