This course provides an introduction to the development and support for Cloud-native applications, more specifically it delves into best practices of developing applications; migrating on premise applications to the cloud; the basic building blocks and properties expected from Cloud applications. The course also provide highlights of some novel cloud applications, including geo-distributed computations.