I remember the day I started working as a program manager on the Internet explorer team. On my second day, Joe Belfiore, my boss, came to my office, closed the door, and told me two things:
1. Your relationship with programmers is everything
2. There are only two teams at Microsoft to care about, Windows and Office.
Forget for a moment these specific points. Joe did the most important thing in the world as a boss. He gave me clear priorities. Even if they were wrong, from day one (ok, it was day two) he imparted his private view of how to succeed and how to make sense of things. It was amazingly empowering. I could slice through all of the work being thrown at me from across the team and the company, and divide into two neat piles: a) things to care about, b) things not to care about. Joe was a great boss and provided this kind of clarity all the time.
It turns out both bits of advice were right.
Your relationship with programmers is everything
As a program manager (glorified title for project manager), all of my power actually came from the programmers. I only had a job because of the programmers. No programmers means no code, no product, no revenue. End of story.Â My power was an extension of theirs. I had to treat them with respect and go out of my way to earn their trust over time.
This meant first and foremost I had to earn their respect. Help them make decisions. Bulldoze organizational road blocks out of their way. Prove I was smart, that I could help them make tough decisions, and could make the product much better even though I couldn’t write code as well as they could. And only after establishing that value could I be a team leader and be of true use to the project. With programmers as allies, working with marketers, testers, executives, or leaders of other teams, became easier, and my role as a team leader became possible.
When I visit companies or talk to people, and they tell me they rarely talk to the programmers, a red flashing light goes off in my head. How on earth do you have any power? I wonder. You don’t know the people who actually make the thing you are managing! You have no idea if they believe in what they are doing or not, or if they have better ideas than yours.Â Something critical is broken if project managers don’t have collaborative and trusting relationships with programmers.Â If there is a problem between PMs and programmers, it’s the PMs job to fix it. Odds are they’re better at communication, conflict resolution and have more perspective, all of the key skills for resolving differences and building relationships.Â Put another way: if you’re a PM and your team hates you, what else do you have? Your relationship with your team is everything.
There are only two teams at Microsoft to care about, Windows and Office.
Back in 1995 when Joe gave me this advice, it was true. There were only two groups at Microsoft that were successful and brining in sizable revenue.Â The problem was working on Internet Explorer during the browser wars, every one of the 100 teams in the company wanted something from me, and every other PM on the team. They wanted us to add features to help promote their work, code changes to fix bugs that bothered them, etc. There was a huge pile of people who wanted to influence the work I managed. My phone rang all the time and my inbox was always full. If I treated everyone equally I’d be doomed. Couldn’t be done. I had to ignore, or say no to, most of the people who wanted something from me. With Joe’s advice I had a rough guide for sorting it out. Tons of exceptions of course, but the baseline advice was right and useful.
Good managers give these little bits of power insight all the time. Dividing up the complex, stressful working world of projects into two piles.Â A project manager derives his power from this kind of clarity, especially if he can articuate it to others like Joe did to me.