So we're starting a general contractor company and i I'm wondering if anyone else did that and had general advice?
Its with someone else that is not really technology savy.
I self-host everything and fully believe everyone else should too.
HOWEVER, if your self hosted shit breaks for say, 3 days, how much money is this going to cost you?
For business stuff you really really should determine what your backup plan for 'Oops shit's dead' is well before shit's dead, and honestly, in some cases, maybe it makes more sense not to host everything and have a couple of things that would wreck your business provided by a SaaS company that has a SLA, and on-call engineers, and all that good shit.
Well said, and the 'oops shit's dead' is also in the making.
We have the chance to be close to a school so electricity + internet is never down. The time to move to a VPS/other location is minimal, with encrypted backup on multiple locations.
Open to suggestions to improve the setup.
You said the other person involved isn't technical: what if say, a database corrupts itself and you're on vacation for a week.
Is the expectation that you'll always be available all the time to fix technical problems?
And, as a failure state: what happens if you simply cannot be reached for that week no matter what. What's the failover plan for the rest of the people involved in the business?
Just use whatever works best for you. Just make sure there is a way you can easily export data from the tool in case you need to migrate to something else in the future.
Second this, whatever you pick never let someone else "own" your data because then they own your company. If you cant export data freely so it can be imported into another system, then its not yours.
At home vs. for work are very different. At home, I self host as much as I can. At work, I use as many managed services as I can. Especially databases.
I can recommend some stuff I've been using myself :
Dolibarr as an ERP + CRM : requires some work to configure initially. As most (if not all) features are disabled by default, it requires enabling them based on what you need. It also has a marketplace with a bunch of modules you can buy
Gitea to manage codebases for customer projects. It can also do CI but I've not looked into it yet
Prometheus and its ecosystem (mostly promtail and grafana) for monitoring and alerting
docker mail server : makes it quite easy to self host a full mail server. The guides in their doc made it painless for me to configure dmarc/SPF/other stuff that make e-mail notoriously hard to host
Cal.com as a self hostable alternative to calendly
Authentik for single sign-on and centralized permission management
plausible for lightweight analytics
a mix of wireguard, iptables and nginx to basically achieve the same as cloudflare proxying and tunnels
I design, deploy and maintain such infrastructures for my own customers, so feel free to DM me with more details about your business if you need help with this
If they aren’t critical to the business, have a blast with it. But when the downed services prevent or distract from the invoiceable work, that is a problem.