When you're a tiny team of developers working on something beyond MVP level and beyond heroku — managing your CI, deployments/rollbacks, DBs etc. looks like a nightmare to me without Devops expertise.
I want to understand what kind of challenges you all are facing with regards to this. And any tools, practices, you’ll are using to reduce this pain?
Ex- How do you deploy resources? How do you define architecture? How do you manage your environments, observability?, etc.
I'd use AWS + ECR + ECS personally. Stay away from kubernetes until you have a fairly large deployment as it requires huge administrative overhead to keep it up to date and well managed and a lot of knowledge overhead. Keep your containers entirely portable. Make sure you understand persistent storage and backups for any state.
Also stay the hell away from anything which is not portable between cloud vendors.
As for observability, carefully price up buy vs build because buy gets extremely expensive. Last thing you want is a $500k bill for logging one day.
And importantly every time you do something in any major public cloud, someone is making money out of you and it affects your bottom line. You need to develop an accounting mentality. Nothing is free. Build around that assumption. Favour simple, scalable architectures, not complex sprawling microservices.