Go for warehouse search service, not Java
OZON needed a high-concurrency search microservice for 200M warehouse items. Java/Spring was the team default.
Go's goroutine model handles 10K concurrent connections with ~50MB RAM vs. Java's thread-per-request model needing ~2GB. Single binary deployment eliminates JVM overhead. The team already knew Go.
Fewer libraries than Java ecosystem. String manipulation is more verbose. No generics at the time (pre-Go 1.18).
Service runs on a single 2-core instance serving 500 RPS at P95 < 80ms. Java equivalent would have needed 4x the hardware.