If you are following Windows Club closely it will be evident that Microsoft is sparing lots of efforts to make its Bing Products better and now Bing being the second largest search engine globally it only becomes more important for Microsoft to deliver on promises. Microsoft is taking its time to build Bing into the largest, most relevant and one of the best performing search engine.
Bing Continuous Delivery Method
Microsoft has realized that rapid innovations in user-facing features and the improvisation in performance is possible through innovation and new intuitive features. The Bing team has more than 600 engineers that put in lots of efforts to create something magical. The deployment method they follow is dubbed as “Continuous Delivery”, a rapid software delivery cycle that not only bought changes in the way developers write code but also in the way the business operates.
The Bing team is literally pushing 4000 individual changes every week with thousands of services 20 times a week, each code is meant to go through a code change submission test pass which in turn contains 20,000 tests.
The agility method is something that helps the Bing team to transfer ideas from the whiteboard to the live site/deployment stage and finally to the users. Needless to say along with the human efforts automation also greatly contributes to the success. The coding cycle usually consists of two loops, an inner loop and an outer loop.
The loop that spans through the code commit and is responsible to render a rough idea for the engineer writing the code. The outer loop however dishes out the committed code out of the production, since the feature is usually not finished until live user trials have been negated successfully.
To check the features, Bing has adopted feature ideation which will be in turn supported by the rapid prototyping tools and assistance from real time crowd-sourced feature analysis. The very fact that a feature has to be literally shipped 20-times a week leaves no room for manual testing and this has encouraged the team to build up automated processes which would eventually also increase the reliability of tests. That being said it is extremely difficult to automate certain complex processes and would need a lot of resources to do so.