It is the ability of the system to undergo changes with a degree of ease. In simple words, how easily changes can be made into functionality to meet new business requirements.
Points to be considered:
Industry standard coding standards.
GoF and other design patterns.
TDD or ATDD technique
RESTful API standards.
DDD patterns to solve complex domain.
Anti-Corruption Layer (ACL) between modern and legacy system.
Reusability
It is the ability of the component or sub-system which can be reused in other applications or in other scenarios. It minimizes the duplication of components and reduce the implementation time.
Points to be considered:
GoF Design Patterns.
Designing reusable components and sub-systems.
Usage of code analysis tool to identify redundant code.