Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Large-Scale Enterprise Platform Transformation with Microservices, DevOps, and PaaS


Published on

SpringOne Platform 2016
Speakers: Christopher Tretina; Director, Comcast & Vipul Savjani; Director of PaaS, Accenture

Comcast is embarking on a multi-year application modernization and transformation journey to achieve application resiliency, velocity and cost optimization at enterprise scale. We will discuss how we are addressing significant technical architecture, engineering, and delivery challenges faced in transformation of Comcast’s Enterprise Services Platform (ESP) from SOA architecture to Cloud-Native architecture using Microservices, DevOps, and PaaS.

Published in: Technology

Large-Scale Enterprise Platform Transformation with Microservices, DevOps, and PaaS

  1. 1. Large-scale Enterprise Platform Transformation with Microservices, DevOps, and PaaS Christopher Tretina, Comcast Vipul Savjani, Accenture August 02, 2016
  2. 2. The ESP Journey at Comcast Christopher Tretina, Director, Common Infrastructure Platforms at Comcast (@ChrisTretina)
  3. 3. Who We Are • Largest broadcasting and largest cable television company in the world by revenue • 153,000+ employees • Director of Common Infrastructure Platforms • Responsible for the Core software platforms behind some of our key back office systems • 9+ years at Comcast; grew alongside ESP
  4. 4. What is ESP? • Monolithic SOA powering the Comcast Back Office • 65+ services • 250M+ transactions/day • 200+ internal and external consumers • 150+ back ends • 256+ servers • 50+ Domains • 1,000+ JVMs
  5. 5. Goals and Benefits Goal Action Benefit Reduce Time-to-Market Realized: Introduced TDD, CI/CD, DevOps, and Canary (Soak) Cycle times by team reduced from days to hours Elastic Scalability Realized: Introduced PaaS Scale out time reduced from months to minutes Increase Resiliency In Progress: Implementing Health Checks and Auto-failover Fail over time reduced from 25 minutes to 30 seconds Decompose the Monolith Up Next: Decompose to True Microservices Clear data ownership and true “loose coupling”
  6. 6. The Journey: Timeline 2014 Laying the PaaS Foundation 2015 Migrating the First Services 2016 DevOps Culture Shift 2017 Going Cloud Native 6
  7. 7. The Journey: Laying the PaaS Foundation • 2014: Cloud Infrastructure team deploys Cloud Foundry • We begin to see what a world with PaaS might offer • What Worked Well: Start small, lay the foundation • What We Learned: DevOps “early adopters” start the journey together 7
  8. 8. The Journey: Migrating the First Services • 2015: Central, dedicated team constructed the core frameworks/shared components and migrated the first services • High fixed cost attached to migrating the first service due to having to convert the core components • What Worked Well: Tackled the highest-value services first (40% of ESP traffic migrated in year one); allow for a seamless migration • What We Learned: Don’t try to tackle too much at once (e.g. NoSQL conversion at the same time as service migration) 8 Spring Framework Spring Boot
  9. 9. The Journey: DevOps Culture Shift • 2016: Extended the culture shift to the BAU delivery teams; began converting services en masse • Managed the conversion like a portfolio • Re-branded: xfinity Services Platform (XSP) • What Worked Well: Adopt the culture changes to achieve the real benefits: define maturity model, iteratively gain value, “fail fast” • What We Learned: Decentralize with the BAU teams up front 9 Agile DevOps TDD Pairing CI/CD
  10. 10. The Journey: Going Cloud Native • 2017: Decompose services to true Microservices • Introduce bounded contexts with discrete data sources • Leverage event sourcing for data • We’re Continuing to Learn… 10 Spring Cloud Data Flow
  11. 11. ESP Journey Summary • Our multi-year journey is very much still underway but we are already realizing many of the benefits that we sought after in the beginning • When setting out upon your own Cloud Transformation, be sure to: - Start small and lay the foundation up front - Bring “early adopters” together - Focus on the highest value services/applications first (or at least the ones that will free up the most cycles within your DevOps teams) - Implement the cultural changes and best practices to achieve the full benefits - Avoid trying to tackle too much at once; consider migrating iteratively first – “Cloud Friendly” before you try to go “Cloud Native” 11
  12. 12. Accenture’s Offering Vipul Savjani, Director of PaaS Practice at Accenture
  13. 13. Cloud Native Transformation Copyright © 2016 Accenture
  14. 14. Enterprises are going through large scale transformation to survive in software-driven economy… Adoption of technologies and practices leveraged by software companies are essential in their transformation… Why? Copyright © 2016 Accenture Drivers • Speed • Agility • Scale • Resiliency • Cost Reduction • … DevOps; CI/CD Microservices Cloud-based Platforms & Infrastructure Cloud Native Solutions
  15. 15. Migration of legacy enterprise applications to modern cloud native applications leveraging Cloud/PaaS architecture, technologies and infrastructure. What? Copyright © 2016 Accenture How? Legacy • Complex / Easy • Modularity Dependent Upon Language / Frameworks • Change Cycles Tightly Coupled / Obstacle to Frequent Deploys • Inefficient Scaling • Can be Intimidating to New Developers • Obstacle to Scaling Development • Requires Long-Term Commitment to Technical Stack Cloud Native • Simple / Hard • Modularity Based on Component Services • Change Cycles Decoupled / Enable Frequent Deploys • Efficient Scaling • Individual Components Less Intimidating to New Developers • Enables Scaling of Development • Eliminates Long-Term Commitment to Technical Stack
  16. 16. Copyright © 2016 Accenture How? Framework for assessment and transformation of legacy to cloud-native Platform Compatibility Engineering Practices Architecture Patterns Deploy to PaaS and Make it easier to maintain and operate on PaaS Optimize to leverage PaaS Get it ready and running on PaaS 1 2 3 Cloud Ready Cloud Friendly Cloud Resilient & Native  PaaS Runtime Runtime CI/CD CI/CD Legacy Cloud Native </> + Automated and Assisted Assessment0
  17. 17. Copyright © 2016 Accenture ABCF/D Legacy Architecture based legacy technologies and frameworks Minimum CI and no CD Incompatible Application/Architecture Style Incompatible Technologies and Frameworks Cloud Native Maturity Model Cloud Native Score Monolithic Applications Cloud Native Already Cloud Native Application with full CI/CD Full Standardization of App and Data Architecture, Tools, Operations, and Processes Running on Cloud/PaaS but not optimized to leverage underlying capabilities Sufficient CI/CD Some Standardization of Architecture, Tools, Operations, and Processes Cloud Ready Cloud Friendly Cloud Resilient Cloud Native Pivotal Maturity Model
  18. 18. Copyright © 2016 Accenture CF/D Approach & Challenges Challenges encountered in journey to cloud native. Legacy Cloud Native Cloud Ready Cloud Friendly Cloud Resilient Cloud Native Pivotal Maturity Model AB ? Start Here Step 1: Platform Step 2: Architecture Step 1: Re-think A. Evolve B. Re-think and build
  19. 19. Copyright © 2016 Accenture