Build simple, secure, scalable systems with Go
- An open-source programming language supported by Google
- Easy to learn and great for teams
- Built-in concurrency and a robust standard library
- Large ecosystem of partners, communities, and tools
Download packages for Windows 64-bit, macOS, Linux, and more
go command by default downloads and authenticates
modules using the Go module mirror and Go checksum database run by
Google. Learn more.
Companies using Go
Organizations in every industry use Go to power their software and services View all stories
“At the time, no single team member knew Go, but within a month, everyone was writing in Go and we were building out the endpoints. It was the flexibility, how easy it was to use, and the really cool concept behind Go (how Go handles native concurrency, garbage collection, and of course safety+speed.) that helped engage us during the build. Also, who can beat that cute mascot!”
"A small language that compiles fast makes for a happy developer. The Go language is small, compiles really fast, and as a result it lets your mind focus on the actual problem and less on the tool you are using to solve it. Code, test, debug cycles are so quick that you forget you are not working with an interpreted language. Looking at our code, you see less boilerplate and more business logic."
“Go has excellent characteristics for scalability and services written using it typically have very small memory footprints. Because code is compiled into a single static binary, services can also be containerised with ease, making it much simpler to build and deploy. These attributes make Go an ideal choice for companies building microservices, as you can easily deploy into a highly available and scalable environment such as Kubernetes.”
"In our tightly managed environments where we run Go code, we have seen a CPU reduction of approximately 10% with cleaner and maintainable code."
"Tooling has always been a problem with our legacy code base... but we have found that Go has excellent tooling, plus built-in testing, benchmarking, and profiling frameworks. It is easy to write efficient and resilient applications. After working on Go, most of our developers don't want to go back to other languages."
"...when a programming language is designed for exactly the environment most of us use right now—scalable, cloud-based servers that are optimized for performance—a lot can go right."
What’s possible with Go
Use Go for a variety of software development purposes
Cloud & Network Services
With a strong ecosystem of tools and APIs on major cloud providers, it is easier than ever to build services with Go.
With popular open source packages and a robust standard library, use Go to create fast and elegant CLIs.
With enhanced memory performance and support for several IDEs, Go powers fast and scalable web applications.
DevOps & Site Reliability
With fast build times, lean syntax, an automatic formatter and doc generator, Go is built to support both DevOps and SRE.
Get started with Go
Explore a wealth of learning resources, including guided journeys, courses, books, and more.
- Resources to start on your own
Guided learning journeys
Step-by-step tutorials to get your feet wet
Browse resources and learn at your own pace
Read through structured chapters and theories
Cloud Self-paced labs
Jump in to deploying Go apps on GCP
- In-Person Trainings
Offering customized on-site live training classes.
Customized In-person, remote, and online training classes. Training for Developers by Developers.
Boss Sauce Creative
Personalized or track-based Go training for teams.
On-site classroom training on Go and consulting on distributed systems architectures, in India.