Skip to content

Table of Contents

Go Projects Track

A progressively harder portfolio of Go projects. Each one is a self-contained spec (SPEC.md) you can build end-to-end. Work them in order: every project introduces a small number of new concepts while reusing the foundations from the previous one. By the end you will have a production-grade SaaS backend and a set of resume-ready talking points.

How to use this track

  • Read the project's SPEC.md top to bottom before writing code.
  • Treat the Implementation Milestones checklist as your sprint board.
  • Finish each project with the Lessons-Learned prompts and the Portfolio & Resume subsection — that is where the interview value lives.
  • Don't skip the Testing Strategy. The difference between a "tutorial repo" and a portfolio piece is tests, CI, and docs.

Index

# Project Level Core skills Est. time
01 CLI Todo Beginner flag/cobra, JSON persistence, structs, slices, error handling 1–2 days
02 URL Shortener Beginner+ net/http, REST handlers, in-memory store → SQLite, interfaces 2–4 days
03 Bookstore REST API Intermediate chi, PostgreSQL (pgx/sqlc), migrations, layered architecture, slog, table-driven tests + httptest 1 week
04 Concurrent Web Crawler Intermediate goroutines, channels, worker pools, context cancellation, rate limiting, graceful shutdown 4–6 days
05 gRPC Microservice Advanced gRPC + protobuf, interceptors, grpc-gateway, hexagonal architecture, DI 1–2 weeks
06 Redis Job Queue Advanced Redis-backed queue, retries, dead-letter, backoff, Prometheus metrics 1–2 weeks
07 SaaS Backend Capstone Production Multi-tenant REST+gRPC, Postgres, Redis, JWT/RBAC, hexagonal + DI, observability (metrics/tracing), Docker, CI/CD, testcontainers, ADRs 3–6 weeks

How each project maps to portfolio / resume value

Project What it proves to a hiring manager
01 CLI Todo You can ship a complete, tested Go program with clean error handling and a real CLI UX. Good "first commit" on a public profile.
02 URL Shortener You understand HTTP servers, REST semantics, and how to hide storage behind an interface (swap in-memory → SQLite with zero handler changes).
03 Bookstore API The classic backend interview project: layered architecture, real SQL + migrations, validation, structured logging, and a genuine test suite. This is the single highest-ROI project for backend roles.
04 Web Crawler Demonstrates Go's headline feature — concurrency — done correctly: bounded parallelism, cancellation, no goroutine leaks, graceful shutdown. A frequent live-coding topic.
05 gRPC Microservice Shows you can work in a microservices/platform org: contract-first APIs, interceptors for cross-cutting concerns, and ports-and-adapters design.
06 Redis Job Queue Async/background processing is everywhere in production. Retries, idempotency, dead-letter queues, and metrics show systems maturity.
07 SaaS Capstone The flagship repo. It hits nearly every line item on a senior backend job description and gives you 6–8 distinct stories for system-design and behavioral interviews.

Tip: pin projects 03, 04, and 07 on your GitHub profile. They cover the "CRUD + SQL", "concurrency", and "full production system" stories that almost every backend interview probes.