You Cannot Buy Technical Excellence

83
It’s Impossible to Buy Technical Excellence Antti Kirjavainen

description

 

Transcript of You Cannot Buy Technical Excellence

Page 1: You Cannot Buy Technical Excellence

It’s Impossible to Buy Technical ExcellenceAntti Kirjavainen

Page 2: You Cannot Buy Technical Excellence

It’s really

freaking madness to try to buy for or control Technical ExcellenceAntti Kirjavainen

Page 3: You Cannot Buy Technical Excellence
Page 4: You Cannot Buy Technical Excellence

Photo by Casey Konstantin

Page 6: You Cannot Buy Technical Excellence

Inbox ZeroFrom Inboxzero.com

Page 7: You Cannot Buy Technical Excellence

Technical Excellence

Page 8: You Cannot Buy Technical Excellence

Continuous attention to technical excellence and good design enhances agility.

Technical Excellence

Page 9: You Cannot Buy Technical Excellence

quality code, sound architecture, good test automation and coverage, continuous integration and continuous deployment.

Examples of Technical Excellence

Page 10: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda

Page 11: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Page 12: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda

Jan-2013 Feb-2013 Mar-2013 Apr-2013 May-20130

20

40

60

80

100

120

82

722

87

4

18

9378

13

96

Ratio of Value Adding and Fixing Work

Feature work Fixing work Number of defects

Page 13: You Cannot Buy Technical Excellence

building it right

to

maximize delivery potential

Technical Excellence

Page 14: You Cannot Buy Technical Excellence

Traditional “Solutions”

Page 15: You Cannot Buy Technical Excellence

Alert

Alert!

Your organizationmight be suffering from a

Legacy mindset.Photo by Jeremiah Owyang

ProcessesAndpolicies

Page 16: You Cannot Buy Technical Excellence

Test Coverage Policy: The Idea

>60% Unit Test Coverage

Regular reports

Quality

Page 17: You Cannot Buy Technical Excellence

Test Coverage Policy: The Reality

>60% Unit Test Coverage

Regular reports

Lots of tests doing

nothing but adding % of test coverage

Page 18: You Cannot Buy Technical Excellence

Alert

Alert!

Your organizationmight be suffering from a

Legacy mindset.

Contract clauses

Page 19: You Cannot Buy Technical Excellence

Contract with a Warranty Period

Development

Acceptance Testing

Support, warranty period

6 months

We’ll fix all the defects for free during these periods!We’ll fix all the defects for free during these periods!

Page 20: You Cannot Buy Technical Excellence

Contract with a Warranty Period

Development

Acceptance Testing

Support, warranty period

6 months

Page 21: You Cannot Buy Technical Excellence

Prioritization by Business value

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 22: You Cannot Buy Technical Excellence

Example from Real Life: The Plan

Backlog A

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Backlog B

Feature 1

Feature 2

Feature 3

Feature 4

Backlog C

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Feature 7

15

mon

ths

Page 23: You Cannot Buy Technical Excellence

Example from Real Life: The Reality

Backlog A

Architectural feature I

Feature 1

Feature 2

Architectural feature II

Feature 3

Feature 4

Feature 5

Feature 6

Backlog B

Integration work I

Feature 1

Feature 2

Additional feature I

Feature 3

Feature 4

Backlog C

Architectural feature III

Feature 1

Feature 2

Integration work II

Feature 3

Additional feature II

Feature 4

Feature 5

Feature 6

Feature 7

12

mon

ths

to g

o

Page 24: You Cannot Buy Technical Excellence

Example from Real Life: The Decision

Backlog A

Architectural feature I

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Backlog B

Integration work I

Feature 1

Feature 2

Additional feature I

Feature 3

Feature 4

Backlog C

Architectural feature III

Feature 1

Feature 2

Feature 3

Additional feature II

Feature 4

Feature 5

Feature 6

Feature 7

6 m

on

ths

to

go

Arch

itectu

ral featu

re II

Integration work II

Duct tape & chewing gum solutions

Page 25: You Cannot Buy Technical Excellence

Old approaches do not solve the problem

Processes and policies

