It's one of those situations where it's a death by a thousand cuts. When you're cost provisioning, you can figure out the big stuff, i.e., we need 25 EC2s m4a.2xlarge instances with 40TB of S3 storage, and a 2TB Aurora instance. But once you get the bill, you start seeing the costs of ELBs, NAT gateways, inter-region transfers, etc. Individually, these costs aren't significant, but in aggregate, they can make up a health chunk of your monthly bill.
Plus, their managed solutions are fucking expensive. We moved a self-managed ELK cluster to an AWS-managed one and the costs went up by a factor of two.
If DO or Linode were an option to consider, we might be able to save so much money but our own customers use and believe in AWS so we develop and test on AWS. It's a bit of a vicious cycle.
DO on the other hand from my experience has been catered towards small businesses or hobbyists who simply just don't bring that much money vs even a one giant company will bring. And since DO doesn't have all the goodies of AWS, it can't really directly compete with it for those big customers.
My impression is that DO is doing just fine. I get the sense that the layoffs are just to add to the profitability, not necessarily a sign of weakness. The article did mention that they were still growing revenues very aggressively.
http://calpaterson.com/amazon-premium.html
And they have a lot of lock-in too.