We may earn an affiliate commission when you visit our partners.
Course image
Alex Parker

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!

Read more

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.

What's inside

Learning objectives

  • Identify the twelve factors and describe how they map to the software delivery lifecycle
  • Create and test swagger documentation for rest api endpoints
  • Create and test a serverless function
  • Build and deploy applications using container images on the code engine

Syllabus

Welcome
Reading: Welcome to Microservices and Serverless
Reading: General Information
Reading: Learning Objectives and Syllabus
Read more
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
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: 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
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: Module 3 Glossary - Serverless Overview
Practice Quiz: Serverless Overview
Graded Quiz: Serverless Overview (10 Questions)
Module 4: Create and Deploy Microservices using Serverless
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
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
Practice Quiz
Practice Quiz: OpenShift Essentials/Working with OpenShift and Istio

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops concepts and practices that are industry standard
Examines microservices, which is highly relevant to software delivery
Teaches serverless computing, which is an in-demand skill in industry
Offers hands-on labs and interactive materials
Builds a strong foundation for beginners in software delivery
Optional module explores OpenShift and Istio

Save this course

Save Microservices and Serverless to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Microservices and Serverless with these activities:
Review API gateway architectures
Review how API Gateway is used to manage and secure REST APIs and GraphQL queries
Browse courses on API Gateway
Show steps
  • Read about API Gateway architecture
  • Review REST API design patterns and best practices
  • Experiment with a simple REST API using API Gateway
Design a simple Microservices Architecture
Design a simple microservices architecture for a given scenario, considering factors such as domain decomposition and service boundaries
Show steps
  • Identify the different components of the system
  • Decompose the system into microservices
  • Design the communication protocols between the microservices
  • Create a deployment plan for the microservices
Practice deploying microservices on the IBM Cloud
Practice deploying microservices on the IBM Cloud using Code Engine or Kubernetes Service
Browse courses on IBM Cloud
Show steps
  • Create an IBM Cloud account
  • Create a Code Engine or Kubernetes Service cluster
  • Deploy a microservice to the cluster
  • Test the deployed microservice
Show all three activities

Career center

Learners who complete Microservices and Serverless will develop knowledge and skills that may be useful to these careers:
Software Developer
Software Developers build and maintain software applications. They are responsible for the entire software development lifecycle, from design and development to testing and deployment. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern software development. You will learn how to design and implement microservices-based applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any software development team.
Data Engineer
Data Engineers are responsible for designing and building data pipelines. They are responsible for ensuring that data is accurate, consistent, and accessible. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern data engineering. You will learn how to design and implement microservices-based data pipelines, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any data engineering team.
Site Reliability Engineer
Site Reliability Engineers are responsible for ensuring that websites and applications are reliable and scalable. They are responsible for monitoring, troubleshooting, and resolving issues with websites and applications. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern site reliability engineering. You will learn how to design and implement microservices-based websites and applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any site reliability engineering team.
Cloud Architect
Cloud Architects design and implement cloud-based solutions. They are responsible for ensuring that cloud-based applications are scalable, reliable, and secure. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for cloud-based applications. You will learn how to design and implement microservices-based applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any cloud architecture team.
AI Engineer
AI Engineers are responsible for designing and building AI-powered applications. They are responsible for ensuring that AI applications are accurate, reliable, and ethical. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern AI development. You will learn how to design and implement microservices-based AI applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any AI engineering team.
Backend Developer
Backend Developers are responsible for designing and building the backend of web applications. They are responsible for ensuring that the backend is scalable, reliable, and secure. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern backend development. You will learn how to design and implement microservices-based backend applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any backend development team.
DevOps Engineer
DevOps Engineers are responsible for bridging the gap between development and operations teams. They are responsible for automating and streamlining the software development lifecycle, from design and development to testing and deployment. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern software development. You will learn how to design and implement microservices-based applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any DevOps team.
Full-Stack Developer
Full-Stack Developers are responsible for designing and building both the frontend and backend of web applications. They are responsible for ensuring that the web application is scalable, reliable, and secure. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern full-stack development. You will learn how to design and implement microservices-based full-stack web applications, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any full-stack development team.
Systems Administrator
Systems Administrators are responsible for managing and maintaining computer systems. They are responsible for ensuring that systems are up and running, and that they are secure. This course can help you build a solid foundation in microservices and serverless, which are essential technologies for modern systems administration. You will learn how to design and implement microservices-based systems, and how to integrate them with serverless functions. This knowledge will make you a more valuable asset to any systems administration team.
Technical Writer
Technical Writers are responsible for creating technical documentation. They are responsible for ensuring that technical documentation is accurate, clear, and concise. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern technical writing. You will learn how to design and implement microservices-based technical documentation, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any technical writing team.
Business Analyst
Business Analysts are responsible for understanding the business needs of an organization and translating those needs into technical requirements. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern business analysis. You will learn how to design and implement microservices-based business solutions, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any business analysis team.
Product Manager
Product Managers are responsible for managing the product development lifecycle. They are responsible for ensuring that products meet the needs of customers and that they are profitable. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern product development. You will learn how to design and implement microservices-based products, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any product management team.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. They are responsible for ensuring that projects are completed on time, within budget, and to the required quality. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern project management. You will learn how to design and implement microservices-based projects, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any project management team.
Front-End Developer
Front-End Developers are responsible for designing and building the user interface of web applications. They are responsible for ensuring that the user interface is user-friendly, responsive, and accessible. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern front-end development. You will learn how to design and implement microservices-based front-end applications, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any front-end development team.
Quality Assurance Engineer
Quality Assurance Engineers are responsible for testing software applications to ensure that they are free of defects. They are responsible for identifying and fixing bugs in software applications. This course may help you build a foundation in microservices and serverless, which are essential technologies for modern quality assurance. You will learn how to design and implement microservices-based quality assurance tests, and how to integrate them with serverless functions. This knowledge may make you a more valuable asset to any quality assurance team.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Microservices and Serverless.
Provides deep insights into the strategies and architectural patterns required to build and maintain microservices. It great reference for professionals looking to improve their understanding of microservices design and implementation.
Provides a comprehensive overview of serverless computing, including advantages, challenges, and best practices. It valuable resource for professionals who want to explore serverless architecture for their applications.
Discusses the twelve factors for developing software applications that are suitable for cloud native deployment. It is essential for professionals who want to utilize the benefits of cloud computing.
Comprehensive guide to designing and implementing REST APIs. It covers principles, best practices, and common pitfalls, serving as a valuable reference for professionals.
Provides a hands-on guide to GraphQL, explaining its concepts and implementation. It useful resource for professionals who want to adopt GraphQL for their projects.
Provides a detailed overview of IBM Code Engine, a serverless platform for deploying containerized applications. It includes hands-on tutorials and reference information, making it a valuable resource for developers using IBM Cloud.
Provides a collection of recipes and best practices for designing and implementing RESTful web services. It valuable reference for professionals who want to build scalable and efficient RESTful APIs.
Provides a comprehensive guide to Kubernetes, a popular container orchestration platform. It valuable resource for professionals who want to learn about Kubernetes and implement it in their projects.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Microservices and Serverless.
Application Development using Microservices and...
Most relevant
Back-end Application Development Capstone Project
Most relevant
Introduction to Cloud Computing
Most relevant
Full Stack Application Development Capstone Project
Most relevant
Using the Serverless Framework with Node.js on AWS
Most relevant
Creating Azure Serverless Functions in a Real-World...
Most relevant
Google Cloud Functions Fundamentals
Most relevant
Building Cloud Native and Multicloud
Cloud-Native: Microservices, Kubernetes, Service Mesh,...
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser