thanhtcptit / Building-Cloud-Computing-Solutions-at-Scale-Specialization

Resources of the Building Cloud Computing Solutions at Scale Specialization in Coursera

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Syllabus

Course 1: Cloud Computing Foundations

Welcome to the first course in the Building Cloud Computing Solutions at Scale Specialization! In this course, you will learn how to build foundational Cloud computing infrastructure, including websites involving serverless technology and virtual machines. You will also learn how to apply Agile software development techniques to projects which will be useful in building portfolio projects and global-scale Cloud infrastructures.

This course is ideal for beginners as well as intermediate students interested in applying Cloud computing to data science, machine learning and data engineering. Students should have beginner level Linux and intermediate level Python skills. For your project in this course, you will build a statically hosted website using the Hugo framework, AWS Code Pipelines, AWS S3 and GitHub.

Week 1: Getting Started with Cloud Computing Foundations

This week, you will learn how to access the free tiers of three Cloud environments. You will then have an opportunity to review the details of the final project in this course: Building a Hugo Static Website that is Continuously Deployed using AWS Code Build and AWS S3 Static Hosting. Each week, you will learn and build upon key Cloud development skills to prepare you for this final course project.

Learning Objectives

  • Explore the overall structure and final project goals of this course.
  • Acquire access to the free tiers of three Cloud platforms.

Week 2: Developing Effective Technical Communication

Getting started with a good plan is the most challenging part of building software. Before we dive into the technical aspects of Cloud development, let's spend some time discussing strategies for effective technical communication. This week, you will learn strategies for expressing thoughts effectively in a technical forum in a digitally native way, constructing effective technical discussions that enhance discussions and provide reusable documentation and explaining successful techniques for teamwork in technical projects. You will apply this by creating a project plan for the Final Course Project. This project plan includes a spreadsheet, a GitHub project and a Trello board.

Learning Objectives

  • Express thoughts effectively in a technical forum in a digitally native way.
  • Construct effective technical discourse that enhances discussions and provides reusable documentation.
  • Explain successful techniques for teamwork in technical projects.

Week 3: Exploring Cloud Onboarding

This week, you will learn how to build continuous delivery pipelines and apply the essential practices of continuous integration in Cloud onboarding. These pipelines use both Cloud-native build servers as well as the popular 3rd party SaaS build server: GitHub Actions. Additionally you build Continuous Delivery Pipelines in multiple Cloud platforms (AWS, Azure, and GCP).

Learning Objectives

  • Apply the essential practices of continuous integration in Cloud onboarding.
  • Create a Cloud-based development environment.
  • Develop continuous integration solutions using GitHub Actions.
  • Build continuous delivery pipelines on AWS, Azure and GCP.

Week 4: Evaluating the Cloud Service Model

This week, you will learn about the different types of Cloud service models. These models include: Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Serverless. You will apply this knowledge by building multiple types of websites: Static, serverless, virtualized and PaaS.

Learning Objectives

  • Examine the different types of Cloud service models.
  • Build multiple websites on AWS.
  • Explain the economics of Cloud computing.

Week 5: Applying DevOps Principles

This week, you will learn DevOps and how to apply the principles of DevOps to projects you work on. Then, you will examine the shared practices of software development and IT operations using DevOps. Finally, you will utilize Infrastructure as Code (IaC) to manage Cloud Infrastructure and develop continuous delivery pipelines.

Learning Objectives

  • Examine the shared practices of software development and IT operations using DevOps.
  • Utilize Infrastructure as Code (IaC) to manage Cloud infrastructure.
  • Develop continuous delivery pipelines.

Course 2: Cloud Virtualization, Containers and APIs

Welcome to the second course in the Building Cloud Computing Solutions at Scale Specialization! In this course, you will learn to design Cloud-native systems with the fundamental building blocks of Cloud computing. These building blocks include virtual machines and containers. You will also learn how to build effective Microservices using technologies like Flask and Kubernetes. Finally, you will analyze successful patterns in Operations including: Effective alerts, load testing and Kaizen.

This course is ideal for beginners as well as intermediate students interested in applying Cloud computing to data science, machine learning and data engineering. Students should have beginner level Linux and intermediate level Python skills. For your project in this course, you build a containerized Flask application that is continuously deployed to a Cloud platform: Amazon Web Services (AWS), Azure or Google Cloud Platform (GCP).

Week 1: Getting Started with Cloud Building Blocks

This week, you will learn how to access the free tiers of three Cloud environments. If you are joining after completing the first course in this Specialization, this will already be familiar to you. You will then have an opportunity to review the details of the final project in this course: Creating a containerized Flask application that is continuously deployed to a Cloud platform. Each week, you will learn and build upon key Cloud development skills to prepare you for this final course project.

Learning Objectives

  • Explore the overall structure and final project goals of this course.
  • Acquire access to the free tiers of three Cloud platforms.

Week 2: Virtualization and Containers

This week, you will learn to evaluate the correct workflows for virtual machines and containers and how to choose the appropriate solution for the task at end. You will also learn about the powerful container management service: Kubernetes. You will apply this knowledge to create a containerized web service and deploy it to a managed container service.

Learning Objectives

  • Evaluate different virtualization abstractions.
  • Build solutions with containers.
  • Build solutions with virtual machines.

Week 3: Microservices

This week, you will learn to build effective Microservices that comply with DevOps best practices. You will also learn to operationalize Microservices using Continuous Delivery. You will apply this knowledge to create an effective Microservice using AWS Lambda.

