I build backend systems for a living. Most of what I ship runs on NestJS — TypeScript, async/await, event-driven patterns, the usual. But over the last year, Go has quietly become my second language, and not by accident. I reached for it specifically because of how it handles concurrency. This post is about that decision, and more importantly — about what's actually happening under the hood when you write go func() . Because most articles stop at "goroutines are lightweight threads," and that explanation is simultaneously true and almost useless for building mental models that actually help you write better code. Let's go deeper. Why Concurrency Matters (and Why Most Developers Underestimate It) Here's a question worth sitting with: when your server handles 1,000 simultaneous HTTP requests, what is actually happening on the machine?…