In the last 6 years I’ve build platforms that host and serve hundreds of companies. And pay the bills.
- Get together a list of the problems you are solving and reduce them to a few. These will be features of your platform.
- Build these in a way that you can reuse these features in a flexible way. Example start with them as a set of API’s that you can call from many clients.
- Use your platform to build various things. This will help you to make it diverse and accommodating.
- Finally, not everything will fit in your platform. So be prepared to write separate micro services that interact with the platforms database.
Other things to do are pick technologies that plenty of programmers use - since you are going to need help.
And of course make it deploy quickly and flexibly - and if you can keep the number of dependencies and separate parts to a minimum.
Theres nothing wrong with monoliths.