BOOTSTRAPPING ★ 11 upvotes 2020

Ask HN: Solo developer – Recommended architecture/patterns for building a SaaS?

The Founder's Submission

Direct narrative and submission text authored by @kisamoto on Hacker News:

Across SaaS offerings there are some common functionalities that must be built but as a solo developer my time and resources are limited.


    * Authentication / Authorization
    * Usage monitoring
    * API Gateway
    * Billing calculations
    * Invoice generation and sending
    * Customer support (including portal to manage account)

I have left the specifics of the software out on purpose however it is primarily REST API based.

So far I have looked at building on top of Kubernetes with Keycloak for auth; Kong (free) for API gateway; cron jobs to calculate daily bills, update a database and send monthly invoices. It's ugly, takes more time than I would like to spend to maintain and develop and means I lose time spent working on my core business.

Are there any best practices/design patterns/architectures for building a small-medium scalable SaaS platform?

I am open to experiences with managed services and heavy vendor lock-in as previously I tried to avoid it but the flexibility (that I have not used) is a tradeoff with time and effort required.

Retrospective Overview & Key Insights

Distilled analysis of the business dynamics, operational challenges, and strategic takeaways:

Published in 2020, this chronicle by @kisamoto details the mechanics of building a profitable, self-funded business without venture backing.

Core Principles for Independent Builders:
1
Charging customers from day one acts as the ultimate filter for building software that solves genuine, high-urgency problems.
2
Keeping fixed overhead low and leveraging lean infrastructure allows founders to stay alive until market tailwinds kick in.
3
Small, repetitive improvements in customer retention and conversion rates yield massive returns over multi-year horizons.
Community Debate Themes:

The community focused on B2B customer acquisition channels, cold email vs SEO distribution, and balancing full-time employment with side-project development.

Community Discussions & Critical Reviews

High-signal perspectives, counter-arguments, and peer founder insights debated on Hacker News (8 total discussions):

HA @hazz99 Peer Contributor

These are the things that gave me (a solo developer) a huge speed boost:

- Use React with NextJS. Stopping messing with state and routing issues.

- Use GraphQL instead of REST. Stop spending so much time writing well-structured API endpoints.

- Purchase TailwindUI [0]. Stop pretending to be a UI designer and start implementing features.

- Put everything in containers and host on Render [1] or Heroku. Stop spending time managing infra before you've found product-market fit.

Remove everything that stands between you and solving a business problem. Everything else is completely irrelevant. Do whatever you can to get to market.

It makes more business sense to pay $50/mo for Heroku and Auth0 than spending a month building infra and authentication, which you'll probably get wrong anyway.

If I were to do this all over again, I'd probably go with PHP+Symfony/Laravel or Ruby on Rails. Something hyper-practical. I thought I'd never say this, but it's true. Development is fast. Recruiting is cheap. There are builtin patterns so it's easy to get help online.

That being said, I do love React.

[0] https://tailwindui.com/

[1] https://render.com/

KU @kugelblitz Peer Contributor

What is the application stack you are using? Something like Laravel or Symfony (PHP) or Django (Python) would come with auth stuff already and it wouldn't take too much effort to make it API-oriented.

Connect it to something like Stripe, deploy it on e.g. Heroku or so (I personally use AWS Elastic Beanstalk for almost all my projects, mostly because I feel most comfortable there) and you should be almost there.

I have 2 side projects where I'm the solo developer, one runs on Symfony, the invoices are generated, but after they're sent, I need to manually check them (but each invoice is 100-200 US$, so it's ok).

A second project runs on Django and is subscription based, here the invoices are higher in volume but only 5 US$ each. There billing goes via Stripe (among others) and is handled automatically.

Check out https://www.indiehackers.com as well for some inspiration.

ON @onelastjob Peer Contributor

I think JumpStartRails.com offers a lot of what you are looking for https://jumpstartrails.com/

NO @nonines Peer Contributor

Maybe stack overflow would be a better place to ask. Please post back a link if you do.

TU @tucaz Peer Contributor

I’m on the same boat and have been building these things for the past year

HISTORICAL ERA Pandemic Bubble (2020–2022)
COMMUNITY SCORE ★ 11 points
TOTAL DISCUSSIONS 8 comments
TOPICS & TECH STACK: