Developing Applications With Google Cloud Platform

Date Delivery Location Register
Sep
25-27
Virtual BST Register
Oct
10-12
Classroom Chicago Register
Oct
10-12
Virtual CDT Register
Nov
8-10
Classroom Krakow Register
Nov
27-29
Virtual BST Register
Dec
4-6
Classroom Chicago Register
Dec
4-6
Virtual CST Register


 

Outline

(3 days)

 

In this three-day instructor-led 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.

Objectives

This course teaches participants the following skills:

  • 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.

Audience

This class is intended for application ​developers ​who ​want ​to build ​cloud-native ​applications ​or redesign ​existing ​applications ​that ​will run ​on ​Google ​Cloud ​Platform

Prerequisites

To get the most of out of this course, participants should have:

  • Completed Google Cloud Platform Fundamentals or have equivalent experience
  • Basic proficiency with command-line tools and Linux operating system environments
  • Working ​knowledge ​of Node.js

Course Outline

 

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 ​Endpoints 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