The 2006 World Cup in Germany has come to an end, but the air still smells like football, in buses and restaurants, people are still talking about the top ten charm goals, luck in Italy and the red card of Zidane ...... The endless World Cup. But gradually, a kind of loss is slowly crawling onto me, which is mixed with thoughts that are either far or near. Is it because Brazil and Argentina leave early? Or did the strong German chariot fail to reach its peak? Maybe in the next few months or even four years, we will lack the passion and hope we have in the World Cup ...... Among the many thoughts, the most I think about is football, and the software team building and management.
The relationship between football and team building is not far-fetched. One event can be confirmed. On October 21, 2005, Royal Human Resources Association invited Eriksson at its annual meeting to provide training for many professional human resources managers, the question is "How to make your team play well". At the meeting, Eriksson summarized the successful experience in football team management. There were only three points: to have excellent players, to respect players, and to act simply. Although there are three points, each point is classic. If these three points are introduced to the software team management, the explanation is:
- To have excellent software engineers, as PSP emphasizes, the team members are the source of team abilities.
- Respect every technician, that is, respect the motto "person is the most valuable fortune", people-oriented, and fully mobilize everyone's enthusiasm and initiative.
- Simple process and mode. Simplicity may be the best, as advocated by agile methods.
After the story, let's discuss team building and management from football.
1Clear and flexible team Division
In the football team, the division of labor is clear. The team consists of different roles, including the striker, midfielder, avant-garde, Defender, and goalkeeper, to form a lineup of 442, 433, and 4312. The main task of a forward is to attack and guard is to defend, but sometimes these roles also change. As the stadium is changing rapidly, the defender sometimes takes part in the attack and scores directly. When the Defender is in danger, it is necessary for the defender to go back to the defense in time.
An efficient software team also has different roles, such as architects, designers, programmers, test engineers, and project managers. A software team should be composed of people with different skills. For example, the architect needs rich experience and comprehensive technology, while the project manager needs good communication skills. Although the division of labor is different, the entire team must work together to ensure the efficient operation of the entire team. On the one hand, everyone has a clear focus and focus, but their respective division of labor is not absolute. They help and support each other, so that the entire team can complete the task more effectively and with high quality.
2Team culture and spirit
Without a good team culture, software products are hard to succeed.
As always, the German chariot inherits the willpower, sureness, and rigor of the steel, and has achieved good results-the second runner-up. In advance, people thought that the German team had a good performance when it entered the top eight. In Argentina, the failure of the penalty shows that the players' psychological qualities are not strong enough and their minds are weak. The Korean and Japanese teams also show good team spirit, and the Chinese team lacks team spirit and tenacious fighting spirit, which has been proved in many competitions.
Incentive is a kind of culture. A good culture focuses on incentives. It focuses on incentives and guidance, and constantly promotes the morale and enthusiasm of the team, with few punishments. In the software team, we can send a "carrot" (indicating rewards) a day ), encourage the team by going to the front of the engineer, praising a person by email, setting up game rewards for winners, soliciting comments from everyone, and giving feedback to everyone.
3. Team capability
Experienced teams should first come to a consensus on how to play the final goal and the roles played by each player. A football match is a real team, and it cannot win because it lacks team ability. There are countless big-name stars in the Brazilian team, but they are not as terrible as people think. Their overall lack of cooperation and weak attack capabilities. Ecuador does not have any big-name stars. Both of them are great players, but they do not lose one goal. The results come from the cooperation of Excellent Teams. If a team does not know how to cooperate and is exhausted, it is not easy to win the game.
Many development teams have many talents and experts, but lack clearly defined processes, active communication and close collaboration, and the overall strength of the team is not strong. Software development requires more and more overall team capabilities, clear division of labor, and tacit cooperation. Software testing is more dependent on rigorous team work. Any mistakes made by any one may result in all the work done. High-quality products come from the early efforts of every developer and the dedicated efforts of every tester.
In order to enhance the team's abilities, the skills of each team member should form a complementary relationship. For software teams, a team with strong team capabilities can be formed only by professionals in the system platform, database design, algorithms, programming, and process management.
4. Execution
The software testing manager, sometimes like a football coach, sees that his strategy has not been implemented. The football team leader or the players on the field have no control over the attack rhythm, and the coach can only stand on the sidelines, hope the ball is sighing and helpless. How can we improve execution? As Eriksson said, it is the foundation to have excellent players. Then, a series of methods and advanced team culture are required to ensure and improve the team's executive power:
- To make every team member really understand the strategy to be implemented, the team leader needs to ask and confirm it by himself.
- Team leaders must respect every team member. If they respect the members, they will respect the leadership and the intent of the leadership can be fully implemented.
- Learn lessons in a timely manner, sum up experience, constantly improve operation methods and tools, and improve technical execution.
- There are clear goals, effective methods, a fair environment, continuous incentives, and so on.
5. Risk Control Capability
The charm of football is largely derived from the variables on the football field. There are many variables in the football field. These variables are a risk for coaches, captains, or teams. To win, you must control risks. The management of the software team is also like a football match, penetrating the art of risk management. In software development, efficiency and productivity should be pursued, and quality risks should be reduced, more importantly, the balance between efficiency and quality should be achieved.
The software's mistakes will control the pace of the stadium, which is also a good way to avoid risks. Like software development, you also need to control the pace of development. A good team should change tactics and pace for different opponents. In software development, the team should also consider different types of product release. A brand new product release strategy is different and the pace is slower. For the release of patch packages to solve product problems, the pace must be fast, and the process should be simple and effective.
6The team needs the core and can only be one
The team needs to have a core, which is explained by France's victory in Brazil, because a team leader like Zidane in France forms the core of the team. If multiple cores exist, it may form a faction or cause internal consumption. There are too many Brazilian stars, including "Luo and Luo", but lack of cooperation and attack capabilities. It may be better to have only one "Luo". In this way, the tactics may be simpler and the goal of passing the ball is clearer, in turn, it will make the team more effective.
A team leader must be superior and have strong leadership in order to serve people with skill and morality. Many project managers in China do not have good development and testing experience. It is difficult to lead a project and can only play a coordinating and monitoring role, there is no way or failure to discover any major technical problems or serious design defects in the project. So some companies began to set up engineering managers, so that some technical and management personnel could lead the development of the project.
7. Perseverance
The constant power is also huge. In the match between Germany and Argentina, the spirit and effort of the German chariot never gave up were rewarded. Krause scored the score, although the scene was passive, the Germans dragged the game to the overtime match and the penalty kick, and finally won the game. The software team will also often encounter difficulties and difficulties. When the team encounters difficulties, if the backbone members of the Team choose to "leave", the team will not be able to lose any chance to even take a penalty, it disappears. If you stick to it, make unremitting efforts, and wait for the opportunity to reverse the situation, you may win the championship. Websites such as Netease, Sohu, and Sina have suffered a bitter cold on the Internet and are almost to be delisted by NASDAQ. However, due to their persistence, their share price and market value have grown dozens of times. So today, I often hear my colleagues say, "If I bought Netease stocks, I will send them now ".
8. Target Management of the team
A team should have a clear goal and different stages should have different goals, which is precisely the most critical. In the World Cup, many excellent teams, including the German team, did not go to the later knockout round in the group, but only set the goal of the group round-how to appear first in the group round and play at one venue, set each group stage to a good match. In the knockout round, we also made strategies for our current competitors. We made full preparations before the competition to achieve our goal step by step, winning the prize. In the match against Argentina by the German team, the German team staff gave him a small note when the goalkeeper Leiman was about to move to the front of the ball. What did I write on the paper? It is the habit of all players in Argentina to take a penalty in the past two years. Therefore, Leman can judge again and again the direction of the Argentine player to take a penalty, with outstanding performance.
In software development, the overall goal is set and then decomposed, for example, the goal is decomposed into each team. A better way is to break down the target into every milestone and achieve it in stages. To achieve the goal, only "decomposition" is not enough. It must be supported by the upper and lower layers. The entire team shares the goal, and works together to make the best effort, ultimately, the goal is achieved.