Ian Margetts - ASOS’ Journey to Continuous Deployment
-
Upload
winops-conf -
Category
Technology
-
view
154 -
download
1
Transcript of Ian Margetts - ASOS’ Journey to Continuous Deployment
JOURNEY TO CONTINUOUS DEPLOYMENT
I A N M A R G E T T S
2016 confidential
AGENDA.
• Who are we?
• The Background
• Why Re-architect?
• V1 of DevOps
• Alignment to Re-Platforming
• The Results
• What’s Next
2016 confidential
2016 confidential
T H E N U M B E R 1
F A S H I O N
D E S T I N A T I O N F O R
T W E N T Y
S O M E T H I N G S
W E S E L L O V E R
8 5 , 0 0 0 P R O D U C T S
1 3 9 M S I T E V I S I T S
I N D E C E M B E R 2 0 1 6
1 4 M A C T I V E
C U S T O M E R S
F R O M A R O U N D
T H E W O R L D
W E S E L L T O
A L M O S T E V E R Y
C O U N T R Y I N T H E
W O R L D
S T I L L G R O W I N G
O V E R 2 5 % Y O Y
2016 confidential2016 confidential
DIGITAL PLATFORM
PRODUCT & CONTENT
CUSTOMER ENGAGEMENT
3rd Party Solutions
E.g Fred Hopper
3rd Party Solutions
E.g Fred Hopper
CORE eCOMMERCE
BagService
BagService
CheckoutService
CheckoutService
PaymentService
PaymentService
SearchService
SearchService
CustomerProfile Service
CustomerProfile Service
LoyaltyService
LoyaltyService
STOCK & FULFILMENT
StockStock Delivery OptionsDelivery Options
ASOS CHANNELSASOS CHANNELS
ProductService
ProductService
INTEGRATION PLATFORM ENTERPRISE PLATFORM
Supply ChainSupply Chain
FinanceFinance
DATA PLATFORM
Data Services
PeoplePeople
Data Lake
StockStock
RetailRetail
OrderOrder
ProductProduct
IdentityIdentity
PropensityPropensity
2016 confidential2016 confidential
DOMAIN ...
Development Teams(1 or more)
Platform Team
Head Of Technology For Domain
PrincipalArchitect
PrincipalEngineer
Lead BusinessAnalyst
Lead QA
Service Delivery
Programme / Project
Manager
Shared Across Domain
Supporting Domain Resources
Solution Architect
(1 or more)
Platform Team
Platform Team
Platform Team
Platform Lead Product Manager
UX Designer
(Team Dependent)
Technology Core Functions
PMO SecurityEnterprise Architect
Change Mngmt
Etc.
Senior Business Analyst
Business Analyst
Agile Delivery Manager
Dev Team
SoftwareEngineers
QA(1 or more)
Data Engineer
(Team dependent)
2016 confidential
THE BACKGROUND
17.8 37.7 71.7149.3
205
324
482
754
955
1119
1444
0
200
400
600
800
1000
1200
1400
1600
2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016
Revenue (£m)
Total
2 0 0 8
• £72m Revenue
• 2 x software engineering teams
• Single, monolithic code base hosted in traditional datacentre
• Semi-automatic deployment process
2 0 1 6
• £1.5b Revenue
• 54 x software engineering teams
• Codebase largely re-architected and hosted in Azure
• Fully automated deployment process
2016 confidential2016 confidential
• Technology constraints
• Monolithic Application
• Slow to change – Test and Deploy
• Presentation & Logic intertwined
• Unstable
• 3rd Party Proxies hacked in
• No resiliency
• Business constraints
• Single language
• Single currency
• Single channel (Web)
Why re-architect?
Content Delivery Network(Globally Deployed) U
p to
7 se
con
ds
V1 of DevOpsA Centralised Framework
• Used by everyone to push code from test to production
• Build once, deploy many
• Shared ownership (anyone can develop)
• Custom to the needs of ASOS
Centralised ALM / DevOps• ‘Own’ deployments and path to live to
ensure consistency• Make core changes to framework
• Support teams on making extensions
• ‘Own’ environment management to ensure consistency
2016 confidential
THE RESULTS…R E L E A S E S I N C R E A S E D E X P O N E N T I A L LY I N 4 Y E A R S , AT T R I B U TA B L E TO :
• ALM framework development
• Improved environments
• Release management improvements
• Start of the re-architecture into Azure
2040
141
272
332
0
50
100
150
200
250
300
350
2011 2012 2013 2014 2015
Releases
2016 confidential
Aligning DevOps to Re-Platforming Re-architecture of the code base
• From one code base to hundreds
• Truly decoupled micro-services architecture
• Move to Azure
Emergence of the Platform Teams
• From project to platform based
• More responsibility for code and infrastructure
• Both development and support responsibilities
Release Demand
• Business hunger for more regular features
What did we do?Goals
• Empower teams
• Improve team competency
• Devolve team support
• Support cloud
How• Tooling
• Rollout of competency model
• Platform engineering – central and devolved
Did it work?• Teams taking ownership
• Reduction in release effort
• Resolving challenges more quickly (and earlier)
• Metrics based conversations
• All components released prior to Black Friday
Challenges• Shifting Accountability to Platforms
• Doing it at Scale
• Business Demands
2040
141
272
332
487
1305
0
200
400
600
800
1000
1200
1400
2011 2012 2013 2014 2015 2016 2017
Releases
2016 confidential
WHAT’S NEXT?C U LT U R E
• Get to grips with Autonomy
• Drive Platform Engineering to Teams
• Metrics based conversations to drive Continuous Improvement
• DevOps to Ops
T E C H N O LO G Y
• Automate (where appropriate)
• Data, data, data
• Operate at scale
• Information
2016 confidential
2016 confidential2016 confidential
QUESTIONS?