57
AGILE LONDON MARCH 2016 @STEVE2358 @SIMONTARRY76 TICKETMASTER

Agile London at Ticketmaster

Embed Size (px)

Citation preview

Page 1: Agile London at Ticketmaster

AGILE LONDON MARCH 2016 @STEVE2358 @SIMONTARRY76

TICKETMASTER

Page 2: Agile London at Ticketmaster

2

TICKETMASTER A DIVISION OF LIVE NATION ENTERTAINMENT

Page 3: Agile London at Ticketmaster

3

TICKETMASTER INTERNATIONAL

Page 4: Agile London at Ticketmaster

4

TICKETMASTER INTERNATIONAL

Page 5: Agile London at Ticketmaster

WE SOLVE BIG TECHNICAL CHALLENGES!

WHY TICKETMASTER? 5

Handle huge traffic spikes during on-sales

Build e-commerce platforms that scale

Exploit channel fragmentation

Maximise benefits of SEO and social media

Distinguish between traffic from bots and fans

Take advantage of Big Data

Page 6: Agile London at Ticketmaster

DECK TITLE 6

2010

Page 7: Agile London at Ticketmaster

DECK TITLE 7

2016 2016

Page 8: Agile London at Ticketmaster

THIS HAS GIVEN US THE CONFIDENCE TO TACKLE INDUSTRY PROBLEMS:

DECK TITLE 8

DEVOPS

TECHNICAL DEBT

CAREER PROGRESSION

Page 9: Agile London at Ticketmaster

9

DEV OPS

Page 10: Agile London at Ticketmaster

174 ENGINEERS

45 37

32

19

31 TICKETMASTER INTERNATIONAL

Page 11: Agile London at Ticketmaster

Same levels of understanding and skill

Break down barriers & silos

Align and bring teams closer together

Develop & release quality products fast

Ensure stability & reliability

DEVOPS STRATEGY OBJECTIVES

Delivering business value

Efficiency & quality of development

Reliability of applications & environments

Service delivery

4 GOALS: MAXIMISE FOR

Page 12: Agile London at Ticketmaster

TICKETMASTER DEVOPS MODEL 5 MATURITY LEVELS 1315 VIEWS ON OUR TECH BLOG POST!

DECK TITLE 12

CONTINUOUS DEPLOYMENT & DELIVERY

GOAL1 GOAL2 CONTINUOUS INTEGRATION

HEALTHCHECKS, MONITORING & ALERTING

GOAL3 ORGANISATION & CULTURE

GOAL4

Page 13: Agile London at Ticketmaster

FLEXIBLE ROUTES TO TARGETS

Matrices provided Vision and Targets

All teams have the same targets

Teams can plan routes flexibly

Choices based on needs and value

Routes can change as needs change

Page 14: Agile London at Ticketmaster

STANDARDISATION Simplify Tools & Defined Key Specifications

Less support overhead

Solve problems once

Share knowledge

Provide Guidelines & Best Practices

Shared common understanding

Definition of Terms

Speak the same language

Page 15: Agile London at Ticketmaster

TOOLSET

Git Source Control

Gitlab Source Control

Access

Jenkins Application

Builds

SonarQube Quality Reporting

Nexus Release Package Archive

Rundeck Orchestration

Chef Configuration Management

Page 16: Agile London at Ticketmaster

WHERE ARE WE? CUSTOM TOOL TO VISUALISE PROGRESS

Shows progress by

team

Summary Overview

Page 17: Agile London at Ticketmaster

KPI REPORTING SHOWING VALUE

Closing the

loop

Business Continuity

Process Quality

SDLC Efficiency

Page 18: Agile London at Ticketmaster

WHAT HAVE WE LEARNT?

Standardised Tooling Changes how we do things

Good Reporting Changes how we communicate

Good Communication Changes what we believe in

Internal & External to Engineering

Culture is changing!

Page 19: Agile London at Ticketmaster

19

Page 20: Agile London at Ticketmaster

TECHNICAL DEBT

