Synopses & Reviews
“Mantle and Lichty have assembled a guide that will help you hire, motivate, and mentor a software development team that functions at the highest level. Their rules of thumb and coaching advice are great blueprints for new and experienced software engineering managers alike.”
—Tom Conrad, CTO, Pandora
“I wish I’d had this material available years ago. I see lots and lots of ‘meat’ in here that I’ll use over and over again as I try to become a better manager. The writing style is right on, and I love the personal anecdotes.”
—Steve Johnson, VP, Custom Solutions, DigitalFish
All too often, software development is deemed unmanageable. The news is filled with stories of projects that have run catastrophically over schedule and budget. Although adding some formal discipline to the development process has improved the situation, it has by no means solved the problem. How can it be, with so much time and money spent to get software development under control, that it remains so unmanageable?
In Managing the Unmanageable: Rules, Tools, and Insights for Managing Software People and Teams , Mickey W. Mantle and Ron Lichty answer that persistent question with a simple observation: You first must make programmers and software teams manageable. That is, you need to begin by understanding your people—how to hire them, motivate them, and lead them to develop and deliver great products. Drawing on their combined seventy years of software development and management experience, and highlighting the insights and wisdom of other successful managers, Mantle and Lichty provide the guidance you need to manage people and teams in order to deliver software successfully.
Whether you are new to software management, or have already been working in that role, you will appreciate the real-world knowledge and practical tools packed into this guide.
Review
“Managing the Unmanageable is a well-written, must-have reference book for anyone serious about building sustainable software teams that consistently deliver high-quality solutions that meet expectations. It is loaded with incredibly useful and practical tips and tricks to deal with real-life situations commonly encountered by software managers anywhere in the world. It tearlessly peels back the onion layers of the process of managing software developers—whether a handful of co-located programmers or thousands dispersed across the world—through a balance of battle-tested approaches and keen understanding of the various personalities and backgrounds of software team members. Finally, a book on software engineering that focuses on the manager’s dilemma of making a team of programmers work efficiently together. Every single software manager should have it on their bookshelf.”
—Phac Le Tuan, CTO, Reepeet, and CEO, PaceWorks
“Becoming a great engineering leader requires more than technical know-how; Ron and Mickey’s book provides a practical cookbook for the important softer side of engineering leadership, which can be applied to any software development organization.”
—Paul Melmon, VP of Engineering, NICE Systems
“EXCELLENT. Well-structured, logical, filled with great personal color and many little gems. You guys have done a great job here. Terrific balance between theory and practice, rich with info.”
—Joe Kleinschmidt, CTO and cofounder, Leverage Software
“I started reading the nuggets section and it took fewer than four pages to improve my thinking. What struck me about the nuggets was that I could sense the genesis of this book: two masters of their craft learning from each other. Most books feel like a teacher describing a sterile version of what ‘ought to be done’ that leaves you wondering, ‘Will this work in the “real world”?’ Reading the nuggets felt like the sort of guidance that I would get from a trusted mentor. A mentor who I not only trusted, but one who trusted me to take the wisdom, understand its limits, and apply it correctly. It’s concentrated like a Reader’s Digest for technical management wisdom.”
—Mike Fauzy, President and CTO, 1stMediCall LLC
“Managing the Unmanageable is a great collection of sometimes-obvious and sometimes-not-obvious guidance for software managers. I wish that I had had this book when I first started managing teams, and it still is illuminating. For programmers who step into management, the hardest thing is to learn the soft skills. Ron and Mickey do a great job of illustrating not just the why but also the how.”
—Bill Hofmann, Vice President of Engineering, Klamr.to
“Unique dialogue around the human aspects of software development that is very much overdue.”
—Mark Friedman, CEO and founder, GreenAxle Solutions
“. . . [W]hat to do on the new employee’s first day of work seems unique and very helpful!”
—Steven Flannes, Ph.D., Principal, Flannes & Associates
“The book provides insight to a unique group of people: programmers. Companies around the planet have and are still struggling with how to best develop software products. Managing programmers is at the heart of developing software products successfully. Many project and organization leaders are ill-equipped to deal with programmers and software development in general. I think this book can bring insight to leaders of software organizations and help them understand and even get inside the head of programmers and therefore be more effective leaders.”
—Michael Maitland, CEO (geek-in-charge), WhereTheGeeksRoam
“I have enjoyed reading the book very much, and I wish I had it ten years ago—probably would have saved me from making certain mistakes. A lot of what I read is not new to me, but I have never seen so much relevant material assembled in one book. The book was just what I needed. I already feel that I’ve benefited from it.”
—David Vydra, Continuous Delivery Advocate and Software Craftsman, TestDriven.com
“I am finding the reading helpful to me right now—it has heightened my sensitivity to staff, even having managed for decades.”
—Margo Kannenberg, Assistant Director, Application Development, HighWire Press
“Mickey was my manager in my first role as programming manager. His real-world, pragmatic, hands-on guidance was a profound positive influence on everything I’ve ever done with management since. His is still my go-to advice as I develop and mentor managers. I’m pleased that he’s taken the time to canonize it in this book so that many more new and experienced managers can benefit from it.”
—H.B. Siegel, CTO, IMDB.com (a wholly owned subsidiary of Amazon)
“I just wish that I had this book when I started as a first-time manager five years ago!”
—Kinnar Vora, VP, Product Development & Operations, Sequoia Retail Systems
“Mantle and Lichty cut through abstract principles and present proven techniques that can increase the effectiveness of software development organizations. It deserves a place on the real (or virtual) bookshelf of every software manager who wants to build an outstanding development team and create a culture where everyone enjoys coming to work. It’s especially valuable in telling managers what not to do, and how to address the inevitable problems that affect all organizations.”
—Anthony I. (Tony) Wasserman, Professor of Software Management Practice, Carnegie Mellon University—Silicon Valley; ACM Fellow; and IEEE Life Fellow
“Mickey was there on Long Island in the mid-1970s when the group now known as Pixar first formed, delivering successful software products then, and was still doing so, as manager, almost two decades later at Pixar itself. He knows what he’s talking about.”
—Alvy Ray Smith, cofounder of Pixar
“Ron and Mickey clearly understand how important it is for programmers to work on projects that make a difference and how essential it is for managers to create and foster a unique and innovative culture.”
—Kathy Baldanza, VPE, Perforce Software
“This book is a treasure trove of real-world experiences that will make you a more effective software development manager.”
—Chris Richardson, founder of the original CloudFoundry.com, and author, POJOs in Action
Synopsis
In most software organizations, large and small, programmers often are promoted to management positions with no real background or training in how to manage people or teams of people. Managing the Unmanageable is the guidebook they desperately need. In this book, two world-class software team managers and consultants distill their remarkably extensive experience into practical, actionable advice. Drawing from over 70 years of combined experience overseeing the development of a wide range of products, the authors share rules of thumb, nuggets of wisdom, and practical tools they wish they'd had when they started. They offer frontline managers practical guidance and helpful arguments for getting buy-in from programmers who were until recently their peers - and getting the resources and time they need from skeptical CxO level executives. Above all, the authors help managers understand the programmers they supervise, and use this understanding to hire, manage, motivate, and shape a culture that delivers excellence.
Synopsis
“Mantle and Lichty have assembled a guide that will help you hire, motivate, and mentor a software development team that functions at the highest level. Their rules of thumb and coaching advice are great blueprints for new and experienced software engineering managers alike.”
—Tom Conrad, CTO, Pandora
“I wish I’d had this material available years ago. I see lots and lots of ‘meat’ in here that I’ll use over and over again as I try to become a better manager. The writing style is right on, and I love the personal anecdotes.”
—Steve Johnson, VP, Custom Solutions, DigitalFish
All too often, software development is deemed unmanageable. The news is filled with stories of projects that have run catastrophically over schedule and budget. Although adding some formal discipline to the development process has improved the situation, it has by no means solved the problem. How can it be, with so much time and money spent to get software development under control, that it remains so unmanageable?
In Managing the Unmanageable: Rules, Tools, and Insights for Managing Software People and Teams , Mickey W. Mantle and Ron Lichty answer that persistent question with a simple observation: You first must make programmers and software teams manageable. That is, you need to begin by understanding your people—how to hire them, motivate them, and lead them to develop and deliver great products. Drawing on their combined seventy years of software development and management experience, and highlighting the insights and wisdom of other successful managers, Mantle and Lichty provide the guidance you need to manage people and teams in order to deliver software successfully.
Whether you are new to software management, or have already been working in that role, you will appreciate the real-world knowledge and practical tools packed into this guide.
About the Author
Mickey W. Mantle has been developing software for more than forty years, as a software and hardware product creator, manager, and executive for companies that include Evans & Sutherland, Pixar, Broderbund, and Gracenote. He currently writes, develops mobile/tablet applications, and consults with a variety of companies and organizations regarding the management of software people and teams.
Ron Lichty has been developing software for thirty years, most of them as a programming manager, director of development, and vice president of products and engineering for companies that include Apple, Fujitsu, Razorfish, and Schwab. He has written four books and hundreds of articles. He consults with startups and companies large and small to unravel the knots in software development and make it hum.
Table of Contents
Preface xxi
About the Authors xxvii
Chapter 1: Why Programmers Seem Unmanageable 1
What Do Programmers Do? 3
Why Is Becoming a Successful Programming Manager Hard? 7
Chapter 2: Understanding Programmers 9
Programming Disciplines 10
Types of Programmers 13
Domain Expertise 16
Programmer Job Requirements and Abilities 17
Proximity and Relationship 20
Generational Styles 25
Personality Styles 27
Summary 33
Tools 34
Chapter 3: Finding and Hiring Great Programmers 35
Determining What Kind of Programmer to Hire 37
Writing the Job Description 39
Selling the Hire 45
Recruiting Full-Time Employees (FTEs) 46
Recruiting Contractors 56
Reviewing Résumés 57
Narrowing the Field 59
Preparing to Interview 60
Interviewing 67
Making the Decision to Hire a Programmer 72
Making the Right Offer to a Programmer 76
Follow Up Until the Programmer Accepts 82
Summary 83
Tools 83
Chapter 4: Getting New Programmers Started Off Right 84
Get Them on Board Early 85
Preparing for Their Arrival 86
First-Day Musts 87
Introductions 91
Ensuring Success 92
Initial Expectations 95
Summary 98
Tools 98
Chapter 5: Becoming an Effective Programming Manager: Managing Down 99
Earning Technical Respect 100
Hire Great Programmers 105
Turbocharge the Team You Have 105
Managing Different Types of Programmers 106
Facilitation 111
Protection 111
Judging and Improving Performance 113
Organizational Thinking 123
Deliver Results and Celebrate Success 141
Summary 142
Tools 142
RULES OF THUMB AND NUGGETS OF WISDOM 143
The Challenges of Managing 147
Managing People 173
Managing Teams to Deliver Successfully 203
Chapter 6: Becoming an Effective Programming Manager: Managing Up, Out, and Yourself 227
Managing Up 228
Managing Out 234
Managing Yourself 250
Summary 268
Tools 268
Chapter 7: Motivating Programmers 269
Motivational Theories 269
Motivational Factors as Applied to Programmers 274
Putting Theory into Practice 279
Foundational Factors—Causes of Dissatisfaction (When Lacking) 280
Key Motivating Factors 303
Personal Commitment 312
Technology Offense and Defense 314
Understanding Your Programmers’ Motivations
Begins on Day One 316
Summary 317
Chapter 8: Establishing a Successful Programming Culture 318
Defining “Successful” 319
The Programming Culture 319
Company Culture 320
Characteristics of a Successful Programming Culture 327
Summary 346
Tools 346
Chapter 9: Managing Successful Software Delivery 347
Defining the Project 348
Planning the Work 358
Kicking Off the Plan 370
Executing the Work 376
Running the End Game 391
Delivering the Software 396
Summary 401
Tools 402
TOOLS 403
Index 407