Years ago, I used to do monthly updates on TFS adoption at Microsoft.  Eventually, the numbers got so astronomical that it just seemed silly so I stopped doing them.  It’s been long enough and there’s some changes happening that I figured it was worth updating you all on where we are.

First of all, adoption has continued to grow steadily year over year.  We’ve continued to onboard more teams and to deepen the feature set teams are using.  Any major change in the ALM solution of an organization of our size and complexity is journey.

Let’s start with some stats:

As of today, we have 68 TFS “instances”.  Instance sizes vary from modest hardware up to very large scaled out hardware for the larger teams.  We have over 60K monthly active users and that number is still growing rapidly.  Growth varies month to month and the growth below seems unusually high (over 10%).  I grabbed the latest data I could get my hands on – and that happened to be from April.  The numbers are really staggeringly large.

  Current 30 day growth
Unique users 62,553 7,256
TPCs 788 46
Projects 15,581 187
Work items 42,088,748 5,572,355
Source files 320,224,466 11,959,935
Builds/month 568,190 109,764
Test cases 9,483,760 1,172,495

In addition we’ve started to make progress recently with Windows and Office – two of the Microsoft teams with the oldest and most entrenched engineering systems.  They’ve both used TFS in the past for work planning but recently Windows has also adopted TFS for all work management (including bugs) and Office is planning a move.  We’re also working with them on plans to move their source code over.

In the first couple of years of adoption of TFS at Microsoft, I remember a lot of fire drills.  Bringing on so many people and so much data with such mission critical needs really pushed the system and we spent a lot of time chasing down performance (and occasionally availability) problems.  These days things run pretty smoothly.  The system is scaled out enough and the code, and our dev processes have been tuned enough, that for the most part, the system just works.  We upgrade it pretty regularly (a couple of times a year for the breadth of the service, as often as every 3 weeks for our own instances).

As we close in on completing the first leg of our journey – getting all teams at Microsoft onto TFS, we are now beginning the second.  A few months ago, The TFS team and a few engineering systems teams working closely with them moved all of their assets into VS Online – code, work items, builds, etc.  This is a big step and, I think, foreshadows the future for the entire company.  At this point it’s only a few hundred people accessing it but it’s already the largest and most active account on VS Online and it will continue to grow.

It was a big decision for us – and we went through a lot of the same anxieties I hear from anyone wanting to adopt a cloud solution for a mission critical need.  Will be intellectual property be safe?  What happens when the service goes down?  Will I lose any data?  Will performance be good?  Etc.  Etc.  At the same time, it was important to us to live the life that we are suggesting our customers live – taking the same risks and working to ensure that all of those risks are mitigated.

The benefits of moving are already visible.  I’ve had countless people remark to me how much they’ve enjoyed having access to their work – work items, build status, code reviews, etc from any device, anywhere.  No messing with remote desktop or any other connectivity technology.  As part of this, we also bound the account to the Microsoft Active Directory tenant so we can log in using the same corporate credentials as we do for everything else.  Combining this with a move to Office 365/SharePoint Online for our other collaboration workflows has created for us a fantastic mobile, cloud experience.

I’ll see about starting to post some statistics on our move to the cloud.  As, I say, at this point, it’s a few hundred people and mostly just the TFS codebase – which is pretty large at this point.  Over time that will grow but I expect it will be slow – getting larger year over year into a distant future when all of Microsoft has moved to the cloud for our engineering system tools.

I know I have to say this because people will ask.  No, we are not abandoning on-prem TFS.  The vast majority of our customers still use it, the overwhelming majority of our internal teams still use it (the few hundred people using VS Online is still rounding error on the more than 60K people using TFS on premises.  We continue to share a codebase between VS Online and TFS and the vast majority of the work we do accrues to both scenarios – and that will continue to be the case.  TFS is here to stay and we’ll keep using it ourselves for a very long time.  At the same time VS Online is here to stay too and our use of it will grow rapidly in the coming years.  It will be a big milestone when the first big product engineering team not associated with building VS Online/TFS moves over to VSO for all of their core engineering system needs – I’ll be sure to let you know when that happens.

Brian