Learn Building Modern Go applications
Get insights into building modern Go applications from the best Go veterans. Our blog covers best practices, tips, and tricks for creating high-performance, advanced Go apps.
GoSoftware / engineering practiceDistributed systems / cloud
- Posts
- 63 from 1 Jan 2001 to 19 Aug 2026
- Posting
- monthly (6 in the last year)
- Kind
- company blog
- Feed
- https://threedots.tech/index.xml
2026 3
2025 18
- How to Know If your Software Is Overcomplicated or Oversimplified?
- DDD: A Toolbox, Not a Religion
- Becoming a Product Engineer: First Steps
- Durable Background Execution with Go and SQLite
- SQLite Pub/Sub, Quickstart, and more — Watermill 1.5 Released
- Shipping an AI Agent that Lies to Production: Lessons Learned
- AMA #1: Clean Architecture, Learning, Event-Driven, Go
- How to Create PRs That Get Merged The Same Day
- Event-Driven Architecture: The Hard Parts
- Synchronous vs Asynchronous Architecture
- Watermill: from a hobby project to 8k stars on GitHub
- Unpopular opinions about Go
- Learning Software Skills fast: what worked for us best in the last 15 years
- Is Clean Architecture Overengineering?
- When you shouldn’t use frameworks in Go
- When it’s worth to write low-quality code
- Iteration #1: "Go Faster"
- We quit our jobs to help people write software more mindfully
2024 6
- The Over-Engineering Pendulum
- Watermill 1.4 Released (Event-Driven Go Library)
- Optimising and Visualising Go Tests Parallelism: Why more cores don't speed up your Go tests
- Distributed Transactions in Go: Read Before You Try
- Database Transactions in Go with Layered Architecture
- Live website updates with Go, SSE, and htmx
2023 3
2022 3
2021 7
- Auto-generated C4 Architecture Diagrams in Go
- Safer Enums in Go
- Common Anti-Patterns in Go Web Applications
- Software Dark Ages
- Running integration tests with docker-compose in Google Cloud Build
- Repository secure by design: how to sleep better without fear of security vulnerabilities
- Microservices test architecture. Can you sleep well without end-to-end tests?
2020 11
- Combining DDD, CQRS, and Clean Architecture in Go
- How to use basic CQRS in Go
- How to implement Clean Architecture in Go (Golang)
- 4 practical principles of high-quality database integration tests in Go
- The Repository pattern in Go: a painless way to simplify your service logic
- Introduction to DDD Lite: When microservices in Go are not enough
- When to avoid DRY in Go
- You should not build your own authentication
- Robust gRPC communication on Google Cloud Run (but not only!)
- A complete Terraform setup of a serverless application on Google Cloud Run and Firebase
- Building a serverless application with Go, Google Cloud Run and Firebase