Prioritize enablers and blockers

It’s really important to learn to prioritize work well and to be able to explain clearly why you did or did not prioritize something. You don’t have unlimited resources or time, especially in the earlier stages of building a company, so you must use it well.

First, it’s helpful to think of new features as additive enablers or removing blockers. Enablers enable new functionality that usually makes the product more valuable or interesting. Blockers are gaps or friction that prevents a user/customer to use your product. Before building a feature, you should try to understand if the problem is truly preventing someone from using the product or a nice to have in their user experience. Growth at a company comes from investing your energy and effort on the right enablers and removing cirtical blockers.

Secondly, it’s important to consider how timely something is to build. There will always be more to build than you have the resources to do so. In the early stages, there are a lot of features that you will need to build eventually. Prioritize things that help you move the needle this week or month. You want to ask yourself if this is important to be done now or can it be done later. If you are successful at completing the project or task, does it help you achieve your higher-level goals? Also figure out if there are compounding effects to building it now and how it adds complexity or costs (e.g. more customization support).

For example, we launched Linear in beta with Google Logins support only since that was the fastest way to build authentication. We then moved on to other features instead of expanding authentication options. We knew that eventually, we would have to support pure email and other login methods to bring in more users and larger customers, but it wasn't necessary to get our beta user community up and running. This lets us move faster on other features.