Learning Objectives

  • Evaluate Microservice architectures.
  • Build Microservices with Python Flask.
  • Apply DevOps best practices for Serverless Microservices.

Week 4: Operations

This week, you will learn to effectively perform Operations. This involves mastering Monitoring and Alerts. A key question about Monitoring and Alerts is what to do when they occur. This question is handled in the following lesson. You will learn how load testing can prevent issues before they arise. Finally, the topic of Kaizen, or continuous improvement, is tackled. All of the topics this week are components of DevOps best practices.

Learning Objectives

  • Build effective and actionable monitoring and alerting.
  • Evaluate different infrastructure configurations that optimize Cloud computing performance.
  • Evaluate best practices for Operations including alerts, load testing and Kaizen methodology.

Course 3: Cloud Data Engineering

Welcome to the third course in the Building Cloud Computing Solutions at Scale Specialization! In this course, you will learn how to apply Data Engineering to real-world projects using the Cloud computing concepts introduced in the first two courses of this series. By the end of this course, you will be able to develop Data Engineering applications and use software development best practices to create data engineering applications. These will include continuous deployment, code quality tools, logging, instrumentation and monitoring. Finally, you will use Cloud-native technologies to tackle complex data engineering solutions.

This course is ideal for beginners as well as intermediate students interested in applying Cloud computing to data science, machine learning and data engineering. Students should have beginner level Linux and intermediate level Python skills. For your project in this course, you will build a serverless data engineering pipeline in a Cloud platform: Amazon Web Services (AWS), Azure or Google Cloud Platform (GCP).

Week 1: Getting Started with Cloud Data Engineering

This week, you will learn about the methodologies involved in Data Engineering. You will also learn to evaluate best practices for dealing with the end of Moore’s Law, develop distributed systems that apply software engineering best practices and evaluate best practices for implementing solutions with Big Data. You will apply these practices to build a GPU programming project using Numba and the CUDA SDK.

Learning Objectives

  • Explore the overall structure and final project goals of this course.
  • Evaluate best practices for dealing with the end of Moore's Law.
  • Develop distributed systems that apply software engineering best practices.
  • Evaluate best practices for implementing solutions with Big Data.

Week 2: Examining Principles of Data Engineering

This week, you will learn what Data Engineering is and how to use software engineering best practices in Data Engineering. You will then apply this knowledge by building a command-line data processing tool.

Learning Objectives

  • Analyze best practices in Data Engineering.
  • Build Python Command-line tools.
  • Apply software engineering best practices in testing to Command-line tools.

Week 3: Building Data Engineering Pipelines

This week, you will learn serverless data engineering techniques and data governance best practices. You will then apply this knowledge by building a serverless Data Engineering system.

Learning Objectives

  • Build a serverless Data Engineering system.
  • Evaluate effective Data Governance in Cloud solutions.

Week 4: Applying Key Data Engineering Tasks

This week, you will learn about key Data Engineering tasks including ETL, Cloud Databases and Cloud Storage. You will then apply this knowledge by building a serverless AWS lambda function that labels an image using the AWS Rekognition API.

Learning Objectives

  • Develop Cloud ETL (Extract, Load, Transfer) pipelines.
  • Evaluate best practices for Cloud databases and storage.

Course 4: Cloud Machine Learning Engineering and MLOps

Welcome to the fourth course in the Building Cloud Computing Solutions at Scale Specialization! In this course, you will build upon the Cloud computing and data engineering concepts introduced in the first three courses to apply Machine Learning Engineering to real-world projects. First, you will develop Machine Learning Engineering applications and use software development best practices to create Machine Learning Engineering applications. Then, you will learn to use AutoML to solve problems more efficiently than traditional machine learning approaches alone. Finally, you will dive into emerging topics in Machine Learning including MLOps, Edge Machine Learning and AI APIs.

This course is ideal for beginners as well as intermediate students interested in applying Cloud computing to data science, machine learning and data engineering. Students should have beginner level Linux and intermediate level Python skills. For your project in this course, you will build a Flask web application that serves out Machine Learning predictions.

Week 1: Getting Started with Machine Learning Engineering

This week, you will learn about the methodologies involved in Machine Learning Engineering. By the end of the week, you will be able to develop Machine Learning Engineering applications and use software development best practices to create Machine Learning Engineering applications.

Learning Objectives

  • Explore the overall structure and final project goals of this course.
  • Evaluate machine learning engineering best practices.
  • Build machine learning applications.
  • Utilize continuous delivery for machine learning.

Week 2: Using AutoML

This week, you will learn about AutoML and how to use it to build efficient Machine Learning solutions with little to no code. These technologies include Ludwig, Google AutoML, Apple Create ML and Azure Machine Learning Studio. You will apply these solutions by using both open source and Cloud AutoML technology.

Learning Objectives

  • Develop Cloud solutions with AutoML.
  • Evaluate open source and proprietary AutoML.
  • Evaluate AutoML strategies with Ludwig.

Week 3: Emerging Topics in Machine Learning

This week, you will learn MLOps strategies and best practices in designing Cloud solutions. Then, you will explore Edge Machine Learning and how to use AI APIs. You will apply these strategies to build a low code or no code Cloud solution that performs Natural Language Processing or Computer Vision.

Learning Objectives

  • Evaluate effective MLOps strategies.
  • Evaluate Edge machine learning solutions using MLOps best practices
  • Develop Cloud solutions using AI APIs.

Certificate

Certificate

About

Resources of the Building Cloud Computing Solutions at Scale Specialization in Coursera