The car wash analogy makes bottlenecks easy to visualize. One thing I'd add is that bottlenecks aren't always permanent they often shift as traffic patterns or deployments change. That's why end-to-end observability is so valuable. If you're only watching CPU or request counts at the entry point, it's easy to scale the symptom instead of fixing the constraint. Tracing a request through every service usually tells a much clearer story than isolated infrastructure metrics.