I've had the experience of trying to build software deployable to multiple cloud providers (independent instances) so it can run in customer environments. We still needed to use serverless offerings, which was a real pain. So much so, we've been building a framework to make it easier/possible - <a href="https://nitric.io" rel="nofollow">https://nitric.io</a>