Welcome to our new Engineering Stories site. This is a place for us to share how we build software at Microsoft. Today, we're releasing our first story describing how we adopted and scaled agile practices across Developer Division. It's a story describing our journey towards a faster release cadence, a more engaging engineering process, and, in the end... a better product. I hope you find these stories useful and engaging. Our goal is to share where we've found success, and also where we've struggled. Let us know what you think.
A little history
You might remember how we made software a decade ago – "we" being the entire software industry, Microsoft included. By today's standards, slow ... as ... molasses.
We released products on two to three year cycles. It wasn't unheard of to spend six months to a year planning, a year or more coding, and then months packaging everything up for delivery. It worked in the software generation in which it was born, but today's environment requires a different approach. Today we buy software daily—often with just the touch of a finger on the device we're carrying with us. Market opportunities come and go more quickly, and customers demand increasingly faster turnaround to meet their needs.
I heard about the Microsoft DevDiv move toward agile at the 2012 Build and thought it could dramatically change the way we see software coming out Microsoft (or be a total bust). I can't say if it was indeed this move, but even the biggest hater has to admit, the software release cadence we're now seeing it nothing less than amazing, compared to just 5, heck 3, years ago. And the scary, in a good way, is that it looks like its speeding up!