Search and navigate

Open full search and filters →

Beginner to professional

The complete
Golang roadmap.

Follow the core sequence in order, then choose branches that match the systems you want to build. Published lessons are blue links. Planned lessons stay visible but inactive.

9
learning stages
94
skills mapped
18
lessons available

9 stages shown

Beginner

Learn the language foundations

0 of 8 available

Build fluency with Go syntax and the small set of language features used in everyday programs.

Variables, constants, and basic typesPlanned
Control flowPlanned
FunctionsPlanned
Arrays and slicesPlanned
MapsPlanned
Strings, bytes, and runesPlanned
PointersPlanned
Structs and methodsPlanned
Intermediate

Write idiomatic Go

2 of 12 available

Move from valid Go to clear, maintainable Go with explicit contracts and predictable failure handling.

Project and file structureRead lesson InterfacesRead lesson
Error handling and wrappingPlanned
Defer, panic, and recoverPlanned
Generics and constraintsPlanned
Composition and dependency injectionPlanned

Language internals

Expertise branch

Deepen your mental model when performance or tooling work requires it.

Memory allocation and escape analysisPlanned
ReflectionPlanned
The runtime and garbage collectorPlanned

Developer tooling

Expertise branch

Build reliable local workflows before projects become large.

Formatting, vet, and lintingPlanned
Debugging Go programsPlanned
Code generationPlanned
Intermediate

Test and measure software

1 of 7 available

Treat tests, benchmarks, fuzzing, and static analysis as part of design rather than cleanup.

Go testing foundationsRead lesson
Table-driven testsPlanned
Test doubles and interfacesPlanned
HTTP testsPlanned
BenchmarksPlanned
Fuzz testingPlanned
Coverage and quality gatesPlanned
Advanced

Build web services and APIs

5 of 13 available

Build standard-library services first, then add frameworks and protocols when requirements justify them.

Framework route

Expertise branch

Compare ecosystem abstractions after learning net/http.

GinPlanned
EchoPlanned
FiberPlanned

Service protocols

Expertise branch

Choose protocols based on clients, latency, and operational needs.

gRPC and Protocol BuffersPlanned
WebSocketsPlanned
GraphQLPlanned
Advanced

Store and move data

0 of 11 available

Learn database fundamentals before selecting drivers, query tools, caches, or message systems.

database/sqlPlanned
PostgreSQLPlanned
Transactions and isolationPlanned
Schema migrationsPlanned
Connection pools and timeoutsPlanned

Data access choices

Expertise branch

Add abstraction only when its tradeoffs fit the service.

sqlcPlanned
GORMPlanned
SQLitePlanned

Caching and messaging

Expertise branch

Scale reads and decouple work after mastering consistency basics.

RedisPlanned
KafkaPlanned
NATSPlanned
Professional

Ship production systems

0 of 14 available

Make services observable, secure, repeatable to deploy, and safe to operate under failure.

Configuration and secretsPlanned
Structured loggingPlanned
Metrics, tracing, and observabilityPlanned
Profiling and performancePlanned
Graceful shutdown and resiliencePlanned
Container imagesPlanned
CI/CDPlanned
Application securityPlanned

Cloud native

Expertise branch

Operate services on an orchestration platform when scale demands it.

KubernetesPlanned
Serverless GoPlanned
Infrastructure automationPlanned

Distributed systems

Expertise branch

Study failure modes before splitting a reliable monolith.

Microservice boundariesPlanned
Retries, backoff, and circuit breakersPlanned
Distributed consistencyPlanned
Professional

Choose a specialist branch

0 of 15 available

Specialize after the core path. Pick the branch that matches the systems and teams you want to work with.

CLI and developer tools

Expertise branch

Build portable command-line applications and tooling.

CLI architecturePlanned
CobraPlanned
Terminal interfacesPlanned

AI integration

Expertise branch

Build reliable services around models, streams, and retrieval.

Model API clientsPlanned
Streaming responsesPlanned
Vector search and RAGPlanned

Embedded Go

Expertise branch

Use TinyGo for constrained hardware and WebAssembly targets.

TinyGo fundamentalsPlanned
IoT devicesPlanned
WebAssemblyPlanned

Security engineering

Expertise branch

Build defensive tools and review Go applications for common risks.

Secure codingPlanned
Network security toolsPlanned
Supply-chain securityPlanned

Open source mastery

Expertise branch

Read, contribute to, and maintain production Go projects.

Reading large Go codebasesPlanned
Contributing to Go projectsPlanned
Library API designPlanned

How to use this roadmap

Move down the core path in order. Branches are optional depth, not prerequisites. A grey item describes a planned competency and is deliberately not a link until its lesson passes publication checks.

  • Published Open the lesson now
  • Planned Keep it on your learning checklist
  • Expertise branch Choose based on your goals

Golang roadmap questions

Practical guidance for choosing how far and where to go next.

Do I need to learn every item in this Golang roadmap?

No. Complete the core path through testing and web services, then choose only the database, production, and specialist branches that match the work you want to do.

How long does it take to learn Go?

A developer can learn basic Go syntax in a few weeks, but production skill comes from building, testing, deploying, and operating several real programs. Use the roadmap as an ordered practice guide rather than a deadline.

Should a beginner start with a Go framework?

Start with the standard library and net/http so routing, middleware, requests, responses, and cancellation are visible. Evaluate a framework later when its conventions or ecosystem solve a concrete project need.

Why are some roadmap items not clickable?

A roadmap item becomes a link only when its tutorial is published on Golang Tutorial. Unlinked items remain visible so the full learning sequence stays useful without sending readers to drafts or missing pages.

Which specialist branch should I choose?

Choose based on a project: CLI tools for developer tooling, cloud native for operated services, AI integration for model-backed products, embedded Go for constrained devices, or security for defensive engineering.