We all learn differently and at different paces. Finding content that is right for us is challenging. Below is my attempt to curate all the great content I have come across over the years into one place to hopefully help folks advance their Golang journey to the next step.

Learning Go in 2026; From Beginner to Senior


We all learn differently and at different paces. Finding content that is right for us is challenging. Below is my attempt to curate all the great content I have come across over the years into one place to hopefully help folks advance their Golang journey to the next step.

None of the links below are affiliate links, but some of the content has been created by me; usually because I created it to fill a gap. I have called out where this is the case. I also built GoFlow, a free, gamified platform for learning Go through interactive exercises. It’s a great companion to the resources below, so do check that out.

The way I see it, there are four main ways people like to learn:

  • Books/Blogs
  • Video Courses/Conference Talks
  • Building (or what should I build?)
  • Listen

I have therefore split each of the levels into these categories. It’s impossible for this to be conclusive, but feel free to leave comments with other recommendations. I’ll check them out and add them if I think they are great.

Just Starting Out - The Beginner Gopher

a beginner gopher

If you have minimal/no Go experience start here. If you have built at least one Go application that has some business logic and it runs, you can probably graduate to the next section.

Books/Blogs

  • A Tour of Go [FREE] - This is created by the Go team. It starts with Hello world and is an interactive tutorial that will teach you the basics of Golang.
  • Go By Example [FREE] - Similar to A tour of Go but it dives a little deeper and covers some slightly more “advanced” topics.
  • Effective Go [FREE] - Another official resource. Less interactive than the other two but the depth is amazing. If you work through this, you’ll be ready to write pretty much any Go application you want.
  • The Go Programming Language [PAID] - This book was originally published in 2015 but has held up to the test of time really well. I still hear great reviews from folks starting out with this one.
  • Let’s Go! [PAID] - This book gets rave reviews from folks just starting out. I bought a copy, and I can see why.
  • Golang Tutorial Series [FREE] - Old but still has a lot of great content.
  • For the love of Go [PAID] - John Arundel has tons of amazing Go content and books, but this one is an amazing introduction that is written in a really nice, casual style.

Video Courses/Conference Talks

Interactive Learning

  • GoFlow [FREE, created by me] - GoFlow is a gamified platform I built for learning Go through bite-sized, interactive exercises right in your browser. You earn XP, build daily streaks, and level up as you progress from Go basics through to advanced topics like concurrency and error handling. It’s free to start and a great way to build muscle memory alongside the books and videos above.

What Should I Build?

At this stage, the most important thing you can do is just get familiar with the syntax, get Go working on your machine and find an IDE you like.

As a project, I recommend building something with the following requirements:

  1. Is a CLI app.
  2. When you run your program, it asks you for the date of birth.
  3. The program calculates your age and prints it back to your console.
  4. Do not use any third-party libraries, use only the Go Standard library.

If you can complete this project without support, then:

  • You have Go set up on your machine correctly, including setting up your IDE.
  • You have managed to navigate the standard library documentation to figure out how to create a CLI and read user input.
  • You have got go run working successfully.

If you’re looking for further things to build, check out Coding Challenges. At this level, the WC task seems a good one. If you want some guided warm-up exercises before diving into a full project, GoFlow has bite-sized challenges covering Go basics and the standard library.

Listen

  • Go For Beginners [FREE] - Go Time was the most popular Go podcast for many years. Although the show ended in December 2024 after 340 incredible episodes, the archive is still a goldmine. This episode is a great starting point.
  • Books that teach Go [FREE] - Some more recommendations here. Also talks about writing a book too if that’s something you aspire to.

A Little Experience - The Junior Gopher

a junior gopher

If you finished the CLI exercise mentioned above, then you’re ready to jump into the content below to take yourself to the next level! By the end of this section you should have a deeper understanding of Go, have built quite a few applications and be ready to start applying for jobs.

Books/Blogs

  • Domain-Driven Design with Golang [PAID, written by me] - As you start to write larger Go projects, you’re going to start wondering how to organize your projects. DDD is another acronym you will see come up often. This book is a gentle introduction to the concepts, and you don’t need any prior knowledge. In the second half of the book we also build two projects together.
  • 100 Go Mistakes and how to avoid them [PAID] - This book really does help you avoid footguns. This is a book you may need to revisit at this level, as some of the content might seem a little advanced. However, I find it’s good to skim over and have the patterns and concepts in your mind.
  • Foundations of Debugging For Golang [PAID, written by me] - Debugging is probably the most important skill that most people are never taught. Being able to debug locally and in production is a critical skill for any Go engineer, but it is rarely taught explicitly.
  • Let’s Go Further [PAID] - A follow-up to Let’s go. This is focused on API design specifically, so keep that in mind if that is not the reason you are learning Go.
  • Learn Data Structures and Algorithms with Go [PAID] - Now you are familiar with the Go syntax, getting familiar with data structures will pay dividends.
  • 12 Factor Application with Docker & Go [PAID] - If you are going to be using Go for application development, it is important to understand how it fits into the container ecosystem.
  • How I keep myself alive with Go [FREE, written by me] - I gave this as a keynote at GopherCon Singapore. This post is my most popular and went viral.