Business value prioritization

Contract clauses

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 26: You Cannot Buy Technical Excellence

Why?

Page 27: You Cannot Buy Technical Excellence

Traditional Management Paradigm:Extrinsic motivation

Desire to achieve goal GReward result RAssume R leads to G

Problems with non-linear effects

From Management 3.0 by Jurgen Appelo

Page 28: You Cannot Buy Technical Excellence

Non-linear effects in SW dev

We are here

From Management 3.0 by Jurgen Appelo

Page 29: You Cannot Buy Technical Excellence

New Management Paradigm:Intrinsic motivation

Desire to achieve goal GWhere G is its own reward

No non-linear effects

From Management 3.0 by Jurgen Appelo

Page 32: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Understanding

Page 33: You Cannot Buy Technical Excellence

SkillsFrom Inboxzero.com

Page 34: You Cannot Buy Technical Excellence

Autonomy

Page 35: You Cannot Buy Technical Excellence

Discipline

Antti Leinonen, Sirkus Magenta, photo by Tuomas Stenbäck

Page 36: You Cannot Buy Technical Excellence

MotivationUnderstandingSkillsAutonomyDiscipline

Requires

Page 37: You Cannot Buy Technical Excellence

Contracting Point of View

Shared

Motivation

Understanding

Discipline

Trust enables

Autonomy

Contractor brings

Skills

+Understanding

+Discipline

Page 38: You Cannot Buy Technical Excellence

Good Patterns

Page 39: You Cannot Buy Technical Excellence

Contracting

Contractor dev team

IT (customer)

Business (customer)

Page 40: You Cannot Buy Technical Excellence

Contracting: Lead from customer

Contractor dev team

IT (customer)

Business (customer)

Page 41: You Cannot Buy Technical Excellence

Contracting: Lead from customer

Joint dev team

IT (customer)

Business (customer)

Page 42: You Cannot Buy Technical Excellence

Who should define indicators / metrics?

DevelopersBusiness

IT / architectsManagers

Page 43: You Cannot Buy Technical Excellence

Test Coverage Policy

>60% Unit Test Coverage

Regular reports

Lots of tests doing

nothing but adding % of test coverage

Page 44: You Cannot Buy Technical Excellence

What would the Experts choose instead?

Leading Indicators

Lagging Indicators

Technical Quality

Sound Architecture

Developers

Page 45: You Cannot Buy Technical Excellence

Let excellence grow in circles or guilds!

Team A

Team C

Team B

Team D

Page 46: You Cannot Buy Technical Excellence

Let excellence grow in circles or guilds!

DevOps Circle

Team A Team B

Team C Team D

Page 47: You Cannot Buy Technical Excellence

Houston Inc. Frontend Circle

Frontend Circle

Board ofdirectors

Houston Personn

el

Customers & sales

Where

to

invest

Outside world

Houston Inc.

ProtosTraining

Feedback

Ideas

Visibility

Cred

Outside frontend

scene

Conferences + events

Page 48: You Cannot Buy Technical Excellence

Involve devs on left side of value stream

Initiatives Validation Portfolio Backlog Preparation Developme

nt Deploy Learn

developersbusiness IT / architects

Page 49: You Cannot Buy Technical Excellence

Involve devs on left side of value stream

Initiatives Validation Portfolio Backlog Preparation Developme

nt Deploy Learn

developersbusiness IT / architects

Options for solution

Risks

Concept

Page 50: You Cannot Buy Technical Excellence

Breakdown of Work

Vision

Business Goals

Capabilities

Features

Adapted from BDD in the Large by Liz Keogh

Page 51: You Cannot Buy Technical Excellence

Option for Solution Study

Goal Who HowWhat

Deliverable

Impact Mapping

From Impact Mapping by Gojko Adzic

Page 52: You Cannot Buy Technical Excellence

Impact Mapping

Goal Who How What

Improve time to market of big

features in service A

Developers

Do major refactoring of the

code

Refactor high-priority areas

Do a complete rewrite of the

system

Build new system

Do the data migration

Replace the backend with a

new system

Build API over backend

Develop new backend for high-

