DDD is a complex approach to software design. To study it, you need to read a lot and to try it out a lot more. But when you have a good deal of business logic — and when it's pretty complicated, too — it's very hard to create a big evolutionary application without such an approach. For us, beginning to employ DDD and beginning to switch actively to microservice architecture happened almost at the same time. This way, it gave us an interesting experience of employing two things that were complex, but also complemented each other fairly well.
From this talk you'll learn how we were implementing domain-driven design in our project, learning to communicate with clients, dividing our code base to bounded contexts, improving the code quality and, of course, what conclusions we drew from all this.