DevOps Fast Track training for Partners: learning how Microsoft tools scale to allow lightning fast DevOps

A couple of weeks ago I finally attended the long waited DevOps FastTrack Airlift 2017.

clip_image002These four days were packed on advanced information of how Microsoft’s VSTS team does DevOps. The team is comprised of about 800 people, and they work on both TFS and VSTS (I learned that only about 8% of the code is different between them, pretty much the same product to me).

A brief look at the agenda of the first three days (the fourth was NDA) show how the VSTS team uses its own product to its maximum capabilities:

DAY 1.1:  [KEYNOTE] Microsoft DevOps Transformation

DAY 1.2:  Agile Transformation and Planning

DAY 1.3:  A Day in the Life of an Engineer

DAY 1.4:  Running the Business on Metrics

DAY 2.1:  Architecture and Microservices

DAY 2.2:  Security

DAY 2.3:  Quality and Testing

DAY 2.4:  Deployment Practices

DAY 3.1:  Production Telemetry and Live Site Culture

DAY 3.2:  How We Do DevOps at Microsoft: Wrap-Up Session

DAY 3.3:  Visual Studio Partner Lightning Talks

a.   Modern Requirements

b.   Redgate

c.   WhiteSource

d.   Aqua


What is great about this internal usage (known at Microsoft as “eating your own dog food”) when added to the ten thousand people that use it for Windows development, and other several thousands for Exchange, Office, etc, is that is allows for testing it at a scale that cannot be matched by any other development tool provider.

For instance, even if Atlassian has (last I heard) about 600 developers, which is in the same order of magnitude of the VSTS team, they can’t beat having 40 thousand developers using the “beta” versions and having to do their daily work on the most recent bits.

Microsoft VSTS is primed for scalability from the very core of its engineering process, and it shows. If you are looking at similar tools for your enterprise, I recommend looking closely not only at their scalability numbers, but also their track record for support escalation.

Some tool vendors will have issues, clearly visible to the public, that had been opened more than 6 years ago and have made no progress to resolution. This is not necessarily wrong but it does indicate whether the tool provider actually has enterprise customers as their priority. With Microsoft VSTS you are also engaging with a clear incident escalation path that leads no doubts to resolution time: it is days, not months, and definitely not years, and if something can’t be resolved it will be marked as such, not be left open.

Several customers have been migrating to TFS from competing tools and are amazed at how their support load just decreases, from having to be working on every weekend to put out fires caused by load on build or issue tracking systems, to just having no issue at all and getting their weekend back. With VSTS it goes even further, as now the administrators don’t have to worry about patching, upgrading etc.

These four days have been eye opening. With the follow up email I got the following invitation:

“We encourage you to leverage the content below as you present to customers, conferences, user groups and/or colleagues.  We look forward to sharing the Microsoft DevOps Transformation story across as many audiences as possible.” , which I am happy to oblige:

I am happy to oblige, given the high quality of the content.  I will be using the materials at customers starting immediately as a way to show a possible ideal implementation of a cutting edge DevOps practice. Not that we need to replicate exactly what Microsoft is doing – not many companies have the same resources, in the topic DevOps, Microsoft is at the level of Amazon, Netflix, Facebook or Google – but we can always look at their experience to extract ideas of where to direct our efforts, since Microsoft is using the same tools as we are.

Enterprise DevOps Fast Track training

I just discovered that as part of Nebbia, a Microsoft DevOps Partner, that I will be attending an advanced training for those delivering the engagements related to the now called Enterprise DevOps Accelerator offering. As you might recall from a previous post, I had been yearning to learn more about the cutting edge of what is going on in this space.

I have been working with topics that are under the DevOps umbrella since 2005, even if the moniker, and a general agreement on what it stands for, has been defined only more recently.

The buzz around DevOps is indisputable, so much that has led some like Matthew Kern to declare that Agile is dead, and DevOps is its replacement.

