TAPIWA RUTSITO
All work

Independent · Distributed systems · Independent project · 2026

A ~100-service distributed platform on .NET

Architecture for roughly a hundred microservices with Kafka messaging, Redis caching and session storage, and full observability through Prometheus and Grafana with custom .NET metrics.

Role
Architect
Scale
~100 microservices
Stack
.NET, Kafka, Redis, Docker Compose, Prometheus, Grafana

Context

A self-directed project to work through the real decisions behind a large microservice estate: how services communicate, where state lives, and how you see what’s happening across a hundred of them.

Decisions

  • Messaging — Kafka over RabbitMQ. Chosen for horizontal scale, fan-out, independent consumer groups and message replay.
  • Caching — vanilla Redis over Bitnami Redis. One upstream image for caching, session storage and pub/sub.
  • Observability from day one. Prometheus and Grafana run in the base Docker Compose stack; services expose custom metrics through prometheus-net.AspNetCore, with imported Grafana dashboards.

Status

Design and infrastructure in place; source is private and available to walk through in an interview.