(image source : http://www.boloms.com/wp-content/uploads/2014/11/20141112_100905.jpg )
The awakening of Microsoft
Anticipating the impact of the consumerization of IT, Microsoft decided to move its focus more on the consumer’s side and to modify its business model from selling software to renting software. But given the size of the company and its engineering culture (not that much customer’s centered), this digital transformation of an unprecedented magnitude started “slowly” and accelerated as Microsoft’s organization was walking its learning curve.
Microsoft started to build “cloud” services out of its legacy server products. At the very beginning, it was the Hosted Messaging and Collaboration (HMC) solution for telcos and hosters. It was Exchange (mail) server + Office Communication Server (unified communications) + Sharepoint services (collaboration) + Microsoft Provisioning server (provisioning / deprovisioning of services and users) + control panels (platform configuration and control through specific webpage). HMC was “cloud 0.0” (it was not even named “private cloud”) but it was a good way to understand our legacy server products could be pushed beyond their known envelope (i.e. beyond tens of thousands of users): the largest HMC platform I designed was X-million seats for a major European telco leveraging some primitive cloud architectural patterns such as “building blocks” (for scalability through scale-out) and “fail-over domain” (to address geographic site resilience). HMC evolved to BPOS (Business Productivity Online Standard suite) and then Office 365, offering the Office Business Productivity suite as a service in the cloud (See appendix 7 for Cloud Solution Business Dependency Network).
In the same time, Microsoft’s organization itself evolves from what might be seen as a cooperative of software editors, known as Product Groups competing against each other (see appendix #6) to a more functional organization which allows better resource utilization than a divisional organization: engineering teams could produce piece of software in a genuine platform approach, i.e. components/artifacts which could be used in different products. Ultimately the objective was componentization of products (ecosystem of API) which could be “vertically assembled” for an “on premise” product, or “horizontally integrated” for a cloud solution. Last avatar of this platform rationalization is windows 10 core and universal application: code once the Microsoft unified platform and deploy on mobile devices, laptops, servers, xbox, IoT.
The Microsoft organization also evolved from a HR perspective. Microsoft gave-up its infamous “Stack Ranking” performance review (in every group of Microsoft, Managers should identify top performers, achievers and low performers and get rid of the latter). Product Groups also embrace agile development methodology for continuous delivery. This has been possible, because the incentive framework itself shifted from individual mercenary style incentive, to more team-wide incentive: you fail as a team, and win as a team. Both initiatives (giving-up infamous stack ranking + team-wide incentive) boosted innovation within Microsoft product groups.
The collaboration and cross team communication culture also evolved at Microsoft leveraging available tools as they were developed. Unified-Communications deployment worldwide enabled better real time collaboration between Virtual Teams (v-teams) spread around the world. Sharepoint server collaborative solutions were deployed with Enterprise Search to improve knowledge databases. Major transition (still on-going) was to transition from personal knowledge databases, i.e. 50 GB search-enabled user mailboxes (very good for individual productivity, but a real plague for emergence of a Corporate Intellectual Property) to Yammer discussion/news feeds (which are shared across the whole corporation, real time to spread the news).
Buildings themselves were profoundly modified with large open spaces with free sitting so people can collaborate more easily (no more walls). Specific “creative spaces” were created. Show rooms such as Microsoft Business Innovation Centers were created so customers with specific requests could sketch some solutions based on Microsoft platforms. Local national datacenters were removed as countries were migrating into Microsoft Public clouds leveraging Microsoft Azure for Infrastructure as a Service, and Office 365 for business productivity.
As a result, the pace and release management structure has been completely modified. At the beginning of the transformation, Microsoft focused first on its legacy products with lengthy production cycle (3+ years between major versions) and then adapted them to its cloud solutions (HMC and BPOS at that time). Now Microsoft release management has adopted continuous improvement, monthly releases, and new features are firstly developed for Azure and Office 365, and only then “on premise” products are updated with code inherited from the cloud solutions.
Embracing agile development patterns for continuous delivery, Microsoft is leveraging the telemetry it has embedded within its code (to accurately monitor and manage cloud services consumption and behavior against workloads) to make its solutions evolve:
- Product Groups (Product Manager in the scrum philosophy) choose a whole bunch of new features to be developed based on market trends, back-log from previous development sprint, mega trends in the industry, competitor’s features,
- Product Groups develop these selected features and release them into production with appropriate embedded telemetry.
- Product Groups get real feedback from genuine end-users about their feature usage (it is used, how it is used) down to fine-grained information about User Experience (how many time this button has been clicked, average mouse journey between buttons, pages…).
- All this feedback information is stored in large databases (big data) and analyzed (machine learning) to determine whether a feature is used, if its User Experience (UX) should be improved and how it can be improved.
- Modified features (improved, discarded) and new features are then chosen for the next development sprint.
Microsoft even diversified itself in the device space (consumer OEM market) by acquiring Nokia phone division and launching its Microsoft Lumia Phone + Surface hybrid device. However, the new CEO pretty well understood that Microsoft did not need to own the devices to enlarge its cloud services usage, but that Microsoft could leverage its competitors’ network externalities (IOS + Android ubiquity) to push client applications to these end user devices which will consume Microsoft’s cloud services.
