Monday, September 26, 2011

Execution Strategy and Business Strategy

Rebecca Frankel shared on her Google Reader Feed this image:

I think it's a great example of execution strategy. A frequently used execution strategy is to standardize on one platform and optimize on delivery that way. The nice thing about this strategy is that if you're the startup and the incumbent has built in legacy systems and costs that keep them from executing on the same strategy, you'll have a built-in advantage that will continue for a good long time. For instance, it's hard for an airline to switch the hubs it's using after it's been locked into a long term contract. And obviously, it's hard for incumbent airlines to sell all their fleets and standardize on the 737. The strategy that RyanAir uses, by the way, was first pioneered by SouthWest Airlines. A good execution strategy like this can be easily explained to all your employees to the point where everyone knows what the strategy is, leading to broader alignment.

At Google circa 2003, the execution strategy was straight-forward: build clusters of commodity machines driven by a common software infrastructure so scaling was straightforward. Once MapReduce was adopted, for instance, your mapreduce jobs were datacenter independent and could be run on any number of datacenters. Similarly, all projects could share a single set of site reliability engineers, release engineers, etc., and your resource constraints could be relieved by effectively hiring in all these areas.

The problem comes when you have a new product that doesn't fit your existing execution strategy. Orkut, for instance, was initially written using Microsoft's .NET framework. That didn't fit in with what the rest of Google was doing. It rapidly became a popular product, and the system started falling over from the huge number of requests. The team was staff-constrained, and few engineers inside Google wanted to work on a product that was clearly way out on the left field with respect to Google's execution strategy. To be honest, nobody knew how big social networks were going to be. The result was that it took a while to rewrite Orkut to conform with Google's execution strategy, and by the time it was done enough time had passed and enough users had migrated to another social network that the rest was history. In retrospect, the right thing to do should have been to spin Orkut off, have it raise its own funding round (with Google kicking money), and race quickly to deal with its scaling problems independent of the rest of Google's infrastructure. Facebook might still have won, but at least Orkut wouldn't have been paying Google's strategy tax. Microsoft has its own strategy tax here in that everything has to be tied to windows, but I think even Microsoft's starting to move away from that with its phone and tablet entries.

Business strategy is a whole different animal. In some ways, it's like playing a strategic board game with your business. I'll give you an example. Microsoft invested $240M in Facebook in 2007 at the then stunning valuation of $15B. At that time, Facebook was not profitable (and would become profitable based on Microsoft's guaranteed revenue), and it looked like Microsoft was desperate, throwing money at Facebook. Well, 4 years later, it looks like a brilliant move. Not only does it look like Microsoft's investment will pay off (at least 4X, maybe more), Facebook's been a tremendous thorn on Google's side, probably accounting for no small amount of management distraction, time spent launching (and re-launching) competitive products, and I'm sure no small drain on Google's engineering team. Time will tell as to whether Microsoft's acquisition of Nortel's patent portfolio, essentially forcing Google to buy Motorola will be similarly smart, but spending $4.5B (and that's split between Apple/RIM/Sony/EMC, etc) so that your competition has to spend $12.5B (and ends up having to run a hardware business that's not particularly profitable --- Motorola's the weakest of the Android manufacturers) looks pretty smart right now.

Another company which is good at this is Amazon. The Kindle, for instance, unusually attacked the market from a completely different angle. It's early adopters were not the usual hip 20-somethings, but were the older generation: people who still read and whose deteriorating eye-sight and arthritis made the Kindle an almost must-have. This was so much ignored by other vendors (Apple included) that by the time other ebook stores launched, nobody else has made a dent in electronic book distribution. By ensuring that the Kindle App is available for nearly every platform, Amazon has gotten a choke-hold on electronic book distribution that's only starting to be realized at this point.

Someone told me a little bit back that Amazon's S3 services were priced at below cost at launch. Basically, they bet that they could drive costs down a bit, and that customers would see the move to their cloud services as a no-brainer at those prices and thereby gain them further economies of scale. At this point, I've run into lots of companies that have based their businesses on S3, but comparatively few who've done so on Google's AppEngine infrastructure AppEngine is a bit of a red-headed stepchild at Google because it can't be priced to produce high margins, while Amazon's very much used to low margins.

Obviously, business strategy is of no use if you screw up your execution strategy (or if your product sucks --- nothing ever saves you then), but ideally you want everything in place. Amazon's been the stealth surprise in the past few years in places that looked completely unrelated to e-commerce because of this. At the same time, Microsoft's not being doing so well at execution but its business strategy successes are being ignored by the press, and I think that counting them out would be a mistake.
Post a Comment