The Best Tech Stack for Building Modern SaaS Apps in 2022

2022.03.23 | 1315 words |

A good tech stack can be a force multiplier for your service’s ability to push new features, scale with user growth, and maintain high levels of service excellence. A poor tech stack can increase the time and money required to ship new features, become increasingly expensive and unpleasant to maintain, and incur hundreds of developer hours of tech debt in the tech stack’s lifetime.

In this post, I share the best tech stack for building modern SaaS (Software-as-a-Service) applications in 2022. I’m pulling from years of experience as a professional Software Engineer and building / launching my own businesses as a solo-entrepreneur to share my recommendations for a go-to tech stack for full-stack business apps.

Table of Contents

The Best Tech Stack for SaaS Applications

There are a lot of factors that go into choosing an appropriate tech stack for your app - from the type of business you’re running, to the expected usage, to the technologies your team is already familiar with. I can’t go into every possible edge case to recommend the best tech stack for your specific scenario, but I can provide you with a collection of high quality, productive technologies that are a good fit for building most full-stack SaaS apps.

To do this, I’m going to walk through the major areas of a modern software service and recommend technologies and the factors I weighed when choosing them.

For each part of the stack, I’ll share:

  • My recommendation and why
  • Features that make it my #1 pick
  • Honorable mentions (in case you want to make some subsitutions)
  • Some popular choices to stay away from

Hopefully this will give you a good understanding of the technologies I use and recommend with enough information to make substitutes should your specific situation call for that.

Backend

The backend is the most important part of your system. This is where your core business logic lives and is thus the brains and engine of your entire service.

Recommendation: C# and .NET

C# (programming language) on .NET (web framework) is one of the most popular, loved, and capable backend technologies on the planet. .NET variants are the 1st and 2nd most popular frameworks as voted by professional developers and comes in 1st for most loved framework and 2nd for most loved web framework - only trailing Svelte, our pick for Frontend.

It can handle pretty much any workload and scale you throw at it, has great development ergonomics, and is constantly being improved by Microsoft. The ecosystem is mature with hundreds of thousands of libraries and docs to use and reference in your projects. Plus people love to work with it.

All this makes C# and .NET my pick for Backend.

Features:

Honorable Mentions:

  • Python
  • NodeJS

Stay away from:

  • Java - It’s falling out of favor and falling behind. Use C#.

Frontend

Frontend is the second most important part of your system. Assuming your backend systems do their job, the frontend provides a way for users to interact with your service.

Recommendation: Svelte (and Sveltekit)

Svelte is a web framework that provides similar web app building capabilities as React, Vue, and Angular. Sveltekit is a web framework that makes it very easy to stand up a performant Svelte frontend, including things like routing, SSR (Server-Side Rendering), and data handling mechanisms right out of the box (Svelte is to Sveltekit as React is to NextJS).

Though Svelte has relatively small usage (only 2.7%) it’s in the top 5 most wanted web frameworks and has been ranked the most loved web framework 2 years running (Stack Overflow Developer Survey 2021, State of JavaScript 2021).

Anecdotally, Svelte is the simplest, fastest web framework I’ve ever used. It is dead simple to spin up a web app - as it should be.

For more on Svelte and why I chose it over React, read: Svelte is better than React.

Features

Risks

  • Relatively low adoption - community is a big factor in the usefulness and longevity of a technology. Svelte doesn’t have that yet when compared with leading alternatives like React, Vue, and Angular.

Honorable Mentions:

  • React
  • Vue

Stay away from:

  • Angular - It’s falling out of favor and falling behind the other web frameworks. Use Svelte.

Database

Your app needs a place to store data. There are a lot of options that can do this job well. Many of these options are converging towards a strcutured, easy to manipulate data model - taking the best from leading SQL and NoSQL options.

Recommendation: Postgres

Postgres is a db that has found stable and lasting praise from the developer community. It is the 2nd most popular database (behind MySQL) and the 2nd most loved database (behind Redis, way ahead of MySQL).

Postgres has all the features you’d expect of a solid relational database and a ton more advanced features you didn’t. It’s performant enough to scale to millions of users with little tweaking and has a large, dedicated community backed by many large organizations.

My favorite way to use Postgres is to utilize the Relational schema model to describe how my entities are related which helps maintain structure and allows the database to make more efficient query plans. Then I utilize a JSONB column within the entity to allow for data model flexibility. This mixture gives me the stability and performance of relational databases with the developer ergonomics and velocity of a non-relational document store.

Features

  • Large community
    • Lots of docs and examples
    • Official, well-supported .NET ORM - Npgsql
    • Managed DB available on most major cloud platforms
  • Performant
  • Mature + Reliabile
    • Trusted by many large organizations - like Uber, Netflix, and Instagram
    • Regular, solid updates
  • Flexible + Powerful
    • Can use both SQL and NoSQL modes
    • Tons of advanced features you probably don’t need but v useful if you do

Honorable Mentions

  • MongoDB
  • MySQL

Stay away from:

The Best Tech Stack

In the end, the best tech stack really depends on your situation - the problem you’re solving, how you’re solving it, and who’s doing the solving. That said, this tech stack has been chosen by developers for developers as a highly efficient, scalable, and flexible choice for building modern business apps.

  • Frontend - Svelte and Sveltekit
  • Backend - C# and .NET
  • Database - Postgres

I like this tech stack so much that I now build all my SaaS apps with it. To speed up my development time, I built CloudSeed - a project template that gives you the full source code for a fully-functional SaaS app built with these technologies. It includes a full data model, Authentication, Subscriptions + Payments, and a whole host of other things that most SaaS applications need.

With CloudSeed I can spin up and deploy a full-stack SaaS app with this tech stack in minutes. Not months. Get it today at CloudSeed.

 

About the Ham

Hi I'm Hamilton - I built this! If you want more content like this subscribe to my email list, connect with me around the web, or take a look at some of my other projects.

More Projects

comments powered by Disqus