Domain-Driven Design: Working with Legacy Projects Course. As a developer, you like working on only green projects. However, most likely, you are currently working on a legacy project or will be at some point in the future. In this Domain-Driven Design: Working with Legacy Projects course, you will develop skills that will help you manage these legacy projects to deliver new features and keep stakeholders happy. First, you will learn step-by-step how to get familiar with the legacy codes. Next, you will learn how to manage rewrites, when to do it, and when it is better to keep the existing legacy codebase instead. Finally, you will learn techniques such as building an anti-corruption layer, the Strangler pattern, and the Branch by Abstraction pattern to deal with these codebases. By the end of this course, you will have a comprehensive understanding of the theory and practice of improving the performance and scalability of legacy projects.