« Forty | Main | 07-07-07 »

July 02, 2007


In the last few months, I have heard the following from people inside Microsoft:

  1. Microsoft does a bad job with dependencies between groups; we need to stop treating them as adversarial I-win-you-lose situations where my backup plan is just a schedule hiccup away from being invoked, and instead commit both teams to succeed or fail together.
  2. Microsoft needs to stop developing products just because they are technologically cool; we need to think about whether a market exists for a product.
  3. Microsoft teams need to stop focusing only on a single competitor, and instead think about the customer experience as a whole; we can't display our organizational chart when the user puts in a flash memory card.

These are related; if you want to create a consistent experience across products then you have to take the customer's viewpoint, coordinate work between multiple groups, and not focus only on a specific competitor. And I agree to some extent with all of these. The problem is, at various times in our recent history, people have been adamant about proposing the opposite view. People who argue for the views above often flash a quick mea culpa smile about, "I was the worst offender back in the day, but now I've seen the light and reformed." But even today you could make reasonable arguments opposed to those:

  1. When you have a dependency, the other group may have different business goals and may fail to deliver for legitimate reasons; if you don't have a fallback plan then your customers will suffer due to internal Microsoft issue they care nothing about.
  2. Microsoft needs to be a technological leader; this has always been one of our strengths and we need to leverage it. If we wait for our customers to tell us what they want, we will never create new markets.
  3. When a competitor is laser-focused on a specific segment of the market, we need a Microsoft team that is also laser-focused on the same segment of the market; if we allow that team to be distracted by trying to integrate with other Microsoft teams, then our size winds up hurting us.

I think Microsoft goes through periods where we pick one or the other extreme of these. Cynically (but probably realistically), this depends on what competitor is foremost in our sights right now. When Google was kicking our tail in search, it seemed evident that out search needed to have some independence from the rest of MSN; when Apple ships a product like the iPhone, then connected experience jumps to the forefront. The problem for Microsoft is that we don't seem to have corporate DNA that keeps us proactively working one way or the other; we switch reactively. When you veer back and forth you wind up tuning your resources (your people, most importantly, since in my mind everything comes down to hiring and retention of good people) to the problem at hand, and then when you veer back you may not have the right team in place. How many people threw themselves into a beautifully planned cross-team development cycle and then had their careers derailed when the dependency pulled out and they had nothing to ship? So maybe people with that vision left Microsoft, and then when you need to compete with Apple you don't have anybody around who can pull that off. Then you finally put that kind of team back together and the laser-focused people get disgruntled, and then you need laser focus and the larder is empty. You get the idea.

Just looking at Microsoft's current crop of competitors, you can tell that some of them are the type that will inspire laser focus, and some of them are the type that will inspire broader cross-team cooperation. Tivo, iPod, OpenOffice, Linux, Skype, Wii, Oracle, IBM (which is my own random list I pulled out of the air, not any official internal list of our competitors)...you can run down the list and check off Focuser, Broadener, Focuser, Broadener...should be an interesting ride to say the least.

Posted by AdamBa at July 2, 2007 06:04 PM

Trackback Pings

TrackBack URL for this entry: