Developing Applications with Google Cloud 

(3 days)

 

In this three-day instructor-led course, you learn the fundamentals of application development on Google Cloud. You learn best practices for designing cloud applications, and how to choose compute and data options for your apps. You learn about authentication and authorization, generative AI for developers, and continuous integration and delivery for your apps running in Google Cloud. You learn about event-based applications and the use of service orchestration and choreography to coordinate microservices. You learn about Cloud Functions, which allows you to implement single-purpose functions that respond to HTTP requests and process events within your cloud infrastructure.

 

Objectives

  • Discuss best practices for application development in the cloud
  • Understand how to choose the appropriate data storage option for application use cases
  • Use authentication and authorization to secure an application
  • Describe use cases for the different Google Cloud compute options used for running applications
  • Describe the benefits and challenges of microservice-based architectures
  • Describe the advantages of event-driven applications
  • Identify the strengths of orchestration and choreography
  • Use Workflows, Eventarc, Cloud Tasks, and Cloud Scheduler to coordinate a microservices application on Google Cloud
  • Recognize the benefits of and use cases for Cloud Functions in modern application development
  • Understand how to build, test, and deploy Cloud Functions
  • Secure and connect Cloud Functions to resources and cloud databases
  • Use best practices with Cloud Functions

Audience

Application developers, architects, and cloud engineers.

Prerequisites

  • Programming experience is recommended
  • Basic proficiency with command-line tools and Linux operating system environments is helpful

Course Outline

Module 1: Best Practices for Cloud Application Development

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

Module​ ​​2:​​ Getting Started with Google Cloud Development

  • 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

Module​ ​​3:​​ Data Storage Options

  • 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

Module​ ​​4:​​ Handling Authentication and Authorization

  • 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

Module​ ​​5:​​ Adding Intelligence to Your Application

  • 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

Module​ ​​6: Deploying Applications

  • 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

Module​ ​​7: Compute Options for Your Application

  • 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

Module 8: Monitoring and Performance Tuning

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

Module​ ​​9: Introduction to Microservices

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

Module​ ​​10: Event-Driven Applications

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

Module​ ​​11: Choreography and Orchestration

  • 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

Module​ ​​12: Introduction to Cloud Functions

  • 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

Module​ ​​13: Calling and Connecting Cloud Functions

  • 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

Module​ ​​14: Securing Cloud Functions

  • 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

Module​ ​​15: Integrating with Cloud Databases

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

Module​ ​​16: Best Practices

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