David Heinemeier Hansson

March 3, 2023

SaaS startups will have to care about productivity again

When the money flows freely, and there's a strong cachet to having tons of open positions, you can be forgiven to think that the individual productivity on a product team just doesn't matter. So much time is spent coordinating the work anyway. Who cares if the stack you're using takes twice the number of people to ship meaningful updates? You can just hire four times as many heads!

Those days seem to be over, at least for most SaaS startups. Entrepreneurs everywhere are suddenly having to count each hire as a cost rather than a trophy. Getting to profitability is no longer a distant, post-IPO nice-to-have, but a short-term necessity for survival. But how to do that without cutting off the legs of the product team? By using better tools and techniques, that's how.

I've been talking to a lot of SaaS entrepreneurs lately. Here are the three pieces of advice that I've given them all:

1: Unless market conditions demand otherwise, delay native app development for as long as possible. 

It's amazing what you can do with the mobile web today. We're even getting native notifications on iOS shortly! But it's not perfect. We wouldn't have a chance to compete in, say, personal email with HEY without a killer native app. But some B2B operation that's mainly used by folks sitting in front of computers at their desk? Delay the native aspirations.

The fact is that developing great native applications is just much harder, much slower, and much more expensive than developing for the web. Your rate of experimentation will drop, and you'll find your progress gummed up by app review frustrations too.

2: Hire full-stack developers, and don't let them split the frontend and backend into separate jurisdictions.

The same person has to be capable of taking an idea to production entirely on their own. If they can't, your setup is too complicated, and you need to simplify.

This often comes up with teams that have ended up in React land or similar. Now there's React, then maybe GraphQL, with separate setups, build tools, and yikes. This one isn't a quick fix, and some times it just can't be fixed, but you can rescue something from the situation by at least having single full-stack developers in charge of everything.

3: Hire designers who work natively with the web.

If your designers are stuck in Figma or Photoshop, and are unable to turn drawings into HTML and CSS, they're going to be a major drag on your productivity. Designers need to know the materials they're working with, and capable of molding them independently.

They also need to be the ones driving the decisions around how the pitch is turning into the working feature. They can't do that if they have to operate solely through the hands of others with nearly the same efficiency as when they're independently capable.

We've been running on these principles since inception at 37signals. That's how we've built everything from Basecamp to HEY. We have tiny product teams – almost every feature you see in either product was built for the web with just 1 programmer + 1 designer – and they work on with a full stack consisting of Ruby on Rails and Hotwire

It almost feels like we're cheating when I talk to other shops and hear about how big the teams need to be in order to ship. How much specialization has crept into the process. So many hats, so many people, so many tools. But during the go-go days, it just didn't matter.

But these ain't the go-go days no more. If you're a SaaS entrepreneur, now is a good time to do a service check on your product team productivity. What would it do for your prospects if you could ship more, and faster, with fewer folks? Have you just followed trends blindly because that's what worked for Facebook or Google?

It's easier to turn the ship around before you're in the middle of the storm. Right now it's just raining. But odds are worse is ahead.

About David Heinemeier Hansson

Made Basecamp and HEY for the underdogs as co-owner and CTO of 37signals. Created Ruby on Rails. Wrote REWORK, It Doesn't Have to Be Crazy at Work, and REMOTE. Won at Le Mans as a racing driver. Fought the big tech monopolies as an antitrust advocate. Invested in Danish startups.