Course Description
This IBM course focuses on the fundamentals of microservices and serverless architectures in a cloud-driven environment. It describes the benefits of breaking down applications into smaller, independently maintainable modules known as microservices, and the advantages of serverless computing, including cost efficiency and scalability. A significant feature of this course is that it extends learning through hands-on experience with IBM Cloud Functions and container usage via Code Engine.
What Students Will Learn
- A solid understanding of microservices and serverless architectures.
- Skills to deploy microservices in the cloud effectively.
- Techniques to integrate microservices with serverless compute services.
- Knowledge of 12-factor applications and how they are relevant in cloud-native operations.
- How to build, test, and deploy applications using container images on an engine code service.
Course Prerequisites
Students interested in taking this course should possess basic computer skills and cloud literacy. They should understand core cloud concepts, command lines, and shell commands usage.
Course Coverage
- Introduction to microservices and serverless computing.
- Deployment of microservices on the cloud.
- Using IBM Cloud Functions for developing serverless apps.
- Working with 12-factor apps to enhance cloud-native development.
- Hands-on labs for real-world application building and deployment.
Who This Course Is For
This course is designed for intermediate learners who are interested in software development, specifically in building modern cloud-native applications. It is suitable for those looking to enhance their knowledge in DevOps, software engineering, and full-stack development.
Application of Learned Skills
Skills acquired from this course can be applied directly to real-world software development projects. Learners will be prepared to design, build, and manage scalable and efficient software using microservices and serverless technologies, significantly contributing to organizational IT infrastructure developments and innovations.
Course Syllabus
Module 1: Introduction to MicroServices
- Understanding Microservices and their patterns.
- Comparison of Monolithic architectures, SOA, and Microservices.
- Hands-on lab: Modernizing applications using Microservices.
Module 2: Web API Essentials
- Essentials of creating and using REST APIs and GraphQL.
- Using API Gateways and creating applications with Python & Flask.
- Documenting and testing APIs with Swagger.
Module 3: Serverless Overview
- Key concepts of Serverless computing and its advantages.
- Exploration of Serverless platforms and use cases.
- Practical labs using AWS Lambda and the Serverless Framework.
Module 4: Create and Deploy Microservices using Serverless
- Deploying applications on IBM Cloud Code Engine.
- Building container images for microservices.
- Updating and scaling microservices effectively.
Optional Module 5: OpenShift and Istio Essentials
- Introduction to OpenShift, Service Mesh, and Istio.
- Using these tools for enhancing microservices architectures.
Final Assignment
- Project: Creating a Serverless Web Application and API.