Pay as you go
- Maximum flexibility to learn at your own pace.
- Cancel anytime.
At 10 hours/week
Get access to the classroom immediately upon enrollment
HTTP, Python, Git, Linux, Docker.
Throughout this course, students will learn how to structure, package, and release an application to a Kubernetes cluster, while using an automated CI/CD pipeline. Students will start by applying a suite of good development practices within an application, package it with Docker and distribute it through DockerHub. This will transition to the exploration of Kubernetes resources and how these can be used to deploy an application. At this stage, students will be comfortable using k3s to bootstrap a lightweight and functional Kubernetes cluster. Next, students will examine template configuration managers, such as Helm, to implement the parameterization of Kubernetes declarative manifests. Towards the end of the course, students will learn the fundamentals of Continuous Integration and Continuous Delivery (CI/CD) with GitHub Actions and ArgoCD and completely automate the release process for an application.
In this course, students will learn how to refactor microservice capabilities from a monolithic architecture, and employ different forms of message passing in microservices. To begin, students will create a migration strategy to refactor a service from a monolith to its own microservice and implement the migration. Next, students will be introduced to industry standard best practices for message passing in a service architecture and finally, students will focus on design decisions and the implementations of different forms of message passing in development and production systems.
This course covers the fundamentals of observability in distributed systems. Today, Kubernetes has become the de facto standard for Cloud Native applications and is widely used for distributed systems. To be effective as an observability expert, it is critical to understand how to monitor and respond to the health and performance of both your Kubernetes clusters and the applications hosted on them. This course will teach students how to collect system performance data using Prometheus, how to collect application tracing data using Jaeger, and how to visualize the results in a dashboard using Grafana.
Learn how to harden a Docker and Kubernetes microservices architecture. To begin, students will learn STRIDE to threat model and reason about microservice security. Next, students will dig deep to explore the Docker and Kubernetes attack surface and be introduced to industry open-source tools such as Docker-bench and Kube-bench to evaluate and harden Docker and Kubernetes weaknesses. Students will then learn about software composition analysis with Trivy and Grype to evaluate image layers and common application security vulnerabilities and provide remediation. Finally, students will deploy runtime security monitoring to introspect running microservices for security signals and learn how to respond to a security incident.
Draw on all of the skills learned throughout the lessons to evaluate the costs of products in different currencies and follow the recommendations of browsing products with variate discount rates based on ads.
Ecosystem Advocate for Cloud Native Computing Foundation
Katie's focus is to foster the growth and visibility of the End User Community while bridging the gap with other ecosystem units. In past roles, Katie contributed to the build-out of platforms that gravitate towards cloud-native principles and open-source tooling.
Data Platform Engineer at Stitch Fix
Justin specializes in designing modern data platforms and scalable systems, and consults for global Fortune 500 companies. He has a BS in Computer Science from UCLA and mentors developers with Codementor.
Technical Manager, Engineering security, Snapchat
Nick has 14+ years experience in Security Engineering. He currently leads teams that build highly scalable security services in cloud native environments at companies such as SpaceX and Snapchat.
App Modernization Specialist at Google Cloud
Jay has over 15 years experience in technology and open source solutions. Currently Jay helps Google Cloud customers modernize their application platforms using best practices in cloud native technologies.
Pay as you go
A well-prepared learner will meet the following prerequisites: