Reliable Web Servers with Go

A course and book I co-wrote with Steve McCarthy for Newline. It covers backend web development in Go with a focus on the reliability concerns that come up when you run software in production.

The material spans 8 modules and 46+ lessons: building a key-value server from scratch, unit and integration testing, distributed consensus and Raft, monitoring (white-box and black-box), load balancing, canary deployments, real-time chat, and working with SQLite. It's aimed at engineers coming from other languages who want to use Go for APIs and web servers without having to learn reliability principles separately.

Available at reliableweb.dev.