Photo by Franck V. on Unsplash

CQRS is a useful pattern to reason about the activities of a specific domain. But it definitely comes with a steep learning curve. Reads, Writes, DDD, Event Sourcing, Eventual Consistency, why should we care?

This is a cross-post of my original article on my own space: CQRS: Why? And all…

Working together
Photo by Hudson Hintze on Unsplash

The Conduktor Engineers team

The Conduktor developer team is composed of a group of experienced and curious professionals. Scala features/enables a lot of characteristics we value, so that’s the language we chose. Our DNA is our Kafka expertise and we believe that modern software architectures have to be built around streaming.

Functional Programming

We believe that…

This post is an excerpt of my full article on my blog: It’s quite long but has many insights, explanations, diagrams, and code examples.


Optimizations clearly reduce the load on our Kafka Cluster by avoiding to create unnecessary internal topics and simplify the Topology our Kafka Streams applications use…

Or how an interview led to a training seance

Photo by EvgeniT

Today, someone asked me this question: “What makes you a Kafka expert?” at the beginning of a job interview where I applied to work as a Freelance. The job was interesting because the company was considering moving from a monolith to a Kafka stack and micro-services. A huge step! I…

Or how to deal with errors in a functional way

Photo by Todd Quackenbush on Unsplash

Working with my team, I had to deal with some business errors which were Exceptions. I was a bit nervous about them, and was having a “not good enough”, “not expressive enough” feeling. Having a Scala background, I decided to show them how we could handle errors differently.

Let’s look…

Data are like trains: where should they go?

Working in a large company, my team and I are working with JSON data (let’s not talk about CSV and XML please). We had to find out what were the definitions and business rules of the models we received from other services. Trust me, it’s not that easy.

The Purple Tentacle is me: I want the blue water back. Yes, I’m never happy.

New Job, Big Company, Java team, no Scala miles away.

My goal: move some not-that-big Java projects to Scala and start the inertia to create new projects in Scala.

Why? While I like Java as it gains more capabilities, I simply love Scala. The existing projects were in good ol’…

Past, Present, or Future?

We all started with Scala Futures. They bring so much power and their syntax is simple enough. “Concurrency and asynchrony made easy” could be their tagline.

Futures allow us to deal with “values that don’t exist yet”. We can create a pipeline of transformations on top that will be applied…

It always feels good to follow the rhythm of the tweetosphere, to use the latest tool or framework (still in alpha version), to be hype, to talk about it, to blog about it: you need to use this revolutionary bleeding-edge thingy.

Your ops team will love you. (taken from experience)

Changing the past will change the present

It’s not always obvious to understand what referential transparency is and why it matters. It’s often intertwined with “complex” frameworks, dealing with Functional Programming.

Here, I start from a simple case all developers are dealing with (constants), and show the “equivalence” for more complex cases (class), and the impact when…

Stéphane Derosiaux

CTO I don’t know anything, help me. Apache Kafka. Scala. FP.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store