How to be successful in software

Observation - these two conditions must be met for a software company to be successful:

1. Engineering trusts Product Management.

2. Engineering believes Product Management to be competent.

Engineering and Product Management trust each other, and each believes the other to be competent.

Note:

  • The actual product managers aren’t necessarily the people who have that title on their business card.

Revised (2007-10-05): On reflection, I think it’s important to emphasize the reciprocal nature of the trust relationship.

Comments

:)

:)

Astute comment: “The

Astute comment: “The actual product managers aren’t necessarily the people who have that title on their business card.” I’ve seen that many times (in fact, in some of the same places where Keith has seen it). :)

The most effective product management I’ve experienced is where a group of competent and cooperative people with different knowledge sets (technology, industry, marketing) figure out consensually what a product should be. The formal “Product Manager” is merely responsible for gathering that consensus and then making sure that the subsequent work matches the plan.

Balance seems to me to be a key factor in this style of product management. That is, technological challenges must be balanced against market requirements, market requirements must be balanced against customer acceptance. When any of the areas are dominant (as opposed to balanced), you end up, for example, with products that are over-engineered but under-attractive to the market, or with feature requirements that are too ambitious and beyond the organization’s technical capabilities.

When any of the areas are

When any of the areas are dominant (as opposed to balanced), you end up, for example, with products that are over-engineered but under-attractive to the market, or with feature requirements that are too ambitious and beyond the organization’s technical capabilities.

Yeah, totally agree. A delicate balance.

And thinking about it more, the converse is probably also true - PM needs to trust Engineering. I’m sure there are situations where Engineering holds the product hostage, and PM isn’t able to do their job. But of course I’ve always been in the Engineering camp so it’s harder to see when this is happening.