Posts

CQRS and Event Sourcing in Go: Practical Patterns from the Trenches

Building scalable systems often means accepting that the traditional CRUD approach won't cut it. When audit requirements get strict, when read and write patterns diverge, or when you need to answer

Managing Race Conditions in Event-Driven Systems with Go

Building distributed systems means accepting that events won't always arrive in the order they were created. When Services communicate asynchronously through message queues and event streams, race conditions become inevitable. This guide exploires practical strategies for handling out-of-order events using Go.

When to Go Distributed: Real Talk on Building Systems with Go

After years building distributed systems, here's my honest take on when you should consider the complexity, and why Go excels when you do.

Simplified Clean Architecture in Go

A practical guide to implementing Clean Architecture in Golang with real examples and best practices for building modular, testable backend services.

Building REST APIs with Go

Learn how to build production-ready REST APIs using Go's standard library and best practices.

Understanding Go Interfaces

A deep dive into Go's interface system and how it enables polymorphism and flexible code design.

Getting Started with Go

An introduction to the Go programming language and why it's great for building web applications.