Ultimate Go: Software Design with Kubernetes 2.0
22h 32m 42s
English
Paid
Course description
This course will teach you how to develop advanced services in Go using Domain Driven Design and Data Oriented Architecture approaches, with deployment in Kubernetes. From the very beginning, you will be programming alongside instructor Bill Kennedy, learning step by step the design philosophy, architectural decisions, and best practices applicable to creating an operational-ready service in Go.
With the addition of each new feature, you will also learn how to deploy and manage the Kubernetes environment where your service runs. All the code created during the course is published in a separate repository for your personal access and further study.
Watch Online
Join premium to watch
Go to premium
# | Title | Duration |
---|---|---|
1 | 1.1 Design Philosophy, Guidelines, What to Expect | 09:52 |
2 | 1.2 Tooling and Images to Install | 10:44 |
3 | 2.1 Project Layers, Policies, and Guidelines | 21:35 |
4 | 2.2 Prepare Project | 06:04 |
5 | 2.3 Build Service with Logging | 24:00 |
6 | 3.1 Clusters, Nodes, Pods | 13:13 |
7 | 3.2 Start the Kubernetes Cluster | 09:23 |
8 | 3.3 Create/Build Dockerfile for the Service | 16:28 |
9 | 3.4 Create/Apply K8s Deployment for the Service | 27:00 |
10 | 4.1 Understanding the Go Scheduler | 20:04 |
11 | 4.2 Understanding CPU Quotas | 12:01 |
12 | 4.3 Adding Quotas and Adjusting GOMAXPROCS | 15:27 |
13 | 5.1 Configuration | 24:04 |
14 | 5.2 Debugging / Metrics | 22:40 |
15 | 5.3 Shutdown Signaling and Load Shedding | 09:42 |
16 | 6.1 Basic Structure of an HTTP Router | 21:47 |
17 | 6.2 Liveness and Readiness Handlers | 11:13 |
18 | 6.3 Customize the Router | 22:21 |
19 | 6.4 Middleware Support | 07:50 |
20 | 6.5 Sending Responses | 04:32 |
21 | 7.1 Logging | 31:57 |
22 | 7.2 Error Handling | 44:44 |
23 | 7.3 Panic Handling | 14:53 |
24 | 7.4 Metrics | 28:24 |
25 | 8.1 Understanding JWT | 19:47 |
26 | 8.2 Private/Public Key Generation | 09:04 |
27 | 8.3 Token Generation | 15:11 |
28 | 8.4 Token Signature Validation with OPA | 26:57 |
29 | 9.1 Key Store Package | 09:39 |
30 | 10.1 Auth Package | 45:07 |
31 | 10.2 Auth Unit Test | 27:55 |
32 | 10.3 Add Middleware | 35:43 |
33 | 10.4 Auth Service | 50:55 |
34 | 10.5 Auth Client | 51:10 |
35 | 11.1 Architecture Review | 33:05 |
36 | 11.2 Data Flow Trust vs Non-Trust | 15:42 |
37 | 12.1 Kubernetes Support for Postgres | 16:58 |
38 | 12.2 Create Database Package | 16:33 |
39 | 12.3 Update Readiness Handler to Perform DB Checks | 33:28 |
40 | 13.1 Maintaining Database Schemas and Seeds | 15:42 |
41 | 13.2 Admin Tooling and Init Containers to Automate Migrations | 11:01 |
42 | 13.3 Code Cleanup and Changes | 01:24:56 |
43 | 14.1 User Business Domain Support | 01:06:00 |
44 | 14.2 User Storage Domain Support | 27:44 |
45 | 14.3 User App Domain Support | 01:03:03 |
46 | 14.4 User API Domain Support | 27:43 |
47 | 15.1 Starting and Stopping Containers | 16:33 |
48 | 15.2 Database Testing Support | 15:37 |
49 | 15.3 Unit and API Testing Support | 23:51 |
50 | 15.4 Write User Business Test | 21:44 |
51 | 15.5 Write User API Tests | 26:24 |
52 | 16.1 Delegate System | 15:26 |
53 | 16.2 Transaction System | 55:52 |
54 | 17.1 Integrate OTEL into the Project | 19:21 |
55 | 18.1 Check For Dependency Upgrades, Rebuild, Run | 24:33 |
Similar courses

Golang (Go) Concurrency: Hands-On Guide
Sources: udemy
Unlock the potential of parallel programming in Go with this practical guide. This course is designed for intermediate and advanced level developers...
2 hours 9 minutes 27 seconds

Working with Microservices in Go (Golang)
Sources: udemy
For a long time, web applications were usually a single application that handled everything—in other words, a monolithic application. This monolith handled user authentication, ...
10 hours 51 minutes 24 seconds

Go Programming Bootcamp
Sources: udemy
Go is the #1 language in most demand by employers right now. Employers are willing to pay 33% more for those who are gifted Go programmers. The problem is that access to a high ...
15 hours 56 minutes 19 seconds