Separation of Concerns principle for TypeScript code review and refactoring. Use when detecting mixed responsibilities, business logic in UI components, infrastructure code in domain layer, or tightly coupled modules. Helps improve modularity and maintainability. Related to Clean Architecture layers.