manchester itexpo talk: devops large and small - cambridge satchel

35
jmwpro jmwpro

Upload: jwooldridge

Post on 11-Aug-2015

145 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwprojmwpro

Page 2: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Web Master / Lead Java Developer

Lead Developer / Head of Development

Director of Platform Development

Head of Web Engineering

Chief Technology Officer2014

2011

2007

2003

1999

Background

DevOps Large

DevOps Small

DevOps Small

? Small

???? Small

Page 3: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

DevOps Large<aka DevOps Hard/>

Page 4: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

• 2011-2014 introduced Continuous Integration, DevOps & Behaviour Driven Development to M&S on £150 Million project.

• 650 Member project team, mostly outsourced.• Project touched 65 new or modified applications, mostly legacy.• Devops Capability team now in place to kick start other teams• BDD initiatives taken off on and offshore with

4 years to re-platform – ongoing….

DevOps Large: Marks & Spencer

Founded 1884, 85,000 staff£10.3 Bn group revenues

Page 5: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

“It’s all about the code”Application code, Test code, Configuration code, Script code, infrastructure code, 3rd Party Binaries

Page 6: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

DevOps Large: The Good

Software Factory Efficiency Ensure there is only one place to put

code, and one way to build it

Software Scanning Quality and Maintainability

Ensure all code meets agreed coding standards. Scan for Security vulnerabilities after every commit

Route to Production Simplicity and Control All code had to go through the correct

environments firstRegular Release train(s) Team Productivity Have a schedule and stick to it.

Configuration Management Code control SVN misused, sorted then moved to GIT

Behavior Driven Development

Better solution. Automated testing.

Try BDD initiatives within in-house teams- then roll out offshore.

Initiative Benefit What to look out for?

Page 7: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

DevOps Large: The Bad

Architecture Too coupled Too many dependencies between systems making it difficult to move at speed or test independently

Vendors and Systems Integrators

No Unit testing, test automation, DevOps

Out of the box Vendor code poor with no or limited unit tests. Teams aligned to build features not an efficient pipeline.

Automated Testing Multiple frameworks not fit for pipeline

Ensure your automated test ‘frameworks’ can run externally (ie via jenkins or similar) and can be configured to run subsets of test. SCM.

Legacy Systems Legacy Systems!!Legacy Systems!!! Add a legacy system being built by a legacy Team and the whole code delivery process can grind to a standstill.

Test Environments Complex and Expensive

Do all you can to build your apps independently of the dreaded “System Integration Environment”

Initiative Benefit Explanation

Page 8: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

DevOps Large: The Ugly

Contracts Fixed PriceNo mention of operational considerations; code process, build mechanisms, frequency of deployment, code quality, automation.

Hosting Partners No Access to hardware

Ensure you’re not handing over full control of infrastructure to 3rd Parties with no incentive to give dev/test teams access. What’s the incentive to collaborate.

Operating Model Waterfall basedInternal processes/gates/sign-off based on waterfall. DevOps initiatives cut across all phases of standard projects.

Architecture & Test Data

Impossible to get baseline data

With multiple batch jobs and internal reference tables virtually impossible to take co-ordinated snapshot of DBs and recreate test environments at will

Initiative Benefit Explanation

Page 9: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Lies, Lies and Statics<the forgotten teams/>

Page 10: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

The cool kids in DevOps

Soon ;-)

Page 11: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Legacy Zone

Cool Zone Team Software

Agile/Lean practices

Great Software

Goodpractices

GoodSoftware

Poor working practices

Poor Software

Bad working practices

BadSoftware

Delivering better software, faster.

Page 12: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

The real cost of not doing it right

$$$$

$$$

$$$ Understand the cost to the

organisation of slow releases

Cost of rework

Cost of delay and hand off

Cost of building the wrong thing

Cost of poor technology choice

Integration test costs

Excelle

nce / C

raftsm

ansh

ip

Page 13: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Legacy Zone

Cool Zone

Excelling at Software Delivery

Delivering better software, faster.

Corporate Complexity

So where on the scale are you?

Page 14: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Legacy Zone

Cool Zone

DevOps Big: Enterprise Reality

DevOps / BDD Culture on a few new initiatives

Outsourced Standard Methods long integration test phases,

some test automation

Increasing use of BDD, Lean within digital teams

Page 15: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

DevOps Large: The Team Ceiling

Do you have the team in place to excel?

Designed for Continuous Delivery?• Training• Skills• Mindset• Goal alignment• Contracts• Empowerment

No matter how good your technology ensure your team is

up to it!

Page 16: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Team Policy based on DevOps

Do you have the team in place to excel?

Designed for Continuous Delivery?• Training• Skills• Mindset• Goal alignment• Contracts• Empowerment

No matter how good your technology ensure your team is

up to it!

INVEST

Page 17: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

DevOps Large: The Technology Ceiling

Can you really do Continuous Delivery with your current architecture and systems?

Designed for Continuous Delivery?• Vendor systems from the 90s• No unit testing• Slow/No build automation• Monolithic code bases/systems• Poor monitoring / logging

No matter how good your team is your technology sucks!

