Back to Catalog

Microservices and Serverless for Application Developers

Premium
Intermediatecourse

Learn cloud-native application strategies with microservices and serverless technologies to design, develop, deploy, manage, and secure your applications cloud platforms.

Language

  • English

Topic

  • Cloud Development

Industries

  • Information Technology

Skills You Will Learn

  • Microservices, Serverless, OpenShift, Cloud Applications, Representational State Transfers

Offered By

  • IBMSkillsNetwork

Estimated Effort

  • 5 weeks

Platform

  • SkillsNetwork

Last Update

  • August 8, 2024
About This course
Cloud computing transformed modern software development. One integral change to application architecture has been the move from monolithic applications to microservices. Microservices break down applications into smaller pieces that are independently maintainable and scalable, providing a host of benefits.  

Take this course in order to learn and apply the microservice and serverless architecture to application development so building and deploying applications can proceed in a much more agile fashion. Serverless provides you with the ability to run applications without managing the underlying server infrastructure. 
 
In this course, you architect a series of microservices using an API gateway and the popular Python Flask web framework. You communicate among your microservices with REST APIs. Next, you learn about serverless architecture in order to deploy your microservices with the IBM Cloud Code Engine.   

Learn through instructional videos and readings, then practice your skills with several hands-on labs to apply the content you’ve learned. Use the practice and graded quizzes to assess how well you’ve learned the material. Start now and enjoy your learning experience! 

Learning Objectives:

  • Compare and contrast microservices to monolithic applications 
  • Create and deploy microservices using Docker containers and serverless technologies like IBM Code Engine 
  • Create REST API endpoints and invoke them using cURL and Postman 
  • Use SwaggerUI to document and test your APIs

Prerequisites:

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. 

Course Syllabus:

Module 1: Introduction to Microservices 
  • Twelve-Factor App Methodology 
  • What are Microservices? 
  • Comparison of Monolith vs SOA vs Microservices 
  • Microservices Patterns 
  • Microservices Anti-Patterns 
  • Hands-on Activity: Modernize JPetStore with Microservices 
Module 2: Web API Essentials: REST API and GraphQL 
  • What is REST? 
  • Introduction to API Gateway 
  • Creating REST APIs  
  • Hands-on Lab: Creating a HELLO WORLD REST API with Python & Flask 
  • Making API Requests using cURL and Postman 
  • Hands-on Lab: CRUD Operations with Python 
  • Documenting and Testing REST API with Swagger 
  • Hands-on Lab: Creating a Swagger Documentation for REST API 
Module 3: Serverless Overview  
  • Introduction to Serverless Computing 
  • Serverless Pros and Cons 
  • Introduction to the FaaS Model 
  • The Serverless Framework 
  • Serverless Reference Architecture and Use Cases 
  • Popular Serverless Platforms 
Module 4: Create and Deploy Microservices using Serverless 
  • IBM Cloud Code Engine 
  • Project, Application, Build, and Jobs 
  • Hands-on Lab: Deploying your first application on Code Engine 
  • Building Container Images for Microservices 
  • Deploying and Running Applications  
  • Hands-on Lab: Deploying your first Docker image on Code Engine 
  • Updating Deployed Applications 
  • Hands-on Lab: Deploy, Update, and Scale Microservices using Serverless 
Module 5: Final Project
  • Final Project: Serverless Application based on Microservices 



Instructors

Alex Parker

Product Manager at IBM and Replicated

While at IBM, I was responsible for several of IBM Cloud container services, including IBM Cloud Kubernetes Service, Red Hat OpenShift on IBM Cloud, IBM Cloud Container Registry, and open-source Razee.

Read more

Lavanya Sunderarajan

SME AI, DS and Cloud technologies

I am an educational consultant for Artificial Intelligence, Data Science, and Cloud application development. I am passionate about making learning and upskilling meaningful and impactful for the learners. I have completed the PG program in AI and ML from Great Learning, affiliated with Mc Combs business school, University of Texas, Dallas. I am a certified educator and I conduct technical training for corporates and individual adult learners. I am a software engineer, backed by many years of experience in software development in product-based and project-based companies with involvement in the SDLC. This experience is integrated into my blended teaching methodologies. I embarked on a journey to re-skill staff who did not have the luxury of the hiatus to catch up with technology besides what they got to work on or sometimes left behind technology as they explored other areas. It has been the most gratifying experience to be able to teach technology and hone myself in it too. I have an in-depth understanding of software development using Agile methodologies and DevOps. My extensive international work experience has made me comfortable working with and in different cultures.

Read more