Becoming a Technical Leader
I've been a programmer for 25 years. Over the years I've seen many software projects fail and many times it wasn't an issue of failed technology or failed project management or crunch time stress, it was the result of poor leadership.
At the same time all successful software projects had one thing in common: a brilliant technical leader. Here's a quote from Warfighting:
Consequently, trust is an essential trait among leaders –trust by seniors in the abilities of their subordinates and by juniors in the competence and support of their seniors. Trust must be earned, and actions which undermine trust must meet with strict censure. Trust is a product of confidence and familiarity. Confidence among comrades results from demonstrated professional skill. Familiarity results from shared experience and a common professional philosophy.
How do you learn to be a technical leader? The same way you learn how to program: by watching the wizards to their magic and by reading the fine manual (RTFM).
Gerald M. Weinberg, the author of the seminal The Psychology of Computer Programming, wrote such a manual. Becoming a Technical Leader is a remarkably practical and profound book. Weinberg writes:
When we compared successful and unsuccessful systems, we quickly realized that almost all of the successes hinged on the performance of a small number of outstanding technical workers. Some of them were consistent sources of innovative technical ideas, some were interpreters of other people's ideas. Some were inventors, some were negotiators, some were teachers, some were team leaders. What distinguished them from their less successful colleagues was a rare combination of technical expertise and leadership skills. Today, we would say that they were high in innovation, but with sufficient motivational and organizational skills to use in making ideas effective.These leaders were not the pure technicians produced by the engineering and science schools, nor were they the conventional leaders trained in the schools of management. They were a different breed, a hybrid. What they shared was a concern for the quality of ideas. [...] We called them technical leaders.
Recommended reading list:
- The Soul of a New Machine by Tracy Kidder
- Peopleware by Tom Demarco and Timothy Lister
- Warfighting by U.S. Marine Corps Staff
- Software Craftsmanship by Pete McBreen