Page 18: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Procurement strategy based on DevOps

Can you really do Continuous Delivery with your current architecture and systems?

Designed for Continuous Delivery?• Vendor systems from the 90s• No unit testing• Slow/No build automation• Monolithic code bases/systems• Poor monitoring / logging

No matter how good your team is your technology sucks!

INVEST

Page 19: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

DevOps Small<aka DevOps Fun/>

Page 20: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

• Selling in over 100 countries. Flagship store in Covent Garden• Hand made in Great Britain in our own factory.

• Opportunity to re-invent the technology, teams and ways of working• Autumn 2014 - Website in urgent need of a re-platform• DevOps and BDD fundamental to the way we work and technology strategy

DevOps Small: Cambridge Satchel

Founded 2008 by Julie Deane OBE, 120 Staff

£600 initial investment in 2008has led to £10M+ total revenues

Page 21: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

What if….<clean sheet of paper/>

Page 22: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

App Strategy based on DevOps

Clean sheet of paper. Design and Build Team and Technology from the ground up with DevOps in mind.

Designed for Continuous Delivery:• End to End Test Automation• Build and Deploy Automation• DevOps culture• Code Reviews• API focus / API Mocks• Behaviour Driven Development• Cloud Dev Tooling • Cloud Infrastructure• Software

API

Web

App

Page 23: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Cambridge Satchel

2014

28th NovemberBlack Friday

, “Can’t be done!” ;-)

arrive

Q: How do you develop, test & deploy software?• Tell me about DevOps and BDD?• How much of my budget is for automation?• Will I be left with legacy? Where’s the code?• Is my architecture decoupled?

Crazy!

Page 24: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Cambridge Satchel – dream team please!

2014

28th NovemberBlack Friday

20% Service Integrator Developers

20% Internal Engineers

20% API & Middleware Developers

20% BDD & Exploratory Testing

20% DevOps/AWS Skills

35K in 2013

Page 25: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Cambridge Satchel

2014

28th NovemberBlack Friday

launch

35K in 2013

87K in 2014On new platform

WE DID IT!

Cambridge Satchel nominated for Demandware Pacesetter Award

Page 26: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Some tips<thoughts on how to start/>

Page 27: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

Which needs to be fast moving?

Which are tied to corporate release cycles

Which have automated tests?

Define & decouple your ‘Pace Layers’

Page 28: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Fight the right battles with your legacy

Where you invest your $$ is critical. Invest in DevOps where it

matters.

You can always start somewhere

DevOps without legacy is easy.Front End UI

FinanceSystems

Payment

Order Mgt

CoreEcomm

DigitalAsset

Cust.Mgt

Apps

Page 29: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Enterprise equilibrium tends to push your DevOps adoption

backwards

Watch out for corporate equilibrium

Make the wrong choice and the forces may be working against

your goal of faster delivery.

Wrong technology choice

Wrong hiring policy

Wrong contractual & financial frameworks

Wrong 3rd Party Suppliers

Wrong team objectives &

rewards

Page 30: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Fight the right battles with your legacy

Where you invest your $$ is critical. Invest in DevOps where it

matters.

You can always start somewhere

DevOps without legacy is easy.Front End UI

FinanceSystems

Payment

Order Mgt

CoreEcomm

DigitalAsset

Cust.Mgt

Apps

Page 31: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Reduce size and complexity of slow moving applications

Reduce your legacy and create new capability

Build New initiatives the right way

E.g. consider creating a Front End separation layer enabling parts to

be independently released

NEW

Legacy Zone

Page 32: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

Put all interactions between applications through APIs

Understand the pace layers of your apps and governance needed

How good are the major vendor Ecommerce and Finance/ERP

systems?

Kill Dependencies. Focus on APIs

Front End UI

FinanceSystems

Payment

Order Mgt

CoreEcomm

DigitalAsset

Cust.Mgt

Apps

API

APIAPI

API

API

API

API

API

Centralise your API access (ie Mulesoft)

BDD is great for defining and testing APIs as well as Uis

Page 33: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

When a new initiative comes along and a new team is built to deliver it set the bar high with DevOps operational requirements and ways of working.

Encompass:

• Behaviour Driven Development• Continuous Integration• Continuous Delivery• Full automation• Robust configuration management

Set the bar high for new initiatives / programmes

NEW

Legacy Zone

Don’t create new ‘legacy’

Page 34: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

The team’s level of

agile/lean working practices

Level of Independently testable and deployable software

Low High

Low

High

Slow

Fast

ContinuousDelivery

Daily/WeeklyIndependent

MonthlyCoordinated

QuarterlyEnterprise

TEAM

TECHNOLOGY

API

Shadowy IT, API Economy and DevOps

Accelerating Revenue opportunities by providing robust and agile data services needed throughout the business.

Marketing, Retail and Wholesale teams able to self-serve data and own their own integration with relevant partners delivered with external teams.

Web

App

Finance My Team

Everyone else…

Page 35: Manchester ITExpo Talk:  DevOps large and small - Cambridge Satchel

jmwpro

#jmwproMy blog, these slides and other musings available at:

Thanks for listening