Developing Applications with Google Cloud Platform (GO6593)

In this course, application developers learn how to design, develop, and deploy applications that seamlessly integrate components from the Google Cloud ecosystem. Through a combination of presentations, demos, and hands-on labs, participants learn how to use GCP services and pre-trained machine learning APIs to build secure, scalable, and intelligent cloud-native applications.
 
Target Audience
  • Application developers who want to build cloud-native applications or redesign existing applications that will run on Google Cloud Platform
 
Objectives
In this course you will learn:
  • Use best practices for application development.
  • Choose the appropriate data storage option for application data.
  • Implement federated identity management.
  • Develop loosely coupled application components or microservices.
  • Integrate application components and data sources.
  • Debug, trace, and monitor applications.
  • Perform repeatable deployments with containers and deployment services.
  • Choose the appropriate application runtime environment; use Google Container Engine as a runtime environment and later switch to a no-ops solution with Google App Engine Flex.
 
Prerequisites
To get the most out of this course, participants should have:
  • Completed Google Cloud Platform Fundamentals (GO8324)  or have equivalent experience
  • Working knowledge of Node.js
  • Basic proficiency with command-line tools and Linux operating system environments
Show details
Content
Module 1: Best Practices for Application Development
  • Code and environment management
  • Design and development of secure, scalable, reliable, loosely coupled application components and microservices
  • Continuous integration and delivery
  • Re-architecting applications for the cloud
 
Module 2: Google Cloud Client Libraries, Google Cloud SDK, and Google Firebase SDK
  • How to set up and use Google Cloud Client Libraries, Google Cloud SDK, and Google Firebase SDK
  • Lab: Set up Google Client Libraries, Google Cloud SDK, and Firebase SDK on a Linux instance and set up application credentials
 
Module 3: Overview of Data Storage Options
  • Overview of options to store application data
  • Use cases for Google Cloud Storage, Google Cloud Datastore, Cloud Bigtable, Google Cloud SQL, and Cloud Spanner
 
Module 4: Best Practices for Using Cloud Datastore
  • Best practices related to the following: Queries, Built-in and composite indexes, Inserting and deleting data (batch operations), Transactions, Error handling
  • Bulk-loading data into Cloud Datastore by using Google Cloud Dataflow
  • Lab: Store application data in Cloud Datastore
 
Module 5: Performing Operations on Buckets and Objects
  • Operations that can be performed on buckets and objects
  • Consistency model
  • Error handling
 
Module 6: Best Practices for Using Cloud Storage
  • Naming buckets for static websites and other uses
  • Naming objects (from an access distribution perspective)
  • Performance considerations
  • Setting up and debugging a CORS configuration on a bucket
  • Lab: Store files in Cloud Storage
 
Module 7: Securing Your Application
  • Cloud Identity and Access Management (IAM) roles and service accounts
  • User authentication by using Firebase Authentication
  • User authentication and authorization by using Cloud Identity-Aware Proxy
  • Lab: Authenticate users by using Firebase Authentication
 
Module 8: Using Google Cloud Pub/Sub to Integrate Components of Your Application
  • Topics, publishers, and subscribers
  • Pull and push subscriptions
  • Use cases for Cloud Pub/Sub
  • Lab: Develop a backend service to process messages in a message queue
 
Module 9: Adding Intelligence to Your Application
  • Overview of pre-trained machine learning APIs such as Cloud Vision API and Cloud Natural Language Processing API.
 
Module 10: Using Cloud Functions for Event-Driven Processing
  • Key concepts such as triggers, background functions, HTTP functions
  • Use cases
  • Developing and deploying functions
  • Logging, error reporting, and monitoring
 
Module 11: Using Cloud Endpoint to Deploy APIs
  • Open API deployment configuration
  • Lab: Deploy an API for your application
 
Module 12: Debugging Your Application by Using Google Stackdriver
  • Stackdriver Debugger
  • Stackdriver Error Reporting
  • Lab: Debugging an application error by using Stackdriver Debugger and Error Reporting
 
Module 13: Deploying an Application by Using Google Cloud Container Builder, Google Cloud Container Registry, and Google Cloud Deployment Manager
  • Creating and storing container images
  • Repeatable deployments with deployment configuration and templates
  • Lab: Use Deployment Manager to deploy a web application into Google App Engine Flex test and production environments
 
Module 14: Execution Environments for Your Application
  • Considerations for choosing an execution environment for your application or service: Google Compute Engine, Container Engine, App Engine Flex, Cloud Functions, Cloud Dataflow
  • Lab: Deploying your application on App Engine Flex
 
Module 15: Monitoring and Tuning Performance
  • Best practices and watchpoints for performance
  • Key concepts related to Stackdriver Trace and Stackdriver Monitoring
  • Detecting and resolving performance issues
  • Lab: Use Stackdriver Monitoring and Stackdriver Trace to trace a request across services, observe, and optimize performance