Peopleware by Tom DeMarco & Timothy Lister – How to successfully lead in the software industry – leadership book review

Peopleware leadership book review

IV. How to grow a team in the software industry

Growing a team of software engineers is pretty much similar with growing any competitive team in another industry. However, even if an experienced manager knows the general steps he needs to take in order to achieve this goal, there is something else that needs to happen inside the team: a synergy that depends on a lot of factors and is not easy to create, but once it appears it greatly improves the dynamics of the team and its performance.

The authors used an ingenious way to solve the mystery of creating and maintaining“well-jelled teams”:

Back to brainstorming mode: We began looking for “Six Things You Can Do to Make Team Formation Possible.” It was still hard. At last, in desperation we tried a trick called inversion, described in Edward deBono’s Lateral Thinking. When you’re stuck trying to solve a problem, deBono suggests that rather than looking for ways to achieve your goal, look for ways to achieve the exact opposite of your goal. This can have the effect of clearing away the brain’s cobwebs that keep you from being creative.

Tom DeMarco & Timothy Lister – Peopleware

To create a great “team dynamic”, avoid the following traps:

1. Defensive Management

It makes good sense for you, the manager, to take a defensive posture in most areas of risk:

  • If you must work with a piece of failure-prone gear, you get a backup;
  • If the client finds it hard to express himself, you take pains to nail down the product specifications;
  • If a contract vendor tends to “forget” promises, you publish minutes after each meeting.

There’s one area, though, where defensiveness will always backfire: You can’t protect yourself against your own people’s incompetence. If your staff isn’t up to the job at hand, you will fail. Of course, if the people are badly suited to the job, you should get new people. But once you’ve decided to go with a given group, your best tactic is to trust them. Any defensive measure taken to guarantee success in spite of them will only make things worse.

2. Bureaucracy

Mindless paper pushing is a waste. It ought to be attacked because it keeps people from working. The team needs to believe in whatever goal it forms around, and that goal can be arbitrary, but at least it has to exist. There has to be some evidence that management believes in it. Just telling your people that the goal matters won’t be enough if you also have to tell them they should spend a third of their time pushing paper.

3. Physical separation

In the case of constant work from home, the social part of the team is almost non-existent. Group members may grow stronger bonds to non-group neighbors, just because they see more of them. If there is no group space and no immediate and constant reinforcement then there is no chance of a group culture forming (like the legendary Black Team).

Physical separation of people who are expected to interact closely doesn’t make much sense anyway. Neighboring workers are a source of noise and disruption. When they’re all on the same team, they tend to go into quiet mode at the same time, so there is less interruption of flow. Putting them together also gives them opportunity for the casual interaction that is so necessary for team formation.

4. Fragmentation of people’s time or of a team itself

Fragmentation is bad for team formation, but it’s also bad for efficiency. Simply saying that a goal is to assign people only one piece of work at a time can result in significant reductions of fragmentation, and this gives the teams a real chance to form. At the end of the day it is hard to see where the wasted time went (the employee didn’t have fun in those lost hours) but it is usually concealed in the slow restart of his or her work, the direct result of interrupted flow.

Time fragmentation not only delays work due to time waste on task switching and re-immersion, but also makes the employee feel guilty about his productivity

Fragmentation is particularly injurious when two of the tasks involve qualitatively different kinds of work habits. Thus, the mix of a design task (which requires lots of immersion time, relative quiet, and quality interaction time with a small group) with a telephone support task (which requires instant interruptibility, constant availability, quick change of focus) is sure to make progress on the more think-intensive of these tasks virtually impossible. The time wasted continually trying to get restarted is perceived only as frustration by the worker. You may never hear about it, because the people who suffer from this problem are all too likely to blame themselves.

Leaving aside fragmentation of time, if a team does knit, don’t break it up. At least give people the option to undertake another project together. They may choose to go their separate ways, but they ought to have the choice. When teams stay together from one project to the next, they start out each new endeavor with enormous momentum and they tend to find the “uniqueness” that all teammates identify with – a powerful sign of a jelled team.

5. Quality reduction of the product

Often the product’s end user gives willing consent to this trade-off (less quality for earlier, cheaper delivery). But such concessions can be very painful for the developers: their self-esteem and enjoyment are undermined by the necessity of building a product of clearly lower quality than what they are capable of. There is no joint sense of accomplishment in store for them, and they can’t wait to stop working on that particular projects because they will feel a general sense of relief when they can stop doing. At the end of the project, they may want to separate themselves from other members of the group, and get on to better things.

6. Phony deadlines

There are certainly cases where a tight but not impossible deadline can constitute an enjoyable challenge to the team, but this is never going to happen in a phony deadline case. People don’t like unnecessary pressure and they know better than to believe everything will end for them if the project will not be ready by a certain arbitrary date.