Page 21: Agile London at Ticketmaster

HOUSTON, WE HAVE A TECH DEBT PROBLEM!

13 PLATFORMS 5M LINES OF CODE 200 COMPONENTS >9000 SERVERS

Page 22: Agile London at Ticketmaster

What problem are we trying to solve?

Why do we care?

1. Definition

Research has anyone else done this?

Filter the data

2. Process

Creation of model

Tooling and data capture 3. Results

Make the data usable

4. Report

WHAT DID WE DO?

Page 23: Agile London at Ticketmaster

What problem are we trying to solve?

Why do we care?

1. Definition

Research has anyone else done this?

Filter the data

2. Process

Creation of model

Tooling and data capture 3. Results

Make the data usable

4. Report

WHAT DID WE DO?

Page 24: Agile London at Ticketmaster

THE PROBLEM IS BIGGER THAN US Industry consensus:

• Technical debt is a big problem

• Software decays over time

• Immature industry

• Technical debt lacks credibility as a term

Costs are significant:

Economic

Maintenance 60/60 rule

Psychological

Page 25: Agile London at Ticketmaster

1. Definition

Historically, software engineering has struggled to articulate the problem to a non-technical audience

WHY DO WE CARE?

EFFICIENCY

TOTAL COST OF OWNERSHIP

DEBT MANAGEMENT

VISIBILITY OF DEBT COST

Page 26: Agile London at Ticketmaster

What problem are we trying to solve?

Why do we care?

1. Definition

Research has anyone else done this?

Filter the data

2. Process

Creation of model

Tooling and data capture 3. Results

Make the data usable

4. Report

WHAT DID WE DO?

Page 27: Agile London at Ticketmaster

RESEARCH FINDINGS KEY FINDING 1: TECHNICAL DEBT AS AN INDUSTRY TERM MEANS THE MAINTAINABILITY OF THE APPLICATION CODE

KEY FINDING 2: INFRASTRUCTURE DEBT ISN'T A GENERALLY WELL KNOWN OR WIDELY USED CONCEPT

KEY FINDING 3: ARCHITECTURE DEBT IS A KNOWN CONCEPT WHICH IS NOT WIDELY USED AND THERE IS NO CONSENSUS ON DEFINITION

Page 28: Agile London at Ticketmaster

• Infrastructure Performance

• Scalability • Infrastructure Security • Infrastructure

Maintainability • Continuity • Repeatability • Documentation • Infrastructure

Complexity

TICKETMASTER TECH DEBT MODEL

Application Debt Infrastructure Debt Architecture Debt • Code coverage • Cyclomatic

Complexity • Application

Performance • Application Security • Application

Maintainability

• Deviation from reference architecture

• Flexibility • Single Points of

Failure • Architecture

Complexity

OUR APPROACH TO SOLVING THIS PROBLEM HAS GENERATED A LOT OF INTEREST 13.5K VIEWS ON OUR BLOG POST

Page 29: Agile London at Ticketmaster

What problem are we trying to solve?

Why do we care?

1. Definition

Research has anyone else done this?

Filter the data

2. Process

Creation of model

Tooling and data capture 3. Results

Make the data usable

4. Report

WHAT DID WE DO?

Page 30: Agile London at Ticketmaster

ARCHITECTURE DEBT RESIDES IN THE DESIGN OF THE ENTIRE SYSTEM

APPLICATION DEBT RESIDES IN THE SOFTWARE PACKAGE

INFRASTRUCTURE DEBT RESIDES IN OPERATING ENVIRONMENTS

Page 31: Agile London at Ticketmaster

HOW WE ARE MEASURING IT?

It is essential that the process for measuring technical debt is: • Repeatable • Transparent • Consistent

We have therefore aimed to automate the collection of as many of the metrics as possible via automated tooling: • Application Debt:

• Code coverage, Cyclomatic complexity, Time to Interact, Application security • Infrastructure Debt:

• Infrastructure performance, scalability The remaining debt metrics are covered by a manual process

AUTOMATED TOOLING