I don’t know exactly what the training will be, but I look forward to it as I can also personally see the commoditization of Agile concepts, and the rise of Scaling Agile and DevOps as its natural replacements. I will come back to that on some other post.

Changing gears to a dedicated DevOps shop

Early in July I mentioned how I was attracted to the new developments in the DevOps world with VSTS, and Microsoft’s new offering to accelerate adoption of DevOps at enterprises.

So I put my heart where my mouth is and decided to join a DevOps company: Nebbia, a Microsoft DevOps and Cloud Partner. Nebbia also does custom software development and training on Cloud and DevOps related topics, so it looks I have found a great place to help others in achieving Agility not just with tools, but also with consulting on soft skills as well.

As for the the Microsoft DevOps Accelerator offer, hopefully I will one of those delivering it pretty soon. :-)

Microsoft DevOps Accelerator Offer

For enterprises wishing to have quick jumpstart on using the latest technologies to support their DevOps efforts, this Microsoft offering is an excellent deal:

“The Enterprise DevOps Accelerator is a limited-time offer for teams of 50 developers or more looking to modernize their application development infrastructure while managing costs.

This offer provides unparalleled value—it’s everything your organization needs to implement DevOps practices at more than 50% off. The offer includes:

  1. The tools your developers want, like Visual Studio Enterprise and Visual Studio Team Services (VSTS).
  2. All the build and release pipelines your team needs, hosted by us or by you, plus cloud and mobile testing resources.
  3. Discounted Azure pricing to run your lab machines or dev workstations in the cloud, and tools to help you manage resources.
  4. A two-week DevOps services engagement delivered by DevOps experts.

This offer requires the purchase of at least 50 Visual Studio Enterprise subscriptions on an Enterprise Agreement purchasing contract with Microsoft. Please complete the form to receive more information.

You can see the form you need to fill at the offer site.

At my work we have been doing this: on-boarding teams to a DevOps platform using the tools for the job, but one per week. From my observation that is too fast, given that some of the troubleshooting that adapting existing builds and pipelines to new systems require. Two weeks is better, but even that might not be enough. It is possible however to identify a pilot project that would showcase the new practices into your organization.

This is definitely a Microsoft offering I would have fun delivering.

The event you have been waiting for to bootstrap your learning about the Cloud

If you have not had an opportunity to focus on learning more about the Cloud and Azure, there is a great event coming this weekend on April 22, 2017: Global Azure Bootcamp. User groups all around the world (last I checked there were 200+). This is the fifth installment, and participation has been growing steadily each year.

Take a look at some of the possible topics (which actual ones depend on what the organizers at each location have decided to bring):

  • Advanced Analytics/Power BI Big Data and Analytics Cloud Computing DevOps

  • Intelligent Services

  • Advanced Analytics/Power BI

  • Big Data and Analytics

  • Cloud Computing

  • DevOps

  • Intelligent Services

  • IoT

  • Mixed Reality/HoloLens

  • Mobile Development

  • Open Development Framework (Docker/Python/Powershell for Linux)

  • Web Frameworks (Angular and React)

Some groups might focus just on the Cloud Computing subset. My favorite one however is DevOps. It contains three sessions with several demos and a couple of hands-on-labs.

Aside from my preferences though, I understand that all of the topics encompass a breadth of information that nowadays any developer need to at least be aware of. So even if you can’t attend, you can plan your own personal bootcamp for another future Saturday. It will be time well spent.

A Visual Studio Rangers sample data tool to generate SAFe project data on VSTS

The Rangers have delivered a sample data tool around March. Now they have put it to work and created a sample data set based on SAFe. It makes it a lot easier to demo features and processes when applying the framework as well as being a learning tool on how to structure your SAFe project.

I will be studying these two Ranger contributions on how to also make it work with Scaled Professional Scrum. Stay tuned.

Upcoming Changes to the Scrum Guide with Ken Schwaber and Jeff Sutherland

Date: July 6, 2016, 11:00 EST (15:00 UTC)

