Oct 23, 2022

Observations on Successful Companies

When I think about “successful” companies in the SaaS space, there is a group that quickly comes to mind. Irrespective of revenue numbers, or knowledge about internal processes, some teams keep on delivering and people notice. In the following, I’ll go over some products I’ve been using and enjoying over the past years, and the reasons that I think helped their success.

Before we start, I’ll have to make a disclaimer: For most tools, there will be many more success factors that got them to this point. It could be a great team atmosphere, a leadership team that is ambitious and can drive their team to do their best work, but most people only see the results, not the hard-earned lessons that went into building a product.

Figma: Community and Product Innovation

Figma brought design to the web and made it collaborative. Combining innovation in technology and user experience, it quickly became the design tool for most teams. Getting rid of sharing files, fighting versioning issues, and solving conflicts, Figma made a lot of right choices in terms of technology.

On the other end, they focused on building a vibrant community early on, making designs easy to share and reuse, and running events like Config, pushing their brand and expanding their reach over time.

Now that they’ve been acquired by Adobe, they can focus on product and community without worrying about the financial side (though they probably monetized their product well even before the deal closed).

Linear: Incredible Design and Performance

Linear made issue tracking and product development as a whole suck less. What teams hated about Jira before (clunky user interface, horrible performance), Linear got right. They onboarded teams early on, made the product usable for free while collecting all the feedback they needed, and just kept on building.

Then, the team at Linear put efforts into qualitative content marketing (writing about how they build software, which teams happily read through after using their great product).

Today, when Linear drops a new landing page design, product update, or anything else really, they manage to enchant the whole designer and product community by paying attention to detail in design and usability.

Repl.it: Community and Education

Replit wasn’t the first online IDE, but they managed to build a large community, especially focusing on students through getting schools and universities on board, empowering the next generation of developers, and making people who never thought about going into computer science curious, which I think is amazing.

With an incredibly active community being probably the most valuable asset for the Replit team, they are now focusing on bringing development to the mobile phone, as well as integrating AI assistance (similar to GitHub Copilot) into their product. And with every release, they can count on people giving their feedback to improve even further.

Vercel: Simplicity and Design

When Vercel was still ZEIT and their main product was making the task of deploying static websites as easy as possible, they solved a huge problem for the developer community. Sure, deploying sites via FTP was possible, but it wasn’t made for global audiences, nor was it a great experience.

Integrating with Git for a seamless deployment experience, adding preview deployments, and serverless functions for backend services transformed the product into a fully-fledged cloud platform. The rebrand to Vercel was accepted by the community and laid out the foundation for future products.

Betting big on React with Next.js (and integrating Next.js deep with the managed Vercel platform) was probably one of the most important strategic decisions as most of their customers probably come from the React ecosystem. Over time, the ever-growing Next.js community grew into a Vercel community, using other tools (Svelte) and the platform as a whole.

Notion: Simplicity and Community

Notion is a controversial choice in terms of product because some teams love it, and some loathe the fact that things just get lost in layers of pages. I’m a happy Notion user and organize many parts of my life with it, and that’s primarily because it’s a well-designed tool that works seamlessly on all of my devices. It mostly gets out of the way, and I use it exactly what it was made for.

An increasing number of teams adopted Notion as their primary knowledgebase or “company brain”. I would expect a significant source of churn from teams that have outgrown the product, but Notion keeps addressing these needs with features like teamspaces.

On the other end, they’ve built a large community around the productivity space, put out lots of content around productivity and software engineering (interviewing forerunners of computing as a whole), and recently appeared in public spaces, giving out free drinks, arguably to expand their reach beyond a niche into the mainstream.

I think growing out of the team product niche into a product for individuals will be an interesting journey to follow, but with a lot of students and zoomers on board, they’re set for capturing the next generation interested in organizing their life, taking notes for their studies and work, which will lead to more teams adopting it.

Stripe: Focus on Developer Experience

Stripe’s an obvious candidate on this list. They made online payments possible and much less painful than before (accepting money on the internet in seven lines of code), spending lots of thought on APIs that would stand the test of time, and building an enjoyable product.

