A new “Vanity Fair”:http://www.vanityfair.com/online/daily/2012/07/microsoft-downfall-emails-steve-ballmer article on MSFT’s struggles, and “DF stresses”:http://daringfireball.net/linked/2012/07/03/microsoft-vf the impact of the stack rank:

Eichenwald’s conversations reveal that a management system known as “stack ranking” — a program that forces every unit to declare a certain percentage of employees as top performers, good performers, average, and poor — effectively crippled Microsoft’s ability to innovate. “Every current and former Microsoft employee I interviewed — every one — cited stack ranking as the most destructive process inside of Microsoft, something that drove out untold numbers of employees,” Eichenwald writes. “If you were on a team of 10 people, you walked in the first day knowing that, no matter how good everyone was, 2 people were going to get a great review, 7 were going to get mediocre reviews, and 1 was going to get a terrible review,” says a former software developer. “It leads to employees focusing on competing with each other rather than competing with other companies.”

I am a decade removed from MSFT and have no particular insight into the culture today, but this smells like BS to me. No one ever loved stack ranks, team members or managers. It was a sucky process and I hated it from both sides. But…everyone always wanted to know their relative importance to the team, and the top 50% of my teams never felt bad about the outcome. Whether explicit or implicit, some stack ranking takes place in every organization, unless you are working in some commune. I’ve worked in orgs with less explicit stack ranks, but it was always there, and everyone knew about it. I don’t believe the stack ranking system has hurt MSFT at all, I think this is the whining of bottom quartile performers.

There is plenty of other meat in this article, and I am on board with a lot of it, but not the stack rank point.

If I were to pick one factor that has hampered MSFT, I’d say the love of grand convergence strategies. The current imperative to run the exact same bits on PCs, tablets, and phones. The many many grand storage convergence strategies that have largely failed. In earlier times, the insistence on one Windows code base which inevitably created internal winners and losers. The many many “strategy taxes” that teams have to pay to be in line with the grand strategy du jour. Looking at the current PC/phone/tablet issue, MSFT has 0 share in phones and tablets, and unless they fix that, it doesn’t matter if phones/tablets/PCs are converged. Job one should be to create the greatest, no-compromise, phone and tablet products. And then when MSFT is sitting on an installed base of millions of these devices, they can go solve the convergence issues they have created for customers and developers. But there is no point in putting the convergence horse before the cart.

UPDATE: over on “my FB page”:https://www.facebook.com/jhludwig several very bright and respected MSFT alums have some good comments, several of them are more negative about the stack ranking system than am I. So there is room for reasonable people to disagree on this point. Everyone agrees on rewarding achievement but would go about it different ways, and I certainly don’t want to stand up as a defender of the 1988-2000 MSFT stack rank system, I would certainly change some things about it if I was implementing a system.

I still stand by more core point, the stack ranking system is not the cause of any MSFT stagnation; it may not be helping, but it is not the cause.