Angular was created at Google to solve Google-scale problems. To Google, this means millions of lines of code, thousands of engineers, widely varying project schedules, requirements, and workflows. The platform is designed to enable you to build and manage shared code, and to divide work among appropriate roles. Many teams have separate designers, engineers, quality assurance, and other roles. The Component model used in Angular was designed to separate these concerns, and to allow a greater number of developers to collaborate.