About the service
I develop concurrent and distributed systems on Akka, in Scala or Java, and for several years have been turning the actor model into code that calmly handles load. When a service needs to process tens of thousands of simultaneous requests, store state per user in memory, and not lose messages at the same time, I design an actor hierarchy, supervision strategy, and back-pressure so that a failure remains a local event, not a system-wide failure.
I work with the full Akka toolkit: clustering and cluster sharding for distributing entities across nodes, Akka Streams for bounded pipelines with back-pressure, persistence and event sourcing with CQRS so write and read models evolve independently, and split-brain resolution so network partitions do not corrupt data. I also care about what you remember only in battle: passivation of inactive actors, updates without downtime, at-least-once delivery with idempotent handlers.
Contact me if you want a system that is honest about concurrency rather than hiding it behind locks. I will analyze your current architecture or start from scratch, write tested actors, and hand over code that can be understood. Typical tasks:
— new actor-based backends and message protocols;
— migrating a blocking service to Akka Streams;
— adding cluster sharding and event sourcing to a live application;
— rescuing a project that hits deadlocks and leaks actors under load.
I work with the full Akka toolkit: clustering and cluster sharding for distributing entities across nodes, Akka Streams for bounded pipelines with back-pressure, persistence and event sourcing with CQRS so write and read models evolve independently, and split-brain resolution so network partitions do not corrupt data. I also care about what you remember only in battle: passivation of inactive actors, updates without downtime, at-least-once delivery with idempotent handlers.
Contact me if you want a system that is honest about concurrency rather than hiding it behind locks. I will analyze your current architecture or start from scratch, write tested actors, and hand over code that can be understood. Typical tasks:
— new actor-based backends and message protocols;
— migrating a blocking service to Akka Streams;
— adding cluster sharding and event sourcing to a live application;
— rescuing a project that hits deadlocks and leaks actors under load.