In keeping with our monomaniacal focus on knowledge sharing in the realm of SaaS, we thought we’d explore one of the most commonly used technologies in SaaS architecture – the humble microservice. And how and why they’re great for SaaS products.
We’ll also be exploring:
- What is SaaS?
- What are microservices?
- Why are you reading this article if you don’t know the answer to the above two questions? (please keep reading)
- How do you architect your SaaS app as microservices?
- How can we help?
What is SaaS? (feel free to skip if you’re already a SaaS expert)
We’ll keep this brief and remedial. SaaS is a software delivery and licensing model in which users pay a subscription fee to access software via the web (aka as-a-Service). Hence SaaS.
Examples of SaaS include your everyday products like Spotify and Google Sheets, as well as specialised vertical SaaS products in LegalTeach, FinTech and even the making of lovely wines.
What are microservices?
This one’s a little trickier.
Microservice is a software architecture or pattern style in which applications are made up of loosely coupled, granular services communicating via API.
If SaaS and microservices go together like peas in a pod, you can think of the microservices as the peas.
The advantages of microservices are various, but today we’re focused on SaaS, specifically.
So, it’s time to ask…
Why build your SaaS app as microservices?
Downtime is especially important (bad) for SaaS apps because of churn. Customers will drop a pay-monthly sub much quicker than an annual investment like Photoshop – so negative customer experiences matter even more.
But…because microservices are separated, failure in one service won’t always bring down the whole application. And it’s a lot easier to locate a pea in a pod than one cubic inch in a bowl of pea soup.
For more help with making sure your SaaS application stays up, check out our piece on SaaS monitoring.
With all customers being served from a single codebase (and sharing most resources in a single-tenant model), efficient scaling is a number-one priority for any SaaS business.
Microservices enable per-service scaling, meaning if some users are using one group of services and not another, that’s the only resource you pay for.
Because of the shop-and-drop nature of SaaS (and because it’s a crowded market, in most verticals at least) new features are the name of the game.
Again, because microservices are modular (and easy to isolate faults in) they can be updated and tinkered without slowing down the overall application.
Microservices also gel well with DevOps and CI/CD, meaning faster deployments.
Overall agility and cultural affinity (now say it quick five times)
Peas in a pod. Fish and chips. You name it.
The lean, reactive business model favoured by most SaaS companies plays excellently with microservices.
Small, service-oriented teams are much lighter on their feet than any custodian of a has-been monolith. And this fits in with getting new features fast.
How do you build your SaaS application as microservices?
This changes a lot depending on where you’re up to.
If you have greenfield, you can get started right away building a cloud-native SaaS application packaged into microservices, deployed in orchestrated containers and likely architected multi-tenant.
This is pretty much the gold-standard for a cloud-native SaaS app – in most cases.
However, we can’t all be so lucky.
For many businesses running legacy apps, the way to go is refactoring (from monolith to microservices) and/or migrating/modernising to SaaS.
The roads are many, but rest assured there are ways to take your application to the next level.
How we can help
If you didn’t click the link above, ‘tis I! We can help!
As a cloud-native MSP, Just After Midnight is perfectly placed to build a next-gen SaaS infrastructure from the ground-up or to modernise an existing application.
We have a great track record working with SaaS products from national fitness icon Joe Wicks’ The Body Coach app to disruptors in LegalTech and digital HR.
So, to find out how we could help you, or for anything else, just get in touch.