So a topic came up this week that has been a subject of debate for as long as I've been a PM surfaced. How much domain knowledge does a PM need to be successful? Does a PM over a .net shop need to have programming experience in .net? Or can any PM be successful on any project?
I think the reality is somewhere in between. A technology PM wouldn't be effective at building a bridge, but a good technology PM could run most technology projects successfully. One reason is that all projects are, by definition, unique. Having a specific set of skills will help, but the PM is going to be learning on the job as well.
This highlights one of the skills I think is important for a PM, being able to learn quickly. How well can you figure out what's new and unique about your project and how quickly can you apply your experience to this new situation? The term "hit the ground running" applies here. I may not have done .net projects before, but I have done J2EE, so I have a point of reference to learn what I need to know about .net.
How can a PM get good at hitting the ground running? One key is having a thirst for knowledge. Catching up on the latest technology between projects or during slower periods. Going into every new engagement looking for learning opportunities. Not being afraid to ask questions of the experts. So what have you learned recently?