Skip to main content
CF

Ultimate Go: Software Design with Kubernetes 2.0

22h 32m 42s
English
Paid
Updated September 2026

Ultimate Go: Software Design with Kubernetes 2.0 is a 55-lesson 22 hours 32 minutes self-paced course by Ardan Labs. Bill Kennedy of Ardan Labs walks through building Go services the way they'd be built on a real team: starting from clear service boundaries and letting the shape of your data drive the design.

Course facts

Lessons
55
Duration
22 hours 32 minutes
Level
All levels
Language
English
Updated
2026-09-11
Instructor
Ardan Labs
Price
Premium

Bill Kennedy of Ardan Labs walks through building Go services the way they'd be built on a real team: starting from clear service boundaries and letting the shape of your data drive the design.

Design Principles in Practice

  • Modeling domains in Go with explicit rules
  • Structuring code around how data actually flows through the system
  • Applying Domain-Driven Design and Data-Oriented Architecture to keep services simple and safe
  • Building endpoints that are easy to test

Shipping to Kubernetes

Every feature you write gets deployed to a live Kubernetes cluster as you go, so across the 55 lessons you also learn how pods, deployments, and services behave, plus how to read logs and debug issues once code is running. The full source code lives in a public repository for you to explore on your own. Basic Go knowledge and comfort with the command line are expected; some Docker experience helps but isn't required.

Additional

https://github.com/ardanlabs/service6-video

Who teaches Ultimate Go: Software Design with Kubernetes 2.0? Ardan Labs

Ardan Labs thumbnail

Ardan Labs is a US training company founded by William Kennedy, focused almost entirely on Go (Golang) and the systems-engineering disciplines around it. Bill Kennedy is one of the most cited Go educators alive — co-author of Go in Action (Manning), maintainer of the Ardan Labs blog, and the lead instructor on a multi-track Go syllabus that runs from beginner through ultimate-Go advanced engineering.

The CourseFlix listing under this source carries nineteen Ardan Labs courses — covering Go language fundamentals, concurrency, advanced engineering patterns, Kubernetes (Bill teaches Go as the implementation language for cloud infrastructure), and the data-engineering / AI tracks Ardan added in recent years. Material is paid and aimed at engineers serious about Go as a career-defining language rather than as a syntax pickup.

What lessons are included in Ultimate Go: Software Design with Kubernetes 2.0?

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 55 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: 1.1 Design Philosophy, Guidelines, What to Expect
All Course Lessons (55)
#Lesson TitleDurationAccess
1
1.1 Design Philosophy, Guidelines, What to Expect Demo
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
Unlock unlimited learning

Get instant access to all 54 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

What courses are similar to Ultimate Go: Software Design with Kubernetes 2.0?

More courses by Ardan Labs

Frequently asked questions

What are the prerequisites for this course?
Prospective students should have a basic understanding of Go programming and be comfortable using the command line. While experience with Docker is beneficial, it is not a strict requirement for this course.
What type of projects will I build during the course?
You will build Go services with a focus on Domain Driven Design and Data Oriented Architecture. The course includes practical exercises such as creating Dockerfiles, deploying services to Kubernetes, and implementing features like JWT authentication and database connectivity using Postgres.
Who is the target audience for this course?
The course is aimed at software developers who have foundational Go knowledge and are interested in advancing their skills in service design and Kubernetes deployment. It is particularly useful for those looking to apply Domain Driven Design principles in a microservices architecture.
How does this course compare to other Go programming courses?
This course specifically focuses on integrating Go services with Kubernetes, using Domain Driven Design and Data Oriented Architecture. Unlike general Go programming courses, it emphasizes practical deployment skills and understanding how data flow shapes service design.
What specific tools or platforms will I learn to use?
You will learn to use Kubernetes for running and managing services, understand Docker for containerization, and apply tools like OpenTelemetry (OTEL) for project integration. The course also covers configuring and debugging using Kubernetes tools.
What topics are not covered in this course?
The course does not delve into the basics of Go programming or provide extensive coverage of Docker beyond its application in deploying Go services. It assumes you already have foundational knowledge in these areas.
What is the time commitment for completing this course?
The course consists of 55 lessons and includes coding exercises that you complete alongside the lessons. The exact time commitment can vary based on your pace and prior experience, but it is designed to be hands-on and thorough, requiring a significant investment of time to practice and understand the material.