🐹 Backend con Go
De los fundamentos del lenguaje a la concurrencia, arquitectura de servicios, profiling y el propio runtime de Go.
Backend con Go
Go es el lenguaje de los sistemas de infraestructura modernos: Docker, Kubernetes, Terraform, Prometheus están escritos en Go. Si quieres backend de alto rendimiento con concurrencia nativa, simplicidad brutal y despliegues pequeños, esta es tu ruta.
Go premia la simplicidad sobre la abstracción. No es un lenguaje «elegante»: es un lenguaje de producción. La concurrencia se piensa en goroutines y canales (comunicación, no memoria compartida), y el tooling oficial (gofmt, go vet, go test, go mod) es parte del contrato del lenguaje.
Nivel 0 · Fundamentos del lenguaje
Sintaxis, tipos y módulos
La base correcta: nada de hola-mundo superficial.
- A Tour of Go🎓 CursoESGratisLa puerta de entrada oficial, con ejercicios ejecutables en el navegador. Disponible en español y muchos idiomas.Sintaxis completa, types, structs, slices, maps, interfaces, goroutines y channels.
- The Go Programming Language (Donovan & Kernighan)📖 LibroENPagoEl clásico indiscutible, escrito con Kernighan (coautor del K&R de C). Todo profesional de Go lo ha leído.Todo el lenguaje con profundidad: concurrencia, testing, reflection, unsafe.
- Go Language Specification📘 DocsENGratisLa verdad normativa del lenguaje. Imprescindible para resolver dudas de semántica exacta.Gramática y semántica completas.
- Effective Go📘 DocsENGratisEl documento oficial de idiomaticidad de Go.Naming, formato, control, errores, panic/recover.
- Go by Example🧭 GuíaENGratisReferencia rápida por patrón, actualizada a las últimas versiones (incluye generics).Ejemplos anotados de cada feature y de la stdlib.
- Practical Go Lessons📖 LibroENGratisLibro web gratuito y progresivo, con ejercicios al final de cada capítulo.De fundamentos a web y concurrencia.
- Go Wiki🗃️ WikiENGratisLas mejores guías comunitarias agregadas: SliceTricks, RaceDetector, LearnServerProgramming, libros, no-inglés.Currículos y enlaces curados por la comunidad.
- Organizing a Go module📘 DocsENGratisLa guía oficial (2023+) de estructura de proyectos que termina con la guerra de opiniones sobre layout.Estructura profesional: internal/, cmd/, packages.
Nivel 1 · Intermedio — concurrencia, testing e idiomaticidad
Concurrencia, goroutines y canales
El corazón de Go. Aquí se separa el junior del profesional.
- Concurrency in Go (Katherine Cox-Buday)📖 LibroENPagoLa biblia de concurrencia en Go: une teoría de concurrencia con los idioms del lenguaje.Goroutines, channels, select, context, memoria compartida vs comunicación, testing concurrente.
- 100 Go Mistakes and How to Avoid Them📖 LibroZHPagoEl «Effective Go moderno»: errores reales de producción. Tiene resúmenes gratis en web y traducciones oficiales al chino, japonés, portugués y español.Shadowing, interfaces, slices, leaks de goroutines, context, testing, sync.
- Go Memory Model📘 DocsENGratisDefine formalmente las garantías de sincronización del runtime. Clave para razonar sobre data races.Happens-before, sincronización, canales.
- go.dev/talks — Concurrency Patterns (Rob Pike)🎬 VideoENGratis«Concurrency is not parallelism» y «Go Concurrency Patterns», por el creador del lenguaje.Patrones de concurrencia canónicos de su autor.
- Uber Go Style Guide🧭 GuíaENGratisEl estándar de estilo de producción usado por Uber. Traducciones al español, japonés y francés.Naming, interfaces, receivers, channels vs mutexes, errores.
- Go 101📖 LibroENGratisEnciclopedia detallada del lenguaje con énfasis en los detalles que otros libros omiten.Detalles finos de types, generics, channel internals, memoria.
Web y bases de datos
Construir servicios reales con la stdlib y net/http.
- Let's Go (Alex Edwards)📖 LibroENPagoEl mejor libro para pasar a producción con net/http. Actualizado a Go 1.26 (2026).Estructura de proyecto, handlers, middleware, sesiones, SQL, HTTPS, seguridad, testing web.
- go-database-sql.org🧭 GuíaENGratisLa guía de referencia de database/sql, oficialmente recomendada en el wiki de Go.Connection pool, transacciones, rows, drivers, errores comunes.
- Web Development with Go (Jon Calhoun)🎓 CursoENPagoCurso de screencasts de 33h del autor de Gophercises.Apps web completas hasta el deploy.
- go.dev/wiki — LearnServerProgramming🗃️ WikiENGratisCurrículum comunitario específico para backend.Routing, templates, JSON, middleware, auth, deploy.
Nivel 2 · Avanzado — APIs de producción, gRPC y performance
APIs de nivel producción
El salto a servicios serios.
- Let's Go Further (Alex Edwards)📖 LibroENPagoAPI JSON completa de nivel producción, actualizada a Go 1.26 (2026). El complemento directo de Let's Go.JSON requests/responses, migraciones, pool de SQL, paginación, rate limiting, graceful shutdown, auth con tokens y JWT, métricas, deploy.
- gRPC Go Documentation📘 DocsENGratisLa referencia oficial del framework RPC dominante en Go.Protobuf, unary, streaming, interceptors, auth, load balancing.
- Distributed Services with Go (Travis Jeffery)📖 LibroENPagoConstruye un sistema distribuido real: log service, gRPC, consenso, TLS y seguridad.gRPC, protobuf, tests de servicios distribuidos, deploy.
- golang-developer-roadmap🧭 GuíaENGratisMapa visual completo del ecosistema backend Go.Librerías de DB, frameworks, testing, log, CI, deploy, microservicios.
Performance y profiling
Optimización basada en datos, no en intuición.
- High Performance Go (Dave Cheney)🧪 LabENGratisEl taller canónico de performance: benchmarking, allocations, escape analysis, pprof.Medir, perfilar y optimizar como un profesional.
- Profiling Go Programs📝 BlogENGratisEl artículo oficial que enseña pprof con un caso real.CPU/memory profiling e interpretación de perfiles.
- runtime/pprof📘 DocsENGratisLa API de profiling del runtime.CPU, heap, goroutine, mutex y block profiling.
- The Go Blog📝 BlogENGratisArtículos del equipo Go: calidad técnica sin igual, explicados por sus autores.Evolución del lenguaje, runtime, stdlib, tooling.
Nivel 3 · Experto — el runtime de Go
Internals: scheduler, garbage collector y source code
El nivel donde ya no hay cursos: se aprende leyendo el runtime.
- Go source code — src/runtime🧪 LabENGratisEl nivel máximo: leer el propio runtime (scheduler M/P/G, GC, allocator).Implementación real del scheduler, GC y gestión de memoria.
- Go Design Documents📘 DocsENGratisLos diseños oficiales de cada feature del lenguaje: por qué se decidió cada cosa.Razones de diseño detrás de generics, GC, gofmt.
- morsmachine — The Go scheduler📝 BlogENGratisEl análisis más citado de cómo se ejecutan realmente las goroutines.Scheduler internals para programadores.
- Dave Cheney — compiler posts📝 BlogENGratisSerie sobre el compilador: SSA (GOSSAFUNC), inlining, escape analysis, interfaces.Cómo compila Go y cuáles son sus límites.
- go.dev/doc/contribute📘 DocsENGratisLa guía oficial para contribuir al compilador/runtime.Proceso de contribución a golang/go.
Nivel Élite — recursos chinos, japoneses y expertos
Lo mejor del mundo para profundizar sin límites.
- Go语言高级编程 (Advanced Go Programming)📖 LibroZHGratisEl libro chino de referencia para nivel experto, open source.cgo, ensamblador Go, unsafe, reflection, runtime.
- Go语言圣经 (GoPL en chino)📖 LibroZHGratisTraducción completa y de alta calidad de Donovan & Kernighan.Todo el libro clásico en chino.
- 李文周的博客 (liwenzhou)📝 BlogZHGratisEl blog de tutoriales Go más seguido en China.Web, MySQL, Redis, herramientas CLI, proyectos completos.
- StudyGolang / Go语言中文网💬 ComunidadZHGratisLa mayor comunidad Go en chino.Noticias, tutoriales, entrevistas y docs traducidas.
- Zenn — topic Go💬 ComunidadJAGratisLa plataforma técnica moderna japonesa, con artículos y libros de ingenieros japoneses.Artículos y libros Go de producción en japonés.
- Qiita — tag Go💬 ComunidadJAGratisEl Stack Overflow japonés, con miles de posts de Go.Q&A, tutoriales y tips de producción en japonés.
- みんなのGo言語 (Everybody's Go)📖 LibroJAPagoUno de los libros Go japoneses más respetados.Concurrencia, channels y diseño de servicios.
- Uber Go Style Guide (español)🧭 GuíaESGratisLa guía de estilo de Uber mantenida en español por Friends of Go.Buenas prácticas en español.
- Grafikart — Formation Go🎓 CursoFRGratisEl curso de Go en francés de referencia.Fundamentos y proyectos web en francés.
Haz los ~20 mini-proyectos de Gophercises (gratis), resuelve el track de Go de Exercism y termina un proyecto real con auth + SQL + tests + deploy. Luego intenta leer el scheduler de src/runtime: el nivel Élite se construye leyendo código.