Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

IBM

Microservices and Serverless

IBM via edX

Overview

Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in this course. Enroll to learn more, complete the course and claim your badge!

The emergence of cloud computing has brought about a lot of changes to modern software development. Rather than large annual releases on physical mediums like CDs, modern software is increasingly released on the cloud, provided cost reduction, decreased time to market, and increased agility. These changes allow organizations to keep pace with their competitors and bring new innovations to market in ways that previously would have been unthinkable.

Rather than building large applications, known as monoliths, that perform all the functionality, microservices break down larger applications into smaller pieces that are independently maintainable and scalable, providing a host of benefits. This architecture is used at the largest software organizations in the world, because it provides cost benefits, team autonomy, and so many other advantages.

By the end of this course, you will

  • Have a solid foundation for microservices and serverless
  • Deploy microservices on the cloud
  • Integrate microservices with serverless compute

This course will introduce you to 12-factor apps and microservices, concepts that emerged to help organizations work better and faster in a cloud-native manner. You’ll then learn about serverless computing—how it works, what value it brings, and what are specific serverless technologies. You’ll get hands-on with IBM Cloud Functions, a serverless platform on IBM Cloud that lets you develop serverless apps with ease. Finally, you will learn to build and deploy applications using container images on the code engine.

The course contains several hands-on labs which allow you to apply the content you learn.

The prerequisites for this course include basic computer and cloud literacy as well as an understanding of core cloud concepts. In addition, understanding of the command line and how to use shell commands will greatly benefit you during this course.

Syllabus

Welcome

  • Reading: Welcome to Microservices and Serverless
  • Reading: General Information
  • Reading: Learning Objectives and Syllabus
  • Reading: Grading Scheme
  • Video: Course Introduction

Module 1: Introduction to MicroServices

  • Reading: Module Introduction and Learning Objectives
  • Video: Twelve-Factor App Methodology
  • Video: What are Microservices?
  • Video: Comparison of Monolith vs SOA vs Microservices
  • Video: Microservices Patterns
  • Reading: Microservices Anti-Patterns
  • Hands-on Activity: Modernize JPetStore with Microservices
  • Reading: Summary and Highlights
  • Practice Quiz: Introduction to Microservices
  • Graded Quiz: Introduction to Microservices
  • Reading: Module 1 Glossary - Introduction to Microservices

Module 2: Web API Essentials: REST API and GraphQL

  • Reading: Module Introduction and Learning Objectives
  • Video: What is REST
  • Video: Introduction to API Gateway
  • Video: Creating REST APIs
  • Hands-on Lab: Creating a HELLO WORLD REST API with Python & Flask
  • Video: Making API Requests using cURL and Postman
  • Hands-on Lab: CRUD Operations with Python
  • Video: Documenting and Testing REST API Swagger
  • Hands-on Lab: Documenting and Testing REST API Swagger
  • Hands-on Lab: Optional - Querying with GraphQL
  • Reading: Summary and Highlights
  • Reading: Module 2 Glossary - Web API Essentials REST
  • Practice Quiz: Web API Essentials - REST API and GraphQL
  • Graded Quiz: Web API Essentials - REST API and GraphQL (10 Questions)

Module 3: Serverless Overview

  • Reading: Module Introduction and Learning Objectives
  • Video: Introduction to Serverless Computing
  • Video: Serverless Pros and Cons
  • Video: Introduction to the FaaS Model
  • Video: The Serverless Framework
  • Video: Serverless Reference Architecture and Use Cases
  • Video: Popular Serverless Platforms
  • Reading: AWS Lambda
  • Hands-on Lab: Optional - Signing up for an AWS Account
  • Hands-on Lab: Optional - Creating an AWS Lambda
  • Reading: Summary and Highlights
  • Reading: Module 3 Glossary - Serverless Overview
  • Practice Quiz: Serverless Overview
  • Graded Quiz: Serverless Overview (10 Questions)

Module 4: Create and Deploy Microservices using Serverless

  • Reading: Module Introduction and Learning Objectives
  • Video: IBM Cloud Code Engine
  • Video: Project, Application, Build, and Jobs
  • Hands-on Lab: Deploying your first application on Code Engine
  • Video: Building Container Images for Microservices
  • Video: Deploying and Running Applications
  • Hands-on Lab: Deploying your first Docker image on Code Engine
  • Video: Updating Deployed Applications
  • Hands-on Lab: Deploy, Update, and Scale Microservices using Serverless
  • Reading: Summary and Highlights
  • Graded Quiz: Create and Deploy Microservices (10 Questions)
  • Reading: Module 4 Glossary - Create and Deploy Microservices
  • Practice Quiz: Create and Deploy Microservices

Final Assignment:

  • Final Project Overview and Grading Criteria
  • Final Project: Serverless Web Application and API
  • Peer-Graded Final Assignment: Serverless Web Application and API

Module 5: [Optional] OpenShift Essentials/Working with OpenShift and Istio

  • Reading: Module Introduction
  • Video: OpenShift Recap
  • Video: Service Mesh and Istio
  • Video: Microservices with OpenShift
  • Video: Red Hat Marketplace
  • Hands-on Lab: OpenShift
  • Reading: Summary and Highlights
  • Practice Quiz
  • Practice Quiz: OpenShift Essentials/Working with OpenShift and Istio

Taught by

Alex Parker

Reviews

4.1 rating at edX based on 9 ratings

Start your review of Microservices and Serverless

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.