The person in this role needs the following knowledge, skills, and abilities:
Enough expertise and experience to define and create technical solutions in the project's technology
Ability to understand and conform to the architecture
Ability to identify and build developer tests that cover required behavior of the technical components
Ability to communicate the design in a way that other team members understand
In addition, to create a visual model of the system, the person in this role needs the ability to render the
design in the Unified Modeling Language (UML).
A person performing this role can have specialized skills in a particular technical area but should also have a broad
understanding of all of the technologies involved to be able to work with other technical team members.
Even in the smallest team, multiple individuals should be working together to create the technical solution. In small,
agile teams, this role is often shared among several team members who also perform other roles.
See Guideline: Staffing a Project for more information about how several team members
can fill this role.See Guideline: Self-Organize Work Assignments for more information about how several
team members can fill this role.