Investigations

Meridian CRM

Go February 2026

Production-grade Go microservices with a comprehensive documentation portal — training guides, observability runbooks, and BDD test architecture for self-directed learning.

Meridian CRM is my deep dive into production-grade Go microservices. It's a customer relationship management system built as a set of independently deployable services — customers, contacts, deals, activities — all communicating through well-defined APIs.

The standout feature is the observability stack. Every service is instrumented with OpenTelemetry for distributed tracing, Prometheus metrics for monitoring, and Grafana dashboards for visualisation. You can trace a request as it flows through multiple services and see exactly where time is spent.

Testing follows a BDD approach with Gherkin feature files driving the acceptance tests. Each service has its own test suite, and there's an integration test layer that validates cross-service interactions. The architecture follows hexagonal/ports-and-adapters patterns throughout.

Docker Compose orchestrates the whole thing — services, databases, Grafana, Prometheus, Jaeger for tracing. It's the kind of setup you'd actually run in production, not a toy example.

What makes this project different is the documentation. There's a full training manual — 12 interconnected guides covering architecture, observability runbooks, simulation exercises, personas, known-issues investigations, and a user guide. It's designed as a self-directed learning course: you can work through the exercises at your own pace and come away understanding how production microservices actually fit together.

What this project demonstrates

12 interconnected docs: training guide, observability runbooks, simulation exercises
Self-directed learning course with hands-on exercises
Go microservices: customers, contacts, deals, activities
Full observability: OpenTelemetry tracing, Prometheus metrics, Grafana dashboards
BDD testing with Gherkin feature files
Hexagonal architecture with Docker Compose orchestration

Technologies

MicroservicesGrafanaOpenTelemetryBDDDockerDocumentation

© 2026 Jonathan Leahy · v0.8.5