guide
The Uber Go Style Guide.
Uber's internal style guide for writing Go code, covering error handling, naming, and structural conventions used across their engineering teams.
This repository contains the Uber Go Style Guide — a written document that describes the coding patterns and conventions used by Uber's engineering team when writing Go code. Go (also called Golang) is a programming language popular for building fast, reliable backend services.
A style guide is essentially a rulebook for how code should be written and organized on a team. Rather than each developer making different choices about formatting, naming, and structure, a style guide ensures everyone writes code in a consistent way. Consistent code is easier to read, review, and maintain, especially as teams grow.
This guide documents the specific practices Uber uses internally, covering things like best practices for error handling, structuring code, and avoiding common pitfalls in Go. It has been translated into over a dozen languages including Chinese, Korean, Japanese, Spanish, Portuguese, Russian, French, Turkish, and many others, reflecting widespread interest from the global Go developer community.
You would use this as a reference when writing Go code and wanting to adopt patterns proven to work at scale in a large engineering organization. It is not a library or tool you install — it is documentation you read. The repository itself is primarily made up of Markdown files (readable text documents) and a Makefile for building the guide.
Where it fits
- Adopt a proven Go style guide for a new team or project
- Reference specific conventions during Go code reviews
- Onboard junior Go developers with concrete examples of good patterns
- Compare your team's existing conventions against an industry baseline