Page 32: Agile London at Ticketmaster

High level component diagram of the platform made visible to the whole team.

Each component discussed one by one to reach consensus among the team on the score (similar to an Agile planning session)

DATA CAPTURE

Each team member scores the components on a pre-agreed scale of 1-5 (low debt to high debt)

Team identify work items required in order to remove/reduce the tech debt from each component

MANUAL MAPPING

Work items ordered according to the priority in which the team feel they should be addressed which would have the greatest impact on day to day development

Page 33: Agile London at Ticketmaster

What problem are we trying to solve?

Why do we care?

1. Definition

Research has anyone else done this?

Filter the data

2. Process

Creation of model

Tooling and data capture 3. Results

Make the data usable

4. Report

WHAT DID WE DO?

Page 34: Agile London at Ticketmaster

MAKE THE DATA USABLE

Page 35: Agile London at Ticketmaster

MAKE THE DATA USABLE

35

Heading: Category and

System

Definition: Each definition is accompanied by

its meaning

Score: Current and

target score is listed Highlight Note:

Main update since last report or highlight note.

Top Items to be addressed: The highest priority items to be

addressed, with risk of not addressing them, benefit of the

work and schedule (if known)

Page 36: Agile London at Ticketmaster

MAKE THE DATA USABLE

36

EXECUTIVE SUMMARY: ROLLED UP SCORE

DETAILED BREAKDOWN

TECHNICAL BACKLOGS

Page 37: Agile London at Ticketmaster

TECH DEBT SUMMARY

14% YOY REDUCTION WHAT WE LEARNT:

- APM IS HARD TO MEASURE

- APPLICATION & INFRASTRUCTURE DEBT CAN BE REDUCED TACTICALLY ALONGSIDE FEATURE WORK

- ARCHITECTURE DEBT NEEDS SIGNIFICANT DEDICATED RESOURCE AND STRATEGIC PLAN TO SHIFT

Page 38: Agile London at Ticketmaster

CAREER MAPPING

Page 39: Agile London at Ticketmaster

DECK TITLE 39

Page 40: Agile London at Ticketmaster

WHERE ARE YOU GOING?

Where do you want to go in your career? How are you going to get there? What do you need to learn? What support is there for your career goals/ambitions? What resources do you need to achieve your goals? What are your next steps?

Page 41: Agile London at Ticketmaster

Engineer

Designer

Builder

Tester Problem

Solver

Architect

WHAT ROLES DO YOU PLAY?

DECK TITLE 41

Page 42: Agile London at Ticketmaster

Engineer

Designer

Design

Builder

Development

Tester

Testing

Problem Solver

Support

Architect

Requirements

HOW DO THESE FIT INTO THE SDLC?

DECK TITLE 42

Page 43: Agile London at Ticketmaster

DECK TITLE 43

Engineer

Maintainer

Organiser

Police

Plumber & Electrician

Quality Control

Interior Designer

Surveyor

WHAT OTHER ROLES DO I PLAY?

Page 44: Agile London at Ticketmaster

Engineer

Maintainer

Process and Lifecycle

Organiser

Configuration Management

Police

Security

Plumber & Electrician

Systems Engineering

Quality Control

Quality

Interior Designer

HCI/UX

Surveyor

Measurements

CROSS CUTTING SKILLS

DECK TITLE 44

Page 45: Agile London at Ticketmaster

DEVELOPING A COMPETENCY MODEL

Map Locations Highway Code

Accounting

Communication Service

Drive Taxi Negotiate Traffic

Collect Fares Competency

What I Know (Knowledge, Best

Practices, etc)

How I Do It (Attitudinal, etc)

What I do (Functions, actions,

activities, etc) Skill Type

Taxi Driver Skills Framework

Map Locations - Level 1 - Know Cities Level 2 Know landmarks Level 3 Know post codes Level 4 Knows streets

Driving - Level 1 Drives set routes Level 2 Selects fastest route Level 3 Selects alternative routes in jams

