How does Comcast automate deployments without compromising the reliability of the X1 Platform for XFINITY TV?

One of the latest movements in software development that’s turning into a common practice is automation, usually as part of the Continuous Integration / Continuous Delivery model. Companies of all sizes are switching to shorter release cycles, aiming to deploy faster and continuously improving their product on a daily or weekly basis.

Switching to a faster release cycle often leads to an increase in the number of errors that are introduced into the system. These issues affect users and hurt their experience, and companies have to stay on top of their application’s health.

How do they do it? We’re glad you asked.

Automate deployments, releases and error handling

For large companies such as Comcast, deployment automation makes it easier to handle a fast release schedule. As part of their weekly release cycle, the company deploys a new version of their XFINITY X1 flagship application to over 10 million customers across 23 million devices.

After the code has been updated, it’s critical to be able to monitor the live application, and be aware of every new error that may be introduced into the system. However, trying to debug the application in production is, in most cases, a tedious process that involves manual effort from the development team.

Or so it was for Comcast, up until recently.

In the following video, John McCann, Executive Director of Product Engineering at Comcast, explains how the company handles issues in production; by implementing an automated error resolution strategy. Their new process involved integrating OverOps with their automated deployment model, that helps the company instrument their application servers.
Watch how Comcast automates deployments to serve over 10 million XFINITY customers

I write about Java, Scala and everything in between. Lover of gadgets, apps, technology and tea.