1
Project Setup
Go modules, project structure, Makefile, CI/CD, golangci-lint configuration
2
Error Handling
Wrapping, sentinel errors, custom types, errors.Is/As, retry patterns
3
Concurrency
Goroutines, channels, select, WaitGroup, Mutex, worker pools, errgroup
4
HTTP APIs
Chi router, middleware, validation, CORS, graceful shutdown, HTTP client
5
Database Access
database/sql, sqlx, GORM, transactions, migrations, connection pooling
6
Testing
Table-driven tests, testify, mocking, integration tests, benchmarks, coverage
7
CLI Applications
Cobra commands, flags, Viper config, colors, progress bars, prompts
8
JSON & Encoding
Struct tags, custom marshalers, streaming, dynamic JSON, validation
9
Interfaces & Generics
Interface design, composition, type assertions, Go 1.18+ generics
10
Docker & Deployment
Multi-stage builds, scratch/distroless, K8s manifests, CI/CD pipelines
11
Context
Cancellation, timeouts, deadlines, context values, propagation patterns
12
Logging & Observability
slog structured logging, metrics, context-aware logging, redaction