Abstract
Your dashboard says everything is fine. Average latency: 100ms. QPS: stable. Error rate: 0.1%. But users are complaining the app is slow - and they're right.
In this talk, we'll investigate three real production bottlenecks in Go services: a memory issue that caused an OOM kill by Thursday, a goroutine leak invisible to standard metrics, and the deceptive nature of average latency. You'll learn how to tell a memory leak from GC pressure, why goroutines can leak just like memory, and why P99 latency tells a completely different story than averages. Each case includes real code patterns and concrete fixes using sync.Pool, worker pools, and percentile-based monitoring.
No prior performance tuning experience needed - just bring your curiosity.