American engineer and management consultant W. Edwards Deming once said, "A bad system will beat a good person every time."
Now, just imagine what you can achieve with a good system. Very often we get requests from both temporary workforce organizations and customers alike to provide them with x amount of experts in stack y for period n. And we never agree to that for one simple reason: We don’t believe in rock stars or experts on an individual level.
We at AOE believe that the key to a good system are mature (we call it de-stormed) agile cross-functional teams. Let me explain why – and how good, or more precisely, excellent, teams – not individual experts – are key to the long-term success of AOE and our clients.
Agility describes a modern-day form of work organization, in which flexibility, adaptability and rapid development in short, iterative cycles helps to deliver the desired result. By delivering software regularly, we create benefits for both our teams and our clients at an early stage. This approach helps us to quickly recognize and implement changes. Lean processes, regular communication and transparency are central elements of our agile organization.
Our agile teams are characterized by a high degree of responsibility, self-organization and freedom of choice. And, even though our developers have a high level of expertise in their areas of specialization, the focus in an agile organization is never on the individual. The “expert” as understood by management consultancies, for example, is out of place in an agile team. Or, as one of the founders of the Scrum software development process, Jeff Sutherland, puts it, “No heroics. If you need a hero to get things done, you have a problem.”
These heroes, experts or rock stars are often the source of poor team spirit. They are less likely to be team players, sitting in their ivory towers and solving problems on their own. Often, they expect other team members to take care of what they consider minor tasks, which creates enormous tension within a team. Such teams do not perform at anywhere near the level of which they are inherently capable of.
In today’s ever-changing business world – and technical environment –, we need more than just expert knowledge in our teams. Adaptability, flexibility and agility are far more important.
However, how do we define high performance agile teams? Ideally, high performance teams are comprised of professionals with a high degree of cross-functional diversification who work closely together and are much more efficient in jointly implementing new concepts and software than the aforementioned expert who works alone in the ivory tower.
To create successful projects and high performance agile teams, an optimal structuring of the teams is a prerequisite. A functional team with the necessary professional expertise and agile methodological competence is essential, especially when developing software for complex projects. Our agile project teams generally work according to the Scrum model.
Scrum projects, unlike projects where software is developed using a Waterfall approach, do not usually work according to rigid plans and do not produce over-the-top documentation. Rather, close client communication and the flexible consideration of changes are the focus.
To implement agile methods successfully, organizational structures and the corporate culture also need to be agile. It is not enough merely to use agile software development methodologies such as Scrum or Kanban. The entire organization needs to be committed to an agile corporate culture. Much of that is based on proper empowerment of these teams. That’s why the teams at AOE can make 99% of all decisions autonomously and only need HR or management for 1% of all daily decisions. We believe in a principal that I branded “management as a service” a while back, in which our primary task in leadership is enablement for others to become servant leaders. You can read tons of servant leadership information on Robert Grenleaf's philosophy: www.greenleaf.org
A major factor for sustained success within an agile structure is the client, who is an active part of our teams. This has many advantages:
To collaborate optimally together with our clients, we create optimal conditions. With an agile organization and corporate culture, as well as the establishment and expansion of excellent teams, we create the best possible breeding ground for a successful partnership.
Read more about this topic in my previous article on our Team & Method approach.