Daniel Philpott: Herding Tigers — Software Development and the Art of War
He’s been a manager for a long time. He’s built systems for the DOD, worked
for CitiBank, ticketmaster, cisco, etc. Now he’s working for AT&T interactive,
and they’re putting up with him.
Why is software development so difficult? Because people don’t admit the
truth — they’re afraid — people don’t know what the end result will be. Why
not? Change.
A tiger team is one answer to the problem. He manages them very little. They
are a team. QA is part of the team. Members show leadership, and self-improve.
Almost no meetings. QA people and Test automation from the beginning. Shared
psychology and intelligence in the group. Bold. Winning. Excellence — members
push each others. Not afraid of “the dark” — of not knowing where they’re
headed when they get started. They know clients don’t know what they want.
Who’s on a tiger team? All the staff needed to deliver a product. Leader, 4
devs, one AQA, doc, etc.
He doesn’t demand that tiger team members pair program. They can pair, swarm,
or whatever they want — “shared intelligence”.
Business is battle. The battlefield is the marketplace, and is typically
divided into attrition and maneuvering. GM, Home Depot are experiencing
attrition warfare, and it’s not useless. Maneuver warfare — eBay, mySpace —
people didn’t see them coming.
General Sherman lost 1% of his men in the Civil War. He decided he didn’t need
to fight the confederate army to stop slavery. Instead, he started burning
down plantations, and the confederates came running home. He saved lives.
Daniel grew up in the south and feels bad that he grew up hating Sherman.
General Patton decided that instead of fighting the Germans in Normandy, he’d go
around them, up the Rhine, and attack them from behind.
Speed adds job satisfaction, excitement. Time flies when you’re having fun.
When you’re having fun, time flies. Speed builds credibility.
A cow is twice the size of a tiger, so which of the two wins? The one with
speed. Are you using agile terms to describe a non-agile process? It’s the
difference between cows and tigers: A cow in tiger’s clothing.
Leadership makes or breaks a tiger team. Faith in your team is critical. Gotta
love your battle buddies. Need to hope. If you have no hope, you might as well
find a new job.
Success belongs to the team. Fear belongs to the leader. No finger pointing —
the buck stops here.
“I have fear, but I do it anyway”.
Be a listener and a learner. He, as a leader, asks his teams what he can do to
make their jobs better. He protects his team from outside stupid influences.
Discussed U.S. Marines management techniques. Reward failure, which seems
counter intuitive — which means he thanks people for their efforts — not
that he gives gift certificates, but he will give them a drink. No failure
means no progress. Glorify the grunts — your programmers and QA people are
extremely important. Be polite and professional — no poison in the team.
Agile isn’t a methodology, it’s a mindset. And it’s inevitable.
Don’t get too attached to your code, because we’re going to rip it out.
Recommends a book called “warfighting” from the marines. You can buy it on
Amazon.