Join Ken Schwaber and Jeff Sutherland, the creators of Scrum and the Scrum Guide in this rare opportunity to hear them together talk about Scrum. The focus on their presentation will be on the upcoming changes to the Scrum Guide (,why they have made these changes, what the changes mean for Scrum and Scrum practitioners around the globe.

For more information:

To attend:

Scaling Professional Scrum (SPS) with Visual Studio Team Services

Martin Hinshelwood (Visual Studio ALM MVP and Ranger) will be presenting on how to use SPS  enlightens us on scaling professional Scrum with Visual Studio Team Services.

This is quite relevant and a long waited talk as Microsoft has presented on how to do SAFe with VSTS a while ago.

As Martin mentions, “Tools don’t solve problems, but they can help reduce the friction of Scaling Professional Scrum. The only way to successfully scale across multiple teams, maybe in multiple countries, is to create robust automation and orchestration for minimising the risks, and time, of manual tasks. Visual Studio Team Services allows you to create a robust, platform agnostic, support structure that can start where you are, and grow as your needs mature.”

You can reserve your spot with GoToMeeting by going to this page: I recommend tuning in early as it tends to get crowded and it is a limited number of slots.

July 3rd Update: the page I linked to has been updated with a recording of the webcast. You can also watch it directly in YouTube.

ADC for the enterprise - a personal manifesto

When I was an ADC (Application Development Consultant) with Microsoft Premier Support for Developers, I wrote the following draft of a proposal merging the development aspects and support/operations aspects of my job.

This was around 2004. Notice the quote from Steve Balmer “almost every company is becoming a software company”. This was seven years before Andreessen’s famous post “Why Software is Eating the World” in The Wall Street Journal.

As I showed it around to my colleagues, at the time it was not well understood as most of the ADCs considered themselves as account managers for development support questions, and more recently this trend has crystalized by the position having been renamed as ADM (Application Development Manager) to align with TAM (Technical Account Manager), whose focus is on support for infrastructure such as Exchange, Active Directory and Windows.

I was on the right track as today DevOps has taken hold, and it has become mandatory to view development as inseparable from deployment and operations.

I want to thank a Microsoft Principal ADM who reviewed this post and mentioned the following:

“Nice article but already dated since we are in fy17 and too many changes to list :-) roles, titles, and org are all different under Satya”.

I agree, Satya is doing a great job in rejuvenating Microsoft. When reading this post you should look away from role names/definitions and other specifics, and focus on the core message of built-in supportability that current cloud software development requires. Enjoy.

(Note: a couple of charts came from Steve McConnell and other friends at Construx, and I have left its copyright notice. The same applies to ITIL.)

Proposal for ADC account strategy on dedicated accounts in the Enterprise space


This paper is an exploration of possible ways to better leverage ADCs in dedicated accounts. Some of its conclusions are also applicable to smaller contracts as well.

Current status

Based on some informal surveys, it is fair to say that most ADCs today spend most of their time providing “General Consulting Services” or in laymen terms, ad-hoc and unstructured break-fix advice to developers.

“Ad-hoc general consulting” is mostly characterized by its lack impact on the organization as whole. It is usually a “one-time-only” request, relegated to a small subset of the organization.

While this might the best option in a couple of situations, in most cases those requests are not really aligned with the business drivers for Enterprise IT organizations. Most of them would fall under the “staff augmentation” and “training needed” category if in depth case analysis was to be done.

Historically, Premier has recommended that in bigger accounts, ADCs should ideally spend their time (60% or more) in mostly Proactive activities. We propose that less than that is an anomaly, and a plan should be developed to bring the account to this state.

Implementation will clearly vary by ADC skills and account background. In the beginning of the contract, ADCs might have to go down to the "down to the metal" until all outstanding reactive issues are worked out. But later, the ADC should also start increase his value to the organization.

Driving business value to the customer

In his address of 1/30/2004, Steve Ballmer refers to Platform Competition and makes two key references that have the potential of driving the ADC work in the Enterprise on what really matters:

