Self-organizing teams are at the spirit of agile software development. Self-organizing agile teams are composed of individuals supervise their own workload shift work among themselves based on need and best fit and participate in team decision making. Self-organizing teams must have frequent focus, mutual trust, respect and the capability to systematize frequently to meet new challenges. The scrum method particularly mentions self-organizing agile teams and the concept of empowered teams has recently been added to XP. Self-organizing teams are not only seen as allowing agile engineering practices but also as capturing the spirit of agile values and principles which focus on human and social aspects of software engineering.