One Minute Bottom Line
|Managing the Unmanageable should rank up there with the Mythical Man Month as required reading for aspiring managers of software development teams. Mantle and Lichty make a compelling case for why managing software developers requires different methods from managing other types of teams. The authors also make some, at times, uncomfortably accurate generalizations about the different types and levels of programmers as well as give insights on how best to motivate and inspire them without burning them out. This book is a very good read that I recommend all software managers, project managers and lead developers read.
We software developers are an odd bunch. I can say that as I’ve been one for over a decade. We have our personality quirks; are fiercely independent and can be insanely proud of the ugliest code we can write. Managing software developers, so I’m told, are very much like herding cats.
The authors of Managing the Unmanageable share their experiences and techniques managing high-performing software teams at some of the biggest companies in the country. They share what’s worked, what’s hasn’t and why developers are, in general, a strange bunch. They highlight the differences between client, server, database, web and other programmers as well as the different levels, such as system engineers, system programmers and application programmers. Also, Mantle and Lichty document some of the challenges with managing remote developers, including off-shore teams.
The first two chapters highlights the differences between different classification and levels of developers. Chapter 3 is devoted on how to hire developers and Chapter 4 is on how to integrate new developers into an existing team. The remaining chapters are devoted to managing software developers.
Personally, I found the modifications that Mantle and Lichty made to the Herzberg Motivation and Hygiene theory (Chapter 7) to apply to software developers both interesting and very accurate. All in all, this is a very good book for understanding, motivating and managing software developers.