Knowledge types in the project
The following "types of knowledge" can be distinguished in any project:
Knowledge that does not change much over time, such as algorithms, computer science, programming language mechanisms and its APIs.
Knowledge of the set of technical solutions used in a project, including programming languages, frameworks, and libraries.
Knowledge that is specific to the current project and not valuable outside of it. This knowledge is essential for newly-onboarded developers to be able to contribute effectively.
Feature-Sliced Design is designed to reduce reliance on "project knowledge", take more responsibility, and make it easier to onboard new team members.