priority stuff

BusinessLimit new features in progress

Prioritize new feature requests

Page 53: You Cannot Buy Technical Excellence

Impact Mapping

Improve time to market of big

features in service A

Developers

Do major refactoring of the

code

Refactor high-priority areas

Do a complete rewrite of the

system

Build new system

Do the data migration

Replace the backend with a

new system

Build API over backend

Develop new backend for high-

priority stuff

BusinessLimit new features in progress

Prioritize new feature requests

Goal Who How What

Page 54: You Cannot Buy Technical Excellence

Things to Consider

Page 55: You Cannot Buy Technical Excellence

Hiring

Page 56: You Cannot Buy Technical Excellence

MotivationUnderstandingSkillsAutonomyDiscipline

Hiring

Page 57: You Cannot Buy Technical Excellence

Picking a contractor

Page 58: You Cannot Buy Technical Excellence

MotivationUnderstandingSkillsAutonomyDiscipline

Picking a contractor

Page 59: You Cannot Buy Technical Excellence

Individuals and interactions

Close collaboration

Get to know your prospective contracting developers well

Picking a contractor

Page 60: You Cannot Buy Technical Excellence

Conclusions

Page 61: You Cannot Buy Technical Excellence

building it right

to

maximize delivery potential

Technical Excellence

Page 62: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda

Page 63: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Page 64: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda

Jan-2013 Feb-2013 Mar-2013 Apr-2013 May-20130

20

40

60

80

100

120

82

722

87

4

18

9378

13

96

Ratio of Value Adding and Fixing Work

Feature work Fixing work Number of defects

Page 65: You Cannot Buy Technical Excellence

Old approaches do not solve the problem

Processes and policies

Business value prioritization

Contract clauses

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 66: You Cannot Buy Technical Excellence

Traditional Management Paradigm:Extrinsic motivation

Desire to achieve goal GReward result RAssume R leads to G

Problems with non-linear effects

From Management 3.0 by Jurgen Appelo

Page 67: You Cannot Buy Technical Excellence

New Management Paradigm:Intrinsic motivation

Desire to achieve goal GWhere G is its own reward

No non-linear effects

From Management 3.0 by Jurgen Appelo

Page 69: You Cannot Buy Technical Excellence

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Understanding

Page 70: You Cannot Buy Technical Excellence

Inbox ZeroFrom Inboxzero.com

Page 71: You Cannot Buy Technical Excellence

Autonomy

Page 72: You Cannot Buy Technical Excellence

Discipline

Antti Leinonen, Sirkus Magenta, photo by Tuomas Stenbäck

Page 73: You Cannot Buy Technical Excellence

Contracting Point of View

Shared

Motivation

Understanding

Discipline

Trust enables

Autonomy

Contractor brings

Skills

+Understanding

+Discipline

Page 74: You Cannot Buy Technical Excellence

Contracting: Lead from customer

Joint dev team

IT (customer)

Business (customer)

Page 75: You Cannot Buy Technical Excellence

Involve devs in choosing indicators

Leading Indicators

Lagging Indicators

Technical Quality

Sound Architecture

Developers

Page 76: You Cannot Buy Technical Excellence

Let excellence grow in circles or guilds!

DevOps Circle

Team A Team B

Team C Team D

Page 77: You Cannot Buy Technical Excellence

Involve devs on left side of value stream

Initiatives Validation Portfolio Backlog Preparation Developme

nt Deploy Learn

developersbusiness IT / architects

Options for solution

Risks

Concept

Page 78: You Cannot Buy Technical Excellence

Hiring

MotivationUnderstanding

Discipline

Page 79: You Cannot Buy Technical Excellence

Picking a contractor

Skills Motivation Understanding Discipline

Page 81: You Cannot Buy Technical Excellence

Maximize the ImpactPhoto by Spettacolopuro

Page 82: You Cannot Buy Technical Excellence

Thank you for your attention

Page 83: You Cannot Buy Technical Excellence

Antti [email protected]@anttiki

http://www.slideshare.net/AnttiKirjavainen/http://learninggamedev.wordpress.com/http://www.houston-inc.com/