The Collison brothers have arguably become a cult of personality in the YCombinator and Hacker News communities and adjacent groups, which leads to a much more personal feeling. If you could go for a bland FinTech company or bet on the vibrant, well-designed product that is Stripe, the choice is probably an easy one.

With all that out of the way, I’m starting to wonder if Stripe will keep going as strong as before: Market turmoil aside, they’ve built large parts of the FinTech stack, from one-time payments over subscriptions, to credit lines for businesses and even a tool to start companies, they have a solution for almost every problem related to accepting money on the internet. So, what’s next?

Yet, with enormous growth, some scaling pains have been starting to show up: I’m seeing an increasing number of posts about funds being temporarily frozen, and customer support leading to escalations without solutions, which puts a dent into the almost perfect story Stripe has built. Seems like building and operating a financial services company is harder than most people assumed.

Retool: Internal tools, but fast

Retool saves engineers time on building internal tools (think dashboards for managing customer details or pulling up data for business intelligence) and has one of the most convincing demo videos on their landing page for what it’s worth.

Every team eventually needs custom-built tools for managing customers and the company, so the more time engineers can spend on the actual product, the better. Making the experience of building internal tools more enjoyable is a great way to get engineers on board.

WorkOS: Saving time

Single Sign-On and directory syncing are probably the most loathed tasks in existence when teams grow to a point where closing an enterprise requires those features. WorkOS hit the right spot by abstracting away all the painful details of integrating dozens of identity providers with all their quirks.

Recently, the team launched a spotlight on the development process of their new documentation, which highlights the attention to detail that went into designing code snippets, guides, down to the social preview cards. Investing resources into developer experience (I’m dubbing this the Stripe approach) has been an important step to maintaining value differentiation, as more and more companies have come up with offering SSO-as-a-service.

Supabase: Free databases with goodies on top

I just can’t not talk about Supabase in this post. Marketing the product as an open source Firebase alternative, Supabase essentially provides a managed Postgres instance with object storage, user authentication, and edge functions bolted on top.

Through high-quality blog posts around Postgres and adjacent topics and a very active GitHub community, they’ve garnered lots of attention on their journey, and it’s pretty exciting to see what they’re building.

I don’t want to think about the cash burn that comes along with free compute, but raising $80m in funding off of pretty strong growth in usage and community metrics, they’ve got it covered.

As a last point, I wonder about the fraction of their users that use Supabase for serious projects, and I think converting weekend projects to real-world applications will be one of the primary challenges to getting organizations on board and growing contract sizes (if that’s what they’re going for).

Takeaways from successful companies

After reading through this selection of successful products and companies, you’ve probably noticed some similarities. Building an active community has steadily grown in importance, acting as a flywheel for further growth and user acquisition. This requires a focus on crafting an unmatched experience, be it for developers, users, and customers in general.

We’re accustomed to using high-quality products, so we instinctively look for polished solutions and subconsciously question tools that lack polish. Successful teams have built better (superior UX/DX, better performance, more accessible documentation) products than the ones that existed before, even if they didn’t start with feature parity.

As users, we also value products that keep on evolving, where our issues are solved in time, and we can look forward to the next big release. Successful teams keep on shipping, at least once a month if not more frequently for fixing bugs.

Building products nowadays involves so much more than providing a solution. Teams really have to keep the momentum going, continuously deliver improvements to keep up with competitors and the industry, satisfy developers with well-documented and stable APIs, and make sure users have everything they need to succeed.

At the same time, you need users to build products, so it’s more important than ever to listen to your initial customers and take their feedback into account when planning the next iteration. Companies that listen to their customers and are good at showcasing their progress (including the contribution of the community in shipping new highly-requested features) perform much better than their silent counterparts.

This also brings us to the topic of communications and building a company persona. The best companies manage to build a story that you want to personally root for by staying personal and close to their users instead of talking from the distance.

Compare the enterprise software company that posts product updates on their social media accounts receiving a couple of likes to Linear putting out an update to their website and capturing the entire design bubble on Twitter.

Sure, revenue is a hard fact, but velocity and a healthy community go a long way.