Build concurrent Go microservices

golang-proskillsetup L29,726
Jeffallan/claude-skills
What it does

Write idiomatic Go with goroutines, channels, context cancellation, and generics

Best for

Concurrent systems requiring fine-grained goroutine lifecycle, bounded resource pools, and time-bounded execution with proper cancellation.

Inputs
  • · Go module structure
  • · interface definitions
  • · goroutine pool size
  • · context timeout
  • · job queue
Outputs
  • · concurrent Go code (goroutines + channels)
  • · passing go test -race results
  • · golangci-lint clean report
  • · pprof benchmark results
Requires
  • · Go 1.21+ compiler
  • · go vet (linter)
  • · golangci-lint (style/bugs)
  • · pprof (profiler)
  • · testing (table-driven tests, benchmarks)
  • · race detector (-race flag)
Preconditions
  • · Go 1.21+ installed
  • · Module structure (go.mod, internal/ packages)
  • · Interfaces designed (before implementation)
  • · Context propagation requirements understood
Failure modes
  • · Goroutine leak: no context cancellation or channel close, hangs forever
  • · Race condition: concurrent access to shared state without sync primitives
  • · Error ignored: _ assignment masks actual failures
  • · Panic: used for control flow instead of error returns
  • · go vet fails: unresolved imports or type mismatches
Trust signals
  • · Core pattern shows proper context cancellation (select on ctx.Done)
  • · Error wrapping with %w enables chain tracing
  • · Table-driven tests with subtests shown (standard Go practice)
  • · Race detector run required before committing (catches concurrent bugs)