Goals

Understand the principles of cloud computing and how it differs from traditional on-premises or colocation hosting. Get to know multiple API styles and deployment methods. Implement and deploy a cloud application.

Motivation

Cloud computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing. Instead of buying, owning, and maintaining physical data centers and servers, we can access technology services, such as computing power, storage, and databases, on an as-needed basis from a cloud provider.

Startups

Cloud computing is especially interesting for startups. Even small teams can create platforms with hundreds of servers, functions, and databases without upfront costs. This allows startups to grow with their customer base.

kitchn.io is a startup based in Berlin that automates performance marketing. Depending on the season, current trends, or time of day, their workload can change dramatically. To adapt the platform to their needs, they use scalable cloud infrastructure.

Kitchn.io - Paid Social Ads Automation

Screenshot 2023-02-23 at 09.29.22.png

Filestage is a startup based in Stuttgart that implements a review and approval process for videos, images, audio, documents, and more. Their workload varies depending on production deadlines and the number of active projects. With a scalable cloud infrastructure, they can adapt to changing workloads and pay only for what they need.

Filestage: The world’s best-rated review and approval platform

Screenshot 2023-02-23 at 09.34.58.png

Big Companies

Netflix is a further example of a company that uses cloud computing for nearly all its computing and storage needs, including databases, analytics, recommendation engines, video transcoding, and more. Hundreds of functions that in total use more than 100,000 server instances on AWS.

AWS Innovator: Netflix | Case Studies, Videos and Customer Stories

Untitled

Blocks

In this course, we will work through different thematic blocks.

Lecture Sessions

We will start with lecture sessions to get familiar with the principals of cloud computing and further related topics.

Cloud Computing

Understand the principles of cloud computing and how it differs from traditional on-premises or colocation hosting. Get to know the principal service models, major cloud providers and their services. Understand the difference between a traditional and a serverless cloud application. Implement and monitor a simple cloud application.

Examples

Exercises

REST

Gain an understanding of the REST architectural style for web services, as well as its motivation. Design and document a RESTful API, and learn the differences between it and GraphQL .

Examples

Exercises

GraphQL

Get to know the fundamentals of GraphQL: understand the query language and its runtime. Design and implement a GraphQL API, and learn the differences between it and REST.

Examples

Exercises

Terraform

Understand the core concepts behind Infrastructure as Code and tools like Terraform, that allows to automate the setup and configuration of cloud infrastructure. Setup a Terraform project and apply it to create and manage real infrastructure.

Examples

Exercises

AWS IAM

Grasp the principles of Identity and Access Management (IAM) on Amazon Web Services. Learn how to setup access policies to enable users to access different services and perform actions. Follow the tutorials to start working with IAM.

Examples

Exercises