# Go backend engineering

Go articles and runnable case studies covering HTTP request handling, JSON-RPC servers, string allocations, and timezone debugging.

Canonical HTML: https://stage.vvivid.dev/tags/golang/


Go makes it easy to start a backend service. These articles look at what happens under the abstractions: [HTTP request handling](/posts/http_in_golang/), [JSON-RPC dispatch](/posts/jsonrpc_example/), [string allocation costs](/posts/go_string_concat_vs_string_builder/), and [time conversions](/posts/the_silent_timezone_mismatch_go_vs_mongodb/).

The [Go Language Case Studies project](/projects/go-lang-case-study/) provides runnable examples and benchmarks to go with the writing.


- [String Concatenation vs strings.Builder in Go](https://stage.vvivid.dev/posts/go_string_concat_vs_string_builder/) · [Markdown](https://stage.vvivid.dev/posts/go_string_concat_vs_string_builder/index.md) · 2026-06-13
  A small Go benchmark showing when repeated string concatenation becomes expensive and how strings.Builder changes the allocation profile.
- [Go Language Case Studies](https://stage.vvivid.dev/projects/go-lang-case-study/) · [Markdown](https://stage.vvivid.dev/projects/go-lang-case-study/index.md) · 2026-06-13
  A public collection of focused Go case studies, tests, and benchmarks for practical backend engineering topics.
- [The Silent Timezone Mismatch: Go vs MongoDB](https://stage.vvivid.dev/posts/the_silent_timezone_mismatch_go_vs_mongodb/) · [Markdown](https://stage.vvivid.dev/posts/the_silent_timezone_mismatch_go_vs_mongodb/index.md) · 2026-01-16
  How implicit conversions between primitive.DateTime and time.Time can cause subtle bugs.
- [Building a JSON-RPC Server in Go: Complete Implementation Guide](https://stage.vvivid.dev/posts/jsonrpc_example/) · [Markdown](https://stage.vvivid.dev/posts/jsonrpc_example/index.md) · 2025-08-30
  Learn how to implement a complete JSON-RPC 2.0 server in Go with message parsing, validation, method routing, and error handling. Includes working calculator example.
- [The HTTP Request Journey in Go: From Network to Handler](https://stage.vvivid.dev/posts/http_in_golang/) · [Markdown](https://stage.vvivid.dev/posts/http_in_golang/index.md) · 2025-08-08
  Tracing the complete journey of an HTTP request through every layer of the Go stack
- [SSHMCP](https://stage.vvivid.dev/projects/sshmcp/) · [Markdown](https://stage.vvivid.dev/projects/sshmcp/index.md)
  An authenticated MCP gateway and SSH runner with persistent sessions, durable jobs, and cancellation.
- [ShoppingListMCP](https://stage.vvivid.dev/projects/shopping-list-mcp/) · [Markdown](https://stage.vvivid.dev/projects/shopping-list-mcp/index.md)
  An agent-managed shopping list with built-in MCP tools, purchase history, and spending insights.


