All roadmaps
Beginner8 projects

Go Programming

Learn Go by shipping real tools and services — concurrency, modules, and production patterns.

35+

completed

~44h

total time

8

projects

Part 1·Beginner·4h·35+ learners

Go Fundamentals and Tooling

Install the toolchain, learn the module system, and get comfortable with Go's type system and standard tooling.

Start
Part 2·Beginner·5h·31+ learners

Build a CLI Tool in Go

Turn a script into a real command-line tool with subcommands, flags, and proper exit codes.

Start
Part 3·Intermediate·6h·27+ learners

Concurrency with Goroutines and Channels

Launch thousands of lightweight goroutines, coordinate them with channels, and avoid the classic concurrency bugs.

Start
Part 4·Intermediate·6h·22+ learners

Build a REST API in Go

Stand up a JSON API with routing, middleware, and graceful shutdown handling.

Start
Part 5·Intermediate·5h·18+ learners

Working with Go Modules and Testing

Manage real dependencies with go.mod, then write table-driven tests and measure coverage.

Start
Part 6·Intermediate·6h·14+ learners

Build a gRPC Service

Define a service in Protocol Buffers, generate typed Go clients and servers, and wire up streaming RPCs.

Start
Part 7·Advanced·5h·10+ learners

Profiling and Performance Tuning

Use pprof to find where a Go program actually spends CPU and memory, then fix the hot paths.

Start
Part 8·Advanced·7h·6+ learners

Ship a Production Go Microservice

Package a real service with structured logging, health checks, graceful shutdown, and a container build.

Start