V. What techniques do the best managers use in order to create good team dynamics?

Like we saw earlier, there is no recipe for unquestionable success when we are talking about ‘jelling’ teams together. But besides the aforementioned things we must avoid, let’s talk about some technique the best leaders are using:

1. Not praising overtime

Most managers have at least a suspicion that overtime doesn’t help, that projects that work a lot of overtime are not much of a credit to their managers’ skills and talents. Not every co-worker will work overtime, and thus, in time, resentments are inevitable inside a team. This is why the managers must avoid praising overtime in order to keep a good team dynamic.

We don’t work overtime so much to get the work done on time as to shield ourselves from blame when the work inevitably doesn’t get done on time.

Jerry Weinberg – consultant and author

2. Replace unhealthy competition with peer-coaching inside a team

A little competition, just for fun, that will help in speeding things up and accumulate more knowledge is fine, but inside a high performing team, every co-worker must be comfortable being both a coach and a trainee. There is no gain in having your teammates compete for positions or recognition while working on the same goal.

When you observe a well-knit team in action, you’ll see a basic hygienic act of peer-coaching that is going on all the time. Team members sit down in pairs to transfer knowledge. When this happens, there is always one learner and one teacher. Their roles tend to switch back and forth over time with, perhaps, A coaching B about TCP/IP and then B coaching A about implementation of queues. When it works well, the participants are barely even aware of it. They may not even identify it as coaching; to them, it may just seem like work.

3. Create opportunities for (not necessary work related) small victories as a team

How does grill and games with your team in the countryside sounds like for next Saturday? Or a team night out in an escape house followed by (trying to cook) a spaghetti dinner? A natural manager has got a subconscious feel for what’s good for the team and this feel governs decisions throughout the project. An entire experience like the ones presented above is organized for small, easy, joint successes. You have to look twice to see the manager’s hand in any of this; it just seems to be happening.

A small victory (like a cooking challenge for example) can help “jell” the team

The common thread is that good managers provide frequent easy opportunities for the team to succeed together. The opportunities may be tiny pilot subprojects, or demonstrations, or simulations, anything that gets the team quickly into the habit of succeeding together.

The best success is the one in which there is no evident management, in which the team works as a genial aggregation of peers. The best boss is the one who can manage this over and over again without the team members knowing they’ve been “managed.”

These bosses are viewed by their peers as just lucky. Everything seems to break right for them. They get a fired-up team of people, the project comes together quickly, and everyone stays enthusiastic through the end. These managers never break into a sweat. It looks so easy that no one can believe they are managing at all.

Tom DeMarco & Timothy Lister – Peopleware

4. Know when and how to interact with the team as a manager

As a manager, you may have convinced yourself that you ought to be the principal coach to the team or teams that report to you. That certainly was a common model in the past, when high-tech bosses tended to be proven experts in the technologies their workers needed to master. Today, however, the typical team of knowledge workers has a mix of skills, only some of which the boss has mastered. The boss usually coaches only some of the team members, because nowadays it is the team members themselves who provide most of the coaching.

If you’ve got decent people under you, there is probably nothing you can do to improve their chances of success more dramatically than to get yourself out of their hair occasionally. Any easily separable task is a perfect opportunity. There is no real management required for such work. Send them away. Find a remote office, hire a conference room, borrow somebody’s summer house, or put them up at a hotel. Take advantage of off-season rates at ski areas or at beaches. Have them go to a conference, and then stay over for a few days to work together in peace. (We’ve heard of at least one instance of each of these ploys.)

Tom DeMarco & Timothy Lister – Peopleware

In the best organizations, there is a natural authority working in all directions. The manager is known to be better at some things, perhaps setting general directions, negotiating, and hiring, and is trusted to do those things. Each of the workers is known to have some special area of expertise, and is trusted by all as a natural authority in that area. Managers should do their best to make a cult of quality and protect the successful teams, but they should provide strategic, not tactical direction.

On the best teams, different individuals provide occasional leadership, taking charge in areas where they have particular strengths. No one is the permanent leader, because that person would then cease to be a peer and the team interaction would begin to break down. The structure of a team is a network, not a hierarchy. For all the deference paid to the concept of leadership (a cult word in our industry), it just doesn’t have much place here.

If you could effect some change in the people you manage and make them much more productive and goal-directed but also less controllable, would you do it?

The answer to the above question distinguishes the great managers from the merely mediocre. The mediocre manager is too insecure to give up the trappings. The great manager knows that people can’t be controlled in any meaningful sense anyway. The essence of successful management is to get everyone pulling in the same direction and then somehow get them fired up to the point that nothing, not even their manager, could stop their progress. A decent coach understands that his or her job is not to coordinate interaction, but to help people learn to self-coordinate.

When you over-coordinate the people who work for you, they’re all too likely to under-coordinate their own efforts. But self-coordination and mutual coordination among peers is the hallmark of graceful teamwork. Watch a decent fast break in basketball or in hockey, and now imagine how it would work if every pass could only happen if and when the coach gave the signal from the sideline.

Tom DeMarco & Timothy Lister – Peopleware

5. Create a community

An organization that succeeds in building a satisfying community tends to keep its people. When the sense of community is strong enough, no one wants to leave. The investment made in human capital is thus retained, and upper management finds itself willing to invest more. When the company invests more in its people, the people perform better and feel better about themselves and about their company. This makes them still less likely to move on, so you can create a win-win situation.

Of course, even the best sense of on-the-job community doesn’t assure that you will keep all your people forever. Some will know they have to leave to advance their own careers or for whatever other reason. However, when people do leave such an organization, they tend to time their departures to minimally inconvenience the community. This is an extraordinary help to anyone doing project work, since it means that workers are unlikely to leave during the project. This effect alone, of departing only at project end, is worth more than all the process improvement your organization is likely to make over the next decade.

Creating software tournaments inside the company is just one idea that can be used in this scope (the authors give a detailed description about how it should be organized in the War Games chapter of the book, page 226).

VI. The next level: Strategies than can improve the effectiveness of a software organization

With time, many managers will begin to think a bit bigger. They have done their job well: they have created a lot of successful and happy teams, they have concluded many projects, they have learned a lot throughout the years, both technically and from a leadership perspective. Now is the time to think about improving the ways the organisation works: what can you do to make a serious impact, improve the quality of life for all the people working there, introduce new tactics for effectiveness that at first glance may seem counter-intuitive and find a deeper meaning in the work that you are doing. Thinking about and applying this things will probably also bring a big promotion. So, what would be some examples to focus on now?

A. The importance of middle management

Flattening the org. chart by gutting middle management is a sure recipe for decreased learning. But the converse is not necessarily true: holding on to middle management doesn’t, by itself, make learning more likely to prosper. There is another ingredient required for that, one that is seldom evaluated properly and almost never cultivated: in order for a vital learning center to form, middle managers must communicate with each other and learn to work together in effective harmony.

This is an extremely rare phenomenon. Almost all companies have something they call the Management Team, typically made up of middle-management peers. As we observed earlier, applying the word team to a group doesn’t assure that it will have any of the characteristics of a team. It may still be a poorly knit collection of individuals who have no common goals, common values, or blended skills. This is usually the case with most so-called management teams. To make matters worse, they don’t have the one thing that any team needs in order to jell: common ownership of the work product. Anything that gets accomplished in such a group is likely to be the accomplishment of one of its members, not the group as a whole. The more competitive the managers are, the more pronounced this effect.

It is completely non-efficient to have the middle management members sit together regularly at status meetings, taking turns talking to the upper manager but having little to do with each other. The most likely learning center for any sizable organization is the white space that lies between and among middle managers. If this white space becomes a vital channel of communication, if middle managers can act together as the re-designers of the organization, sharing a common stake in the result, then the benefits of learning are likely to be realized. If, on the other hand, the white space is empty of communication and common purpose, learning comes to a standstill. Organizations in which middle managers are isolated, embattled, and fearful are nonstarters in this respect.

Create communities of practice and special meetings where the lower and middle management can benefit from sharing the knowledge. Leadership and management training should not stop for an employee once he receives his first managerial position.

B. Introduce a bit of chaos – pilot projects

We need time for innovation. Many products from renowned companies like Google started as a pilot or a side-gig of an employee (Google employees can work 20% of their time on what they think will most benefit the company).

A pilot project is one in which you set the fat book of standards aside and try some new and unproved technique. The new technique will be unfamiliar initially, and so you can expect to be inefficient at the start in applying it. This is a cost of change. On the other side of the ledger is the improvement in productivity gained from using the new technique.

Tom DeMarco & Timothy Lister – Peopleware

Also on the plus side of the ledger is the Hawthorne Effect, the boost in energy and interest that infuses your people when they’re doing something new and different. Are these two pluses likely to outweigh the minus caused by the learning curve? Not always, but the nature of the change introduced matters a lot, as do the length of the project, the capability of the staff members, and the extent to which people believe in the technique they’re trying out. The pilot projects that try out any modified approach tend toward higher-than-average net productivity. That means you’re likely to spend less money on a given project if you choose to run it as a pilot project with some new technique.

One caveat about pilot projects: Don’t experiment with more than one aspect of development technology on any given project. For all the talk about the importance of standards, it’s surprising how often managers abandon all standards on the rare project that is designated a pilot. They often try out new hardware, new software, new quality control procedures, matrix management, and new prototyping techniques, all on the same project.

C. How to win against freelancing

In our grandparents’ generation, work was usually structured rigidly within a corporate context: You worked for a company, and you punched a clock or kept regular hours. You received a paycheck, same this week as last. Those above you in the hierarchy were treated with respect and deference and it didn’t seem like a life’s work you were embarked upon—it seemed more like a job. Things have changed.

It’s hardly hot news these days that lots of our peers are working as freelancers. They contract their time by the day, week, or even years for programming or design work or, sometimes, even management. There are agencies that specialize in connecting these independents with organizations that need their talents. Some of the most staid companies and institutions find themselves doing business with independents. They might prefer to hire their own people rather than deal with contractors and freelancers, but what can they do? It’s always a seller’s market for expert services.

They end up doing business with dozens of little organizations with names like William Alonzo & Associates (there are no associates, just Bill) or the Fat City Smarts Company. Some of the folks they have to work with are positively flaky: they want to work when they want to work, perhaps doing one project and then taking off two or three months to go skiing. Erghhh! How unprofessional.

Tom DeMarco & Timothy Lister – Peopleware

If you’re a Captain of Industry, the freelancing phenomenon can be more than a little upsetting. Not only are those entrepreneurs inclined to be uppity, they are a terrible example to your employees, because freelancing seems to bring some advantages: more freedom, more time off, more choice of work, they seem to be having more fun and they often make more money. So, how should we fight to keep the professionalism and commitment required to do serious work?

First there are the classical benefits of working inside a company: the trainings, the continual learning of new technologies from expert colleagues form the team or through communities of practice, learning social skills, the possibility to be mentored for a leadership position and other benefits provided by companies. But those who choose to become freelancers may not be really invested in the benefits described above, what they want is something different: freedom.

The alternative that can be offered in this case is a position with loosely stated responsibilities so that the individual has a strong say in defining the work. The charter might read, “Investigate new methods for the twenty-first century,” or “Put together a new and exciting training sequence,” or “Design an ideal workstation complex for developers.” In extreme cases, the charter is a blank check – if your corporation is fortunate enough to have a self-motivated super-achiever on board, it’s enough to say, “Define your own job.”

These workers can be characterized as “free electrons,” since they have a strong role in choosing their own orbits. The trend to create an increasing number of free electrons positions is more than just a response to the threat of the cottage industry (another term for freelancing used by the authors). The reason there are so many gurus and fellows and intrapreneurs and internal consultants in healthy modern companies is quite simply that companies profit from them. The people in these positions contribute disproportionately to the organizations that employ them. They are motivated to make the positions created for them pay off for their companies.

If the wannabe freelancer is not interested in this kind of position either, then he can not be relied upon and probably working in a company is not right for him or the company either.

D. The most important thing you can realize as a leader

Constantly doing great work (either by yourself or through the coordination of the teams you are part of) will probably bring you a lot of joy and fulfillment. But maybe there are some things you can do for the people you work with that are even bigger than everything we said so far, things that will make you feel very proud when you will be an accomplished retired old man looking back on your long and illustrious career. Here is an example from the book:

One enterprising manager stepped in and changed the culture forever. This catalytic genius persuaded the organization to build itself around a school. The school is made up of a day-care and preschool center, plus classes for kindergarteners through fifth graders. The school is for the children of employees. No doubt you can see the dollars-and-cents rationale for this, the unique advantage the company gained for hiring programmers and engineers in a tight market. But you’d have to walk through the company to see what the school does for community. You’d have to be there for that moment every afternoon when the teachers lead the entire student body through the whole facility. They make up a noisy, funny, triumphantly silly parade of little kids whooping it up and saying hello to everyone. You can hear them coming a mile away. All work pauses for the procession. There are lots of hugs. When it’s over, everyone feels great.

Tom DeMarco & Timothy Lister – Peopleware

Imagine having been the person responsible for that (the work will not be completed by you alone, but you can be the catalyst). Imagine having that to look back at from the age of a hundred and one (probably delivering on time version .20 of a specific product will not bring the same kind of emotional and fulfilling memory).

VII. Conclusion

Peopleware teaches us a lot about the management of a software company, touching almost every aspect of this business like: fighting corporate entropy, defeat teamicidal tendencies, put more quality into the product (even if time doesn’t permit), repeal Parkinson’s Law, loosen up formal Methodologies, raise your E-Factor, open your kimono, architectural and environmental advice and a host of other things.

I personally learned a lot from reading this book and I think it is a must read for every (aspiring) leader in the software industry. You can literally see and understand why the companies who follow the practical advice described are profitable and successful. The authors have a lot of experience in this domain and they interviewed leaders and employees of more than 500 software companies throughout the decades to see what works and what doesn’t, making this a 100% must read for any software manager, because it offers solid advice for both lower and upper management.

1 thoughts on “Peopleware by Tom DeMarco & Timothy Lister – How to successfully lead in the software industry – leadership book review

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.