Video Courses/Conference Talks

  • Gophercises [FREE] - Gophercises are often shared as one of the best free resources there is. It feels like you are pairing with Jon as he builds projects.
  • Web Development with Go [PAID] - Jon Calhoun’s course is excellent and very comprehensive. I’ve given away copies in my Go Twitter Community with positive feedback.
  • Learn Go With Tests [FREE] - This amazing book will help you learn TDD while teaching you Go. I highly recommend it.
  • When to use Generics [FREE] - As you continue your Go journey, you’re going to hear about generics a lot. In this video, the Go team shares best practices.
  • Structured Logging in the standard library [FREE] - This video is an amazing introduction on how you can do structured logging using new tools in the standard library.
  • What we got wrong, what we got right in Go [FREE] - Rob Pike’s retrospective on some of the decisions made while developing Go is insightful and interesting.

What Should I Build?

Exchange rate server

Requirements:

  • Write an HTTP server with an endpoint that takes a currency pair, for example, /exchange/GBP/USD.
  • For that currency pair, it should list today’s exchange rate, the exchange rate for the past 7 days, and whether today is a good day to buy.
  • Whether it’s a good day to buy or not can be super naive. I recommend just averaging the last 7 days and seeing if it is lower than today.

Commentary:

The GO team provides guidance on how to organize a project, and here is a post by Dave Cheney on how to write Table tests.

If you’re looking for further things to build, check out Coding Challenges. Building your own Spotify Client seems a good task at this level. GoFlow also has exercises on HTTP servers and error handling if you want to sharpen those skills first.

Listen

Some Experience - The Mid-level Gopher

If you have a few greenfield projects under your belt and have also made meaningful changes to existing Go codebases that you didn’t write, then you’re a mid-level gopher. Leveling up from here is digging into some of the more advanced patterns and tools that Go has to offer.

Books/Blogs

What Should I Build?

Develop a tool that scrapes information from websites and presents it in a useful format.

Requirements:

  • Parse HTML, handle pagination, and store scraped data.
  • Store the scraped data in a database and send an email whenever something interesting is discovered.

If you’re looking for further things to build, check out Coding Challenges. Building your own Memcached seems a good task at this level. GoFlow has exercises on concurrency and interfaces that pair well with the scraping project.

Video Courses/Conference Talks

Listen

  • Intro to GRPC [FREE] - As you get more comfortable with Go fundamentals, learn about gRPC, which has first-class support in Go.
  • Foundations of Go Performance [FREE] - Insights into Go performance from experts Miriah Peterson & Bryan Boreham. From the Go Time archive.
  • Event-Driven Systems & Architecture [FREE] - Event-driven systems offer durability and flexibility, though they can add complexity. From the Go Time archive.

A lot of Experience - The Senior Gopher

a senior gopher

At this point, you have shipped a ton of Go to production, maintained Go systems, and made improvements to Go code written by others. Leveling up from here is to learn more about architecture and technologies that complement your Go skills.

Books/Blogs

What Should I Build?

Build a framework that simplifies the development of distributed systems in Go.

Requirements:

  • Include features like service discovery, load balancing, fault tolerance, and consistent hashing.
  • This project will deepen your understanding of network protocols, concurrency models, and the complexities of distributed systems.

Take inspiration from go-kit.

Video Courses/Conference Talks

Listen

  • Jumping into existing codebases [FREE] - Techniques for getting familiar with unfamiliar codebases. From the Go Time archive.
  • Creating Art with Go [FREE] - A unique and interesting use case for Go. From the Go Time archive.
  • All About Kafka [FREE, features me] - Discusses Kafka, its complexities, and considerations for using it effectively. From the Go Time archive.

What’s new since the 2024 edition?

Go has had three major releases since the last edition of this guide. Here are the highlights worth knowing about:

Go 1.24 (February 2025) brought generic type aliases, Swiss Table-based maps for better performance, tool dependency tracking with go get -tool, FIPS 140-3 compliance, the new testing.B.Loop() for cleaner benchmarks, and os.Root for filesystem isolation. Overall, a 2-3% performance improvement across the board.

Go 1.25 (August 2025) introduced an experimental new garbage collector and the long-awaited experimental encoding/json/v2 package.

Go 1.26 (February 2026) made the Green Tea garbage collector the default, reduced cgo overhead by ~30%, added new() with expressions for cleaner initialization, and introduced self-referential generic types. New packages include crypto/hpke for Hybrid Public Key Encryption.

If you want to get hands-on with these new features, GoFlow is regularly updated with exercises covering the latest Go releases.

It’s also worth noting that Go Time, the beloved Go podcast, ended its run in December 2024 after 340 episodes. The archive remains an incredible resource and you’ll see it referenced throughout this guide. The Go Podcast has picked up the torch and is going strong with weekly episodes.

Keeping up to Date

Software Engineering, both in Go and in any other language, is a lifelong commitment to learning. It’s important to dedicate time to keep up to date.

  • Subscribe to byteSizeGo [FREE] - I share great Go content and discount codes with my subscribers. Subscribing gets you a Go remote company guide.
  • The Go Podcast [FREE] - Hosted by Dom, now with guest interviews. With Go Time retired, this is the go-to podcast for the Go community.
  • Golang weekly [FREE] - Aggregates the best Go content of the week. Still going strong after years.
  • Go Time Archive [FREE] - Although Go Time ended in December 2024 after 340 episodes, the archive is a treasure trove of Go wisdom. Well worth digging through.

Wrapping up

It took me a long time to compile this list, so I hope you found it helpful. Let me know if it’s helpful and if there is any other content I should review and add!