Just a little heads-up: Postgres is very easy to run on your own and even in the default configuration runs well even for a considerable amount of users.
Over here, we only started to seriously thinking about what we're doing once we were handling in the order of 10K transactions per second.
Once you are at that level, you're probably going to need optimizations specific to your application and a generic database hoster might not be able to help you anyways.
I get that as a startup you don't have people for everything, but can you really afford to outsource the knowledge about the central piece of your application where all the value is stored at?
I have a fairly sophisticated docker VM with wal-e, replication and everything running. Yes - I am aware of what you say.
Hosting the dB has never been the knowledge about central piece of application. you may disagree (and I respect that), but for me it has been similar to building a RAID-10 dedicated server vs using AWS.
You can argue that maintaining data resiliently is a critical part of the organization - but at what stage? In the first 3 years of a startup, you are iterating the product. You are pretty much agonizing over drop rates, conversion rates for every single minute of your life. The fact that data will crash NEEDS to come a distant second.
Dropbox has only just moved out of AWS. Storage was probably the most critical part of Dropbox, but it chose (rightly) to focus on customers first.
What you are talking about will come - but it will come after some time. And till then I would love to pay some postgres devs to run a hosted dB for me...like RDS.
Over here, we only started to seriously thinking about what we're doing once we were handling in the order of 10K transactions per second.
Once you are at that level, you're probably going to need optimizations specific to your application and a generic database hoster might not be able to help you anyways.
I get that as a startup you don't have people for everything, but can you really afford to outsource the knowledge about the central piece of your application where all the value is stored at?