Book Review, Team Geek: A Software Developer’s Guide to Working Well with Others

5 minute read

There is Debugging Teams, a recent edition of Team Geek, and Debugging Teams targets a wider audience, not software engineers specifically. I felt that many contents in Team Geek are already general enough to be applied in fields other than software.

Authors once worked in CollabNet, which created Apace Subversion(SVN), a predecessor of git(we are still actively using it at work for managing source code). The fact that people who created the first generation of code management tool wrote about teamwork makes this book very interesting.

Thought – Intrinsic Motivation

Authors introduce Dan Pink’s book, Drive, and there, Dan Pink lists three key elements that promote employees’ intrinsic motivation: autonomy, purpose and mastery. From an employee’s perspective, I want to add appreciation to the list.

Autonomy: People envision a workplace that they are so excited that they can’t wait going to the office. This is possible only when employees feel responsibility and truly care about their projects. They have to be driving forces themselves, not their managers. If what one can do and can’t do are strictly limited, one can easily shift responsibility on another, arguing that he or she only stuck to the rules. Autonomy encourages employees’ proactive participation and leads to higher satisfaction at work.

Purpose: A well-organized project is split into multiple, independent small projects, and each small job is done by the most appropriate members. This approach removes a high coupling among different jobs and enables multi-core processing. The downside of such parallel processing is that sometimes employees don’t have a big picture in their mind (in fact, that’s the point in multi-core, but people ain’t cores!) and could lose interest in their roles. A manager needs to reminds his or her members the project’s purpose and why every individual worker’s role matters.

Mastery: Many companies these days promote academic clubs that employees together could be exposed to trendy APIs, study programming languages not used in their current projects, or learn foreign languages. Even if employees get their work done flawlessly, if they feel it’s monotonous or repetitive, they don’t feel alive. A manager needs to provide his or her team some opportunities to sharpen their blades and quench their thirst to improve.

Appreciation: An additional factor that I want to add is appreciation because it’s pretty sad if I am the only one who cares about my work. Appreciation is somewhat related to purpose mentioned above, but what I mean here is more direct positive or negative comment on individual achievement. Easiest way to run out of one’s battery is to comment one’s work with “Ok, but no one cares.” An employer has to be careful to provide feedback so that such care and attention don’t conflict with autonomy that he or she guaranteed for the team. A feedback doesn’t necessarily have to be positive. Critical comments on what needs to improve can also keep the employees’ energy level high.

Thought – Winning Habit

Authors advise, “Fail Fast; Learn; Iterate.” They say, failure is an option, and it’s an evidence that one has taken enough risks. This is so true but also a cliché. I want to point out the importance of “winning habit,” a momentum of success.

Wining habit may be too much an expression, but I am just worried consecutive failures that don’t seem to end could result in a complete breakdown. Set the smallest milestones, and count each of them as a small success. Sometimes what matters is not the final output but the feeling of accomplishment.

This is similar to football players tend to contain the ball and their team has higher possession. Although the score sheet is still 0-0, the team that controls the tempo of the game is less likely to feel tired than the team that runs around to take the ball back. Completing one pass by one may be important in “strategy-wise” but this small milestone (completing a simple pass) also makes the players focused and keeps their energy level high.

This accords with people telling PhD students submit/publish the first paper as early as possible, regardless of the quality of the work. The output may not be satisfactory at the moment but it could snowball to become a high-quality work later by making graduate students less depressed.

What we want is a boat that smoothly sails even with a very weak wind blowing. In order to do so, you need to make sure you never stop, even if you are progressing only inch by inch. This way, you sail further because maximal static friction is greater than kinetic friction.

Maximal Static Friction is higher than Kinetic Friction!, the graph is from here

Thought – Be Genuine

One of my simple principles in human relations is that I always have to be genuine. I probably haven’t experienced the extreme mentioned in the book, or I have been lucky to always have good people around me. But I’ve seen truthfulness and genuineness are usually the best policies and they have saved my efforts to behave how in which situations. Although I don’t have appropriate words in my English vocab list or I don’t exactly know the proper manners, others usually feel my heart if I am being genuine.

Or maybe these are the values I try to pursue, so when I properly followed the rule of genuineness, I felt that there’s nothing wrong. One the other hand, when I didn’t follow the rule, I might have felt insecure.