Imagine you have been tasked with containerizing a monolithic application. The application has organically evolved over the years into an unmaintainable monster. Changing even a minor feature in the source code may break other features due to the tight coupling existing in the code base. Releases are rare due to their complexity and require the whole team to be on deck. The application has to be taken down during the release window, which costs the company a lot of money due to lost opportunities, not to mention their loss of reputation.
Management has decided to put an end to that vicious cycle and improve the situation by containerizing the monolith. This alone will lead to a massively decreased time between releases as witnessed by the industry. In a later step, the company wants to break out every piece of functionality from the monolith...