Developing Applications with Google Cloud (DAGCP) – Outline

Detailed Course Outline

Module 1: Best Practices for Application Development

Topics:

  • This module introduces best practices for developing applications that run in the cloud.

Objectives:

  • Discuss best practices for application development in the cloud.
  • Describe patterns for improving stability and reliability of cloud applications.

Activities:

  • 1 quiz

Module 2 - Getting Started with Google Cloud Development

Topics:

  • This module introduces the various Google Cloud tools you will use to develop your applications.

Objectives:

  • Discuss how the Google Cloud SDK lets you interact with Google Cloud services.
  • Describe how Cloud Client Libraries can be used in your applications.
  • Discuss how Cloud Code helps developers create cloud applications on Google Cloud.

Activities:

  • 1 quiz

Module 3 - Data Storage Options

Topics:

  • This module compares the data storage and database services provided by Google Cloud.

Objectives:

  • Understand how to choose the appropriate data storage option for application use cases.
  • Use Firestore to store document-based application data.
  • Use Cloud Storage to store unstructured data.

Activities:

  • 1 lab, 1 quiz

Module 4 - Handling Authentication and Authorization

Topics:

  • This module explains how authentication and authorization are added to your cloud applications.

Objectives:

  • Discuss how Identity-Aware Proxy authenticates application users.
  • Describe the use of federated identity for applications in Google Cloud.
  • Describe how to authenticate your application to Google Cloud APIs based on how your application is deployed.
  • Use authentication and authorization to secure an application.

Activities:

  • 1 quiz

Module 5 - Adding Intelligence to Your Application

Topics:

  • This module discusses how pretrained machine learning APIs and generative AI can improve your cloud applications.

Objectives:

  • Describe how pretrained machine learning APIs can be called from applications.
  • Differentiate the use cases for Google Cloud's pretrained machine learning APIs.
  • Use a Google Cloud pretrained machine-learning API in an application.

Activities:

  • 1 lab, 1 quiz

Module 6 - Deploying Applications

Topics:

  • This module discusses how to build and deploy applications on Google Cloud.

Objectives:

  • Discuss the features of a continuous integration and delivery pipeline.
  • Describe how to build and store application container images.
  • Create a container image by using Cloud Build.

Activities:

  • 1 quiz

Module 7 - Compute Options for Your Application

Topics:

  • This module discusses the compute options available for running your applications in Google Cloud.

Objectives:

  • Describe use cases for the different compute options used for running applications on Google Cloud.
  • Differentiate the benefits of different compute options on Google Cloud.

Activities:

  • 1 quiz

Module 8 - Monitoring and Performance Tuning

Topics:

  • This module discusses the application use cases of the services in Google Cloud's operations suite.

Objectives:

  • Recognize the four golden signals.
  • Describe benefits of the services in Google Cloud's operations suite.

Activities:

  • 1 lab, 1 quiz

Module 9 - Introduction to Microservices

Topics:

  • This module introduces you to microservices and discusses the benefits and challenges of using a microservices architecture for your applications.

Objectives:

  • Describe the differences between monolithic applications, service-oriented architecture (SOA), and microservices.
  • Describe the benefits and challenges of microservice-based architectures.

Activities:

  • 1 quiz

Module 10 - Event-Driven Applications

Topics:

  • This module introduces events and event-driven applications and discusses the benefits of choosing an event-driven architecture for your microservices applications.

Objectives:

  • List the characteristics of an event.
  • Describe the advantages of event-driven applications.

Activities:

  • 1 quiz

Module 11 - Choreography and Orchestration

Topics:

  • This module introduces two effective patterns for inter-service communication: choreography and orchestration. Eventarc uses the choreography pattern, which allows independent services to perform tasks when events are received. Workflows uses orchestration, and acts as a central orchestrator of the interactions between the services. You learn how Workflows, Eventarc, Cloud Tasks, and Cloud Scheduler can be used to build powerful microservices applications on Google Cloud.

Objectives:

  • Understand how Pub/Sub and Eventarc can be used to connect services by using the choreography pattern.
  • Explain the benefits of using CloudEvents for event metadata.
  • Understand how Workflows can be used to orchestrate services.
  • Differentiate the use cases for choreography and orchestration.
  • Use Workflows, Eventarc, Cloud Tasks, and Cloud Scheduler to coordinate a microservices application on Google Cloud.

Activities:

  • 1 lab, 1 quiz

Module 12 - Introduction to Cloud Functions

Topics:

  • An introduction to Cloud Functions
  • Benefits and use cases
  • Types of Cloud Functions and language runtimes

Objectives:

  • Define Cloud Functions.
  • Identify the use cases, features, and benefits of Cloud Functions.
  • Distinguish the types of Cloud Functions, and identify the supported languages for developing functions.
  • Develop and deploy a Cloud Function using the Google Cloud console and gcloud CLI.

Activities:

  • 1 lab, 1 quiz

Module 13 - Calling and Connecting Cloud Functions

Topics:

  • Cloud Functions triggers
  • Connecting Cloud Functions

Objectives:

  • Understand the different kinds of triggers available, and learn how to specify triggers for functions.
  • Connect services and functions with workflows.
  • Connect functions to resources in a VPC network.

Activities:

  • 1 lab, quiz

Module 14 - Securing Cloud Functions

Topics:

  • Accessing and authenticating to functions
  • Protecting functions and data

Objectives:

  • Secure Cloud Functions with identity and network-based access controls.
  • Understand function identity.
  • Understand how to authenticate and authorize access to functions for invocation and administration.
  • Protect functions and related data with encryption keys.

Activities:

  • 1 quiz

Module 15 - Integrating with Cloud Databases

Topics:

  • Integrate Cloud Functions with cloud databases
  • Use secrets with Cloud Functions

Objectives:

  • Integrate Cloud Functions with cloud databases such as Firestore, and Memorystore.
  • Use secrets with Cloud Functions.
  • Use environment variables with Cloud Functions.

Activities:

  • 1 lab, 1 quiz

Module 16 - Best Practices

Topics:

  • Cloud Functions best practices

Objectives:

  • Use best practices when developing and implementing Cloud Functions.
  • Understand how to retry event-driven Cloud Functions on failure.

Activities:

  • 1 quiz.