[…]While Longhorn client and server will be absolutely critical to our future, we must also continue to innovate around and re-energize the existing Windows platform today, and ensure that we’re addressing key customer concerns about security, reliability, manageability and cost of deployment and ownership.

[…] Software provides insight and oversight, defines intellectual property and business processes, and increasingly is the way we interact with other people, groups and organizations. The result is that almost every company is becoming a software company. While people may view Dell as a manufacturer, or Wal-Mart as a retailer, it is their software that makes their successful models work. Persuading these “new ISVs” to build on our platform is as important as winning the traditional ISV.”

So the challenge is, ADCs have to be more strategic as well, as they are today in the ISV space.

In typical Enterprise space, an ADC will be part of a CIO’s IT organization at some level. IT is a cost center, and so focus is on optimizing budgetary constraints, while in the ISV space the ADC is working for the COO at some level, software development deliverables are the company’s product, and so it is a profit center (see Strategic Alignment: Leveraging Information Technology for Transforming Organisations, J.C. Henderson, N. Venkatraman 1993).

So until companies in the Enterprise space realize they need to see themselves as “new ISVs”, the best way to provide value is to align with current IT shops business objectives. And those are usually related to Steve’s first paragraph mentioned above. Ultimately, security, reliability, manageability and cost of deployment are all summarized in Total Cost of Ownership (TCO), and a CIO’s job is to minimize it. That’s what is driving IT shops today to try and run their operations with less and less people, and more and more consolidated servers. Dell’s stated objective is to bring IT costs down to less than 0.8% of their revenue.

So anything that an ADC proactively does to improve in those areas, will be seen as supporting an Enterprise IT’s business objectives.

The need for a common theme

Opposed to ad-hoc work is, of course, work done with a predefined objective or what I would call “theme”. Taking into account the previous observations, and the fact that ADCs are primarily part of a Support organization, I would suggest that in the Enterprise world ADCs could use, as a business vision for their work, the following statement: "to decrease development support costs across the custom application lifecycle".

Two classic slides from Steve McConnell will better illustrate the point for proactive work and business value:


The slide is self explanatory. It may cost from 50 to 200 times more to fix an issue that was introduced in earlier project phases.

Now look at the next slide below. Where would ADCs provide more value: on the red zone or on the green zone in the next slide? It is pretty obvious when seen graphically.

Why would a customer be willing to pay premium for dedicated resources that only work on the red part of the curve, when they can have savings at least 50 times bigger when working on the green one?


ADCs as process improvement catalysts

Given that we clearly established above the need for Proactive work from a business perspective, how do we proceed to implement it?

The best way to decrease support costs is taking a proactive stance and act on the real root cause of issues. In ITIL terms, ADCs should proactively work with IT on the problems, not just ad-hoc incidents. This implies the need to understand the profile of an account, and classify their issues beyond the shallow root cause that we have been normally delivering our customers.

Despite the pioneering work by Lymbourner and others, the current case analysis deliverables suffer from basic misconceptions that blur the line between problems and incidents, cause and effect, and therefore do not allow us to provide convincing feedback to the customer so they can focus on the green curve (problems) as opposed to incidents (red curve).

When first interacting with the account, we should do a quick assessment of the most important reactive issues, take care of them, and then with this solid base, proceed to work on creating value through proactive work on the underlying problems. The ADC becomes then a process improvement catalyst.

Which Problems should an ADC concentrate on

Given that we should proactively concentrate on problem resolution in our time with the customer, which ones are those?

In the Enterprise space, problems that will eventually cause incidents on Production are related to application “aspects” that are frequently overlooked.

Whereas MCS consultants also work with customer business requirements, ADCs will primarily work with requirements that have direct impact on application supportability. I call them “aspects” because in fact they cross-cut all types of applications at all levels, be it requirements, architecture, design, coding, testing and implementation, as opposed to business requirements which are specific to the solution domain.

