Últimamente he estado metido de lleno con Go y quería compartir un par de casos de uso donde realmente brilla, porque creo que es un lenguaje que vale la pena tener en el toolkit.
Caso de uso 1: APIs y Microservicios
Este es probablemente el caso más obvio, pero Go es increíble para construir APIs y microservicios. Hace unos meses migré un servicio que teníamos en Node que manejaba procesamiento de imágenes, y la diferencia fue brutal. El servicio en Node empezaba a sufrir con concurrencia alta y los tiempos de respuesta se iban al carajo. Con Go, usando goroutines, el mismo servicio ahora maneja 10x más requests sin despeinarse.
La stdlib de Go es tan completa que para una API REST básica ni siquiera necesitas frameworks pesados. El paquete net/http ya te da todo lo que necesitas, y si quieres algo más robusto, hay opciones ligeras como Gin o Chi que no agregan mucha complejidad.
Caso de uso 2: Herramientas CLI y Scripts de DevOps
Esto me sorprendió bastante al principio, pero Go es excelente para construir herramientas de línea de comandos. La compilación a binario único significa que distribuyes un solo archivo ejecutable, sin preocuparte por dependencias o versiones de runtime.
Hicimos un script de deployment que antes estaba en Bash (era un desastre de mantener) y lo reescribimos en Go. Ahora es mucho más fácil de leer, testear, y lo mejor es que funciona igual en Linux, Mac y Windows sin cambios. Herramientas como Docker, Kubernetes, Terraform… todas están escritas en Go por estas razones.
Por qué vale la pena aprenderlo
Curva de aprendizaje amigable: Go es sorprendentemente simple. No tiene mil features como otros lenguajes. La sintaxis es clara y en un par de semanas ya estás escribiendo código productivo.
Performance: Tienes velocidades cercanas a C/C++ pero con un desarrollo mucho más rápido. Para aplicaciones donde la performance importa, Go te da ese balance perfecto.
Concurrencia de primera: Las goroutines y channels hacen que escribir código concurrente sea casi natural. Comparado con threads en Java o callbacks en JavaScript, es un respiro de aire fresco.
Demanda laboral: Cada vez más empresas buscan devs con Go, especialmente en infrastructure, cloud, y sistemas distribuidos. Es una skill que suma bastante al CV.
Ecosistema maduro: Hay librerías para todo, buen tooling (el formatter y linter vienen out of the box), y la comunidad es bastante activa.
¿Alguien más acá usando Go? ¿Qué otros casos de uso han encontrado donde realmente vale la pena?