Service architecture
Professional practice
.NET / REST / CQRS / Microservices
Further hands-on learning
Saga / Event Sourcing / Consul
Try a decision, follow its consequences, explore another approach.
The product changed. The system hasn’t caught up. Make three calls, see what follows, then try another approach.
Three decisions. Different outcomes. Replay to explore another approach.
Explore cache misses, search lag and repeated events. Then look at payment uncertainty.
Read the source, return the result and populate the cache with a bounded lifetime.
Interactive scenarios show system behaviour using sample data.
Technologies I use in professional work and approaches I explore through personal projects.
Professional practice
.NET / REST / CQRS / Microservices
Saga / Event Sourcing / Consul
Professional practice
PostgreSQL / SQL Server / EF Core
Concurrency / Projections / Query semantics
Professional practice
Redis / Cache keys / Invalidation
Distributed cache / TTL / Warm-up
Professional practice
Kafka / RabbitMQ / Hangfire
MassTransit / Saga state machines / MQTT
Professional practice
Logs / Traceability / Elasticsearch / Kibana
OpenTelemetry / OTLP / Prometheus / Jaeger
Professional practice
Docker / Kubernetes / Jenkins
Docker Compose / Service discovery / SRE
Professional practice
Elasticsearch / Indexing / Filters
Relevance / Synonyms / Retrieval
Professional practice
Azure / AWS / Cloud integrations
Azure Functions / Storage / Service Bus
Professional practice
Identity / Roles / Validation / API contracts
ASP.NET Identity / Data Protection / API security
Professional practice
Industrial IoT / Modbus / Event processing
gRPC / Streaming / SignalR / MQTT
Professional practice
Unit / Integration / Regression testing
Design patterns / TPL / PLINQ / Parallelism
Personal projects
Semantic Kernel / LangChain / LangGraph / RAG
Ollama / MCP / Blazor / MAUI / React
I choose tools around data consistency, maintainability and operational needs.
My learning records across software, data, cloud and distributed systems.
Learning records are grouped by the topics covered in their source material.
This visit / DOM ready: —
Measurements stay in your browser. No analytics or tracking service.