These problems are deficiencies on usually called “non-functional requirements”. You will recognize some of them from Steve Ballmer’s email, but here is a more complete list:


The ability of an application to be present and ready for use.

Manageability (Operability)

The ability of an application to be administered.


The measure of an application's operation under load.


The ability of an application to perform in a predictable manner.


The ability of an application to match increasing demand with an increase in resources.


The ability of an application to protect its resources.

Issues with any of those aspects hit the IT budget bottom-line, because they all impact TOC (Total Cost of Ownership). Work done to improve any of those aspects is therefore indicative of ADC alignment with IT business objectives.

ADC offering as aligned with support improvement

One area that has typically been neglected by ADCs in general in the “ad-hoc wandering round”, is the connection of IT business objectives mentioned before with ITSM (IT Service Management). From the documentation:

“IT Service Management is concerned with delivering and supporting IT services that are appropriate to the business requirements of the organization. ITIL provides a comprehensive, consistent and coherent set of best practices for IT Service Management processes, promoting a quality approach to achieving business effectiveness and efficiency in the use of information systems.”

Usually ITSM is associated with Service Delivery and Service Support, and such subjects are deemed as part of “TAM-land”. However, ITSM is much more than that, and one key topic unknown to most ADCs is Application Management:

Application Management is the superset, which describes the overall handling, or management, of the application as it goes through its entire lifecycle. This lifecycle encompasses both the application development phases and Service Management activities noted below. By bringing these two disciplines together, the goals of IT Service Management will be accomplished more easily through the delivery of applications that are more operable and manageable.


(From ITIL Service Management 2.0)

Application Management “combines the phases of application development and Service Management" In Microsoft parlance, Application Management translates to a combined MSF/MOF lifecycle:

ITSM Phase














This topic is the subject of an entire book, so I although there is a lot more to explore, I would like to emphasize that as part of Dynamic Systems Initiative (DSI), Microsoft has a clear path to satisfying most requirements from the ITIL Application Management topic "Aligning Application Development and Service Management". One such objective (I consider a niche for ADCs since it presupposes a long term persistent relationship with the customer) is:

Application designers who can design for functionality specifically aimed at Service Management; in fact, they could design applications that are ‘management ready’.

By supporting this objective with their customers, the ADC is in fact solving support problems from the architecture perspective, and aligned with support improvement.

Build 2016 sessions you must watch

Besides the fantastic announcements, especially those centered around the Cloud, Xamarin, XBox and HoloLens, there were dozens of sessions available that have been made available on Channel 9. Here is my selection:

Building Cross-Platform Enterprise Mobile Apps with Visual Studio and Azure App Service

Building Cross-Platform Enterprise Mobile Apps with Visual Studio and Azure App Service



    Data Integration in the Cloud and Building Data Analytics Pipelines

    Data Integration in the Cloud and Building Data Analytics Pipelines




    Hosted Web Apps Myth #1:  I Have to Rewrite My Web Site to Ship It as an App

    Hosted Web Apps Myth #1: I Have to Rewrite My Web Site to Ship It as an App



    Hosted Web Apps Myth #2:  You Can Tell It’s a Web Site

    Hosted Web Apps Myth #2: You Can Tell It’s a Web Site



    Applications That Learn & Adapt: Azure Machine Learning + Search

    Applications That Learn & Adapt: Azure Machine Learning + Search



      Integrating your Systems with Logic Apps

      Integrating your Systems with Logic Apps



        UI Test Automation for Browsers and Apps Using the WebDriver Standard

        UI Test Automation for Browsers and Apps Using the WebDriver Standard



            App Feedback: Connect with Your Customers

            App Feedback: Connect with Your Customers



                Building Applications Using the Azure Container Service

                Building Applications Using the Azure Container Service



                  Enabling DevOps for Every Team

                  Enabling DevOps for Every Team



                    DevOps at Scale: A True Story

                    DevOps at Scale: A True Story




                        <<  March 2018  >>

                        View posts in large calendar

                        Month List