I’ve been reading Joel Spolsky’s blog recently, going back through the archives, and I found this gem of a post from about a year ago:

How to be a program manager

What does a program manager do?

  1. Design UIs
  2. Write functional specs
  3. Coordinate teams
  4. Serve as the customer advocate, and
  5. Wear Banana Republic chinos

It is possible to be an effective program manager without being a coder, but the burden of earning the respect of the programming team will be higher.


How do you learn to be a Program Manager?

Mostly, becoming a program manager is about learning: learning about technology, learning about people, and learning how to be effective in a political organization. A good program manager combines an engineer’s approach to designing technology with a politician’s ability to build consensus and bring people together. While you’re working on that, though, there are a few books you should read:

As far as I can tell, Scott Berkun’s book Making Things Happen is the only book that’s been written that pretty much covers exactly what a program manager has to do, so start with that. Scott was a program manager on the Internet Explorer team for many years.

Another big part of the program manager’s job is user interface design. Read Steve Krug’s Don’t Make Me Think, then my own book User Interface Design for Programmers.

Finally, and I know it sounds cheesy, but Dale Carnegie’s 1937 book How to Win Friends & Influence People is actually a fantastic introduction to interpersonal skills. It’s the first book I make all the management trainees at Fog Creek read, before anything else, and they always snicker when I tell them to read it, and love it when they’re done.

Huh.

I’ve been having a big pity party over the past year and a half.

I’m too old.
I don’t have a degree.
I’ve got a crappy dead-end job.
I can’t get a real job without a degree.
I can’t afford to get a degree.

Anyway, what the hell could I do? In my 30 years of working for a living, I’ve not seen anything I really wanted to do. I’ve gotten involved in things like technical writing, involved to the point of forgetting to go home at the end of my work day — but I’d need a four-year degree to go anywhere with that. Back in college, I got involved like that with computer programming - but I’d need a four-year degree to go anywhere with that, too.

But that list — design UIs, write functional specs, coordinate teams, serve as a customer advocate - I could DO that! I could even wear Banana Republic chinos (although I usually buy Dockers).

I may look into becoming a software Program Manager. I’ve got “month-end” coming up next week at work, but after that, I’m going to pick up Scott Berkun’s book and see if being a Program Manager still seems like a good idea after reading that.

Leave a Reply