No doubt Cloud is great for minimizing upfront dev costs while you realize your product market fit and managing your scale as you grow. AWS is indeed a market leader here and no one can contest that.

However, two key factors need to be considered at some point. Firstly, you're committing your code (and future growth) to say those AWS APIs. Will AWS be the next great vendor lock-in such as VMware? Secondly, at a certain scale though you need to reevaluate your model as the AWS $$$$ will start adding up. Compute and storage are cheap, but as you get traction in the market those I/O costs make the AWS model very questionable. TCO is a major factor here, and we are seeing a lot of Cloud Native start-ups re-consider dev and deployment model at a certain junction point.

Based on the points above, startups in my view should highly consider OpenSource based Cloud such as OpenStack to avoid lock-in while minimizing costs over the long haul. Various platforms exist to manage OpenStack for you to minimize that complexity. Cisco recently acquired Metacloud (now Cisco OpenStack Private Cloud) that provides a robust Managed OpenStack aaS solution. It provides that true public cloud experience for users but on your premises with the TCO benefits of Private Cloud at Scale. Great case study here from TapJoy demonstrating just that: