Do you know this situation, where you and your team are facing this big monolith? An application which has grown far too big over the years. Every time when you make a change, you have to fear the code might break at a totally different place, because lots of things are closely intertwined. But what to do if you are at such a point? Maybe you start thinking about microservices but then questions like “Are they really the right thing for us?” and “How do we get there?” arise.
In my talk I will show you how we are dealing with our monolith. A collection of multiple python packages without clear boundaries, forming the actual application - all living in a single monorepo.
I will talk about how we split up the whole thing, making it more flexible for us and also easier to use individual components by other teams. All this, of course, comes with a price: You have to think more about the dependencies between you components. You have to think about how you can efficiently test everything, making sure your final application is still working correctly. Don’t loosing yourself in dependency hell and packaging all components correctly becomes quite a challenge.
This talk will: