Better Productivity through Collaboration

In the course of their 20+-year engineering careers, authors Brian Fitzpatrick and Ben Collins-Sussman have picked up a treasure trove of wisdom and anecdotes about how successful teams work together. Their conclusion? Even among people who have spent decades learning the technical side of their jobs, most haven’t really focused on the human component. Learning to collaborate is just as important to success. If you invest in the "soft skills" of your job, you can have a much greater impact for the same amount of effort.

The authors share their insights on how to lead a team effectively, navigate an organization, and build a healthy relationship with the users of your software. This is valuable information from two respected software engineers whose popular series of talks—including "Working with Poisonous People"—has attracted hundreds of thousands of followers.

Brian W. Fitzpatrick

Brian Fitzpatrick is Founder and CTO of Tock. Brian started Google’s Chicago engineering office with Ben in 2005 and led several of Google’s global engineering efforts, including the Data Liberation Front, and Transparency Engineering. He also served as internal advisor for Google’s open data efforts, having previously led the Google Code and Google Affiliate Network teams. Prior to joining Google, Brian worked as an engineer at Apple, CollabNet, and a local Chicago development shop.

Brian has written numerous articles and given dozens of presentations, including cowriting Team Geek: A Software Developer’s Guide to Working Well with Others, Version Control with Subversion (now in its second edition), and chapters for Unix in a Nutshell and Linux in a Nutshell.

Brian has an A.B. in Classics from Loyola University Chicago with a major in Latin, a minor in Greek, and a concentration in Fine Arts and Ceramics. He resides in Chicago.

Ben Collins-Sussman

Ben Collins-Sussman was one of the founding developers of the Subversion version control system. He cofounded Google’s engineering office in Chicago, launched Google Code, led two display advertising teams, and now manages teams that power Google’s search infrastructure. He’s currently the engineering Site Lead for Google Chicago, but also collects hobbies—including authoring interactive fiction, playing bluegrass banjo and jazz piano, composing musicals, operating ham radios, and exploring photography. Ben is a proud native of Chicago and holds a Bachelor of Science from the University of Chicago with a major in Mathematics and minor in Linguistics. He still lives in Chicago with his wife, kids, and cats.

  • Chapter 1: The Myth of the Genius Programmer

    1. Help Me Hide My Code

    2. The Genius Myth

    3. Hiding Is Considered Harmful

    4. It’s All About the Team

    5. The Three Pillars

    6. HRT in Practice

    7. Next Steps

  • Chapter 2: Building an Awesome Team Culture

    1. What Is Culture?

    2. Why Should You Care?

    3. Culture and People

    4. Communication Patterns of Successful Cultures

    5. High-Level Synchronization

    6. Day-to-Day Discussions

    7. Using an Issue Tracker

    8. Communication as Part of Engineering

    9. It Really Is About Your Product, After All

  • Chapter 3: Every Boat Needs a Captain

    1. Nature Abhors a Vacuum

    2. Manager Is a Four-Letter Word

    3. The Servant Leader

    4. Antipatterns

    5. Leadership Patterns

    6. People Are Like Plants

    7. Intrinsic Versus Extrinsic Motivation

    8. Final Thoughts

  • Chapter 4: Dealing with Poisonous People

    1. Defining “Poisonous”

    2. Fortifying Your Team

    3. Identifying the Threat

    4. Repelling the Poison

    5. A Final Thought

  • Chapter 5: The Art of Organizational Manipulation

    1. The Good, the Bad, and the Strategies

    2. How Things Ought to Be

    3. How Things Usually Are

    4. Manipulating Your Organization

    5. Plan B: Get Out

    6. All Is Not Lost

  • Chapter 6: Users Are People, Too

    1. Managing Public Perception

    2. How Usable Is Your Software?

    3. Design Matters

    4. Managing Your Relationship with Users

    5. Remember the Users

  • Appendix : Epilogue

    1. #### A Final Thought
  • Appendix : Further Reading