Communication - Level 1 Courteous Level 2 Interested in Customer Level 3 - Conversational

Capability

Technical Skills Professional Skills Behaviour Skills

Page 46: Agile London at Ticketmaster

ENGINEERING COMPETENCY MODEL

Technical Skills Professional Skills Behaviour Skills

Level 1 Level 2 Level 3 Level 4 Level 5

Level 1 Level 2 Level 3 Level 4 Level 5

Foundation Professional

Advanced Expert

Capability

Design & Coding Level 2

Software Construction - Design & Coding

Level 2

Working with Others Professional

Recognised team player

Software Engineer I

Competency Developer Tech Skills

QA Tech Skills, etc

Application Design Writing Code

Testing

Team Work Communication

Engineering Skills Framework

Page 47: Agile London at Ticketmaster

WHAT HAVE WE BASED PROFESSIONAL SKILLS ON?

CAREER MAPPING 47

WHY? Defines activities rather than specific

skills

Can be applied across a broad range of roles

Mapping is flexible and allows for team variations

An IEEE (Institute of Electrical and Electronics Engineers) standards based framework for software engineering professionals

Drawn together from 7 different best practice reference guidelines and standards

Software Engineering Competency Model - SWECOM

Page 48: Agile London at Ticketmaster

SWECOM FRAMEWORK

QBR Q1 2015 MARCH 2015 48

Design Requirements Development Testing Support

Life

cyc

le

SDLC Lifecycle Skills 5 Knowledge Areas

These are the activities required to create, release and maintain software which is what we DO!

Your core focus will differ depending on your role group

Page 49: Agile London at Ticketmaster

SWECOM FRAMEWORK

QBR Q1 2015 MARCH 2015 49

Design Requirements Development Testing Support

Measurements

Configuration Management

Security

Quality

Systems Engineering

Process & Lifecycle

Life

cyc

le

Cro

ss-C

utt

ing

Cross-cutting skills 7 Knowledge Areas

Activities that traverse the lifecycle skills

Sometimes areas

HCI / UX

Page 50: Agile London at Ticketmaster

BUILDING THE TM FRAMEWORK

QBR Q1 2015 MARCH 2015 50

Life

cyc

le

Cro

ss-C

utt

ing

Design Requirements Development Testing Support

Measurements

Configuration Management

Security

Quality

Systems Engineering

Process & Lifecycle

HCI / UX

QA Developer Front-end Achitects Devops

Technical

Service Excellence

Personal Effectiveness

Team Work

Visioning Process Be

ha

vio

urs

technical and behavioural skills

Page 51: Agile London at Ticketmaster

COMPETENCY FRAMEWORK

DECK TITLE 51

Consistency across roles in engineering teams

Common language of skills

Flexible framework which can be modified as required

Training needs identified

5 levels of requirements,

skills, knowledge, behaviour

Page 52: Agile London at Ticketmaster

TECHNICAL COMPETENCY MATRIX Competency Tools

Capabilities Capabilities Capabilities Capabilities Capabilities

Page 53: Agile London at Ticketmaster

BEHAVIOURAL MATRIX

Page 54: Agile London at Ticketmaster

PROGRESSION GUIDE A consistent set of levels of attainment for each role:

Cross cutting skills (e.g. Security)

SDLC skills (e.g. Development)

Technical skills (e.g. Data storage)

Behavioural skills (e.g. working with others)

Core competencies are highlighted:

These define the skill levels that must be reached in order to progress your career

Page 55: Agile London at Ticketmaster

DECK TITLE 55

DEVOPS

TECHNICAL DEBT

CAREER PROGRESSION

Page 56: Agile London at Ticketmaster

CREATING THE FUTURE OF LIVE ENTERTAINMENT!

Q&A

DECK TITLE 56

Page 57: Agile London at Ticketmaster

THANK YOU Stephen Williams: VP Engineering E: [email protected]

T: @Steve2358

Simon Tarry: Director of Engineering Strategy E: [email protected]

T: @simontarry76

LNEJOBS.COM