There are a few items to consider when building software to be “cloud-native”. These considerations take into account key differences in how resources are allocated and availability with PaaS services and IaaS resources.
Scale Out over Scale up (Part 1)
Graceful Fault Handling (Part 1)
Multi-Zone and Multi-Region Deployment (Part 2)
Do Not Write to the Local File systems (Part 2)
Stateless Design (Part 2)
Serverless (Part 3)
PaaS Services (Part 3)