the changing role of release engineering in a devops world

87
THE CHANGING ROLE OF RELEASE ENGINEERING IN A DEVOPS WORLD J. Paul Reed Managing Partner

Upload: perforce

Post on 26-Jan-2017

268 views

Category:

Software


0 download

TRANSCRIPT

Page 1: The Changing Role of Release Engineering in a DevOps World

THE CHANGING ROLE OF RELEASE ENGINEERING IN A DEVOPS WORLD J. Paul Reed Managing Partner

Page 2: The Changing Role of Release Engineering in a DevOps World

J. PAUL REED• @jpaulreed on

• Managing Partner at Release Engineering Approaches

• The Ship Show alumnus

• 15+ years build/release engineering experience

• Today: A “DevOps™ Consultant”

@jpaulreed

Page 3: The Changing Role of Release Engineering in a DevOps World

A LITTLE SURVEY...

@jpaulreed

Page 4: The Changing Role of Release Engineering in a DevOps World

BACK IN THE DAY

Humble Beginnings as a Build/Release Monkey...

@jpaulreed

Page 5: The Changing Role of Release Engineering in a DevOps World

BACK IN THE DAY

@jpaulreed

Page 6: The Changing Role of Release Engineering in a DevOps World

SHIPPIN’ BITS

@jpaulreed

Page 7: The Changing Role of Release Engineering in a DevOps World

“Yeeahhh... so what would you... say ya do here?”

@jpaulreed

Page 8: The Changing Role of Release Engineering in a DevOps World

THE ELEPHANT IN THE ROOM

@jpaulreed

Page 9: The Changing Role of Release Engineering in a DevOps World

WE ALL AGREE ON DEVOPS, RIGHT?

@jpaulreed

Page 10: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Please explain to me: what exactly is DevOps?

@jpaulreed

Page 11: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Please explain to me: what exactly is DevOps? @jpaulreed

Page 12: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Ok, what specific things would we do to get

DevOps “tools & culture?”

@jpaulreed

Page 13: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Ok, what specific things would we do to get DevOps “tools & culture?” @jpaulreed

Page 14: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Uhm... so what technological capabilities will we gain if we

“Do DevOps?”

@jpaulreed

Page 15: The Changing Role of Release Engineering in a DevOps World

WHAT WE LOOK LIKE ANSWERING...

Uhm... so what technological capabilities will we gain if we “Do DevOps?”

@jpaulreed

Page 16: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 17: The Changing Role of Release Engineering in a DevOps World

REQUISITE SILO PHOTO

@jpaulreed

Page 18: The Changing Role of Release Engineering in a DevOps World

REQUISITE SILO PHOTO

De

ve

lop

me

nt

Op

era

tio

ns

@jpaulreed

Page 19: The Changing Role of Release Engineering in a DevOps World

REQUISITE SILO PHOTO

De

ve

lop

me

nt

Op

era

tio

ns

Pro

du

ct

Ma

na

ge

me

nt

Sa

les/

Ma

rke

tin

g

@jpaulreed

Page 20: The Changing Role of Release Engineering in a DevOps World

A SMALL DIGRESSION ON SILOS...

@jpaulreed

Page 21: The Changing Role of Release Engineering in a DevOps World

ACTUAL SILOS

@jpaulreed

Page 22: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

s

@jpaulreed

Page 23: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

s

@jpaulreed

Page 24: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

s

@jpaulreed

Page 25: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

s

De

vO

ps

@jpaulreed

Page 26: The Changing Role of Release Engineering in a DevOps World

“Yeeahhh... so what kind of DevOps... would you... say ya do here?”

@jpaulreed

Page 27: The Changing Role of Release Engineering in a DevOps World

•Configuration Management

•Continuous Integration

•Developing & Supporting Deployment / Pipeline Tools

•Dependency / Artifact Management

•Versioning / SCM

•Operations (Maybe?)

WHAT DO “DEVOPS TEAMS” DO?

@jpaulreed

Page 28: The Changing Role of Release Engineering in a DevOps World

What did we used to call these things?

@jpaulreed

Page 29: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 30: The Changing Role of Release Engineering in a DevOps World

NOTES:

• This can be used for quotations, testimonials, tweets, etc.

• Move the quotation marks depending on your text length so that it appears like this example

• Also move the name attribution depending on text lenth so that it’s like this example

Continuous Delivery Is A Set Of Principles And Practices To Reduce The Cost, Time, And Risk Of Delivering Incremental Changes To Users.

- J e z H u m b l e

@jpaulreed

Page 31: The Changing Role of Release Engineering in a DevOps World

Continuous Delivery is your Organization—

Your Entire Organization—caring about

release engineering and quality assurance

in a way it has never cared about them

before. Ever. — J. Paul Reed

@jpaulreed

Page 32: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

s

De

vO

ps

@jpaulreed

Page 33: The Changing Role of Release Engineering in a DevOps World

BACK TO SILOS

De

v

Op

sR

ele

ase

E

ng

ine

eri

ng

@jpaulreed

Page 34: The Changing Role of Release Engineering in a DevOps World

ANYONE ELSE FEEL LIKE...

@jpaulreed

Page 35: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 36: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 37: The Changing Role of Release Engineering in a DevOps World

People Care!

@jpaulreed

Page 38: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 39: The Changing Role of Release Engineering in a DevOps World

SYSTEMS THINKING IS A THING™

@jpaulreed

Page 40: The Changing Role of Release Engineering in a DevOps World

RESOURCES!

@jpaulreed

Page 41: The Changing Role of Release Engineering in a DevOps World

PAIN IS SHARED

@jpaulreed

Page 42: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 43: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 44: The Changing Role of Release Engineering in a DevOps World

“[Computing] is pop culture. I'm not against pop culture. But pop culture holds a disdain for history.

Pop culture is all about identity and feeling like you're participating. It has nothing to do with cooperation, the past or the future — it's living in the present.

I think the same is true of most people who write code for money.

They have no idea where [their culture came from].”— Alan Kay

@jpaulreed

Page 45: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 46: The Changing Role of Release Engineering in a DevOps World

VERSIONING IS FUN

@jpaulreed

Page 47: The Changing Role of Release Engineering in a DevOps World

VERSIONING IS FUN

@jpaulreed

Page 48: The Changing Role of Release Engineering in a DevOps World

VERSIONING IS FUN

@jpaulreed

Page 49: The Changing Role of Release Engineering in a DevOps World

VERSIONING IS FUN

@jpaulreed

Page 50: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 51: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 52: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 53: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 54: The Changing Role of Release Engineering in a DevOps World

1ST LAW OF DEVOPSDYNAMICS

@jpaulreed

Page 55: The Changing Role of Release Engineering in a DevOps World

WELCOME ABOARD THE SS DOCKER!

@jpaulreed

Page 56: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 57: The Changing Role of Release Engineering in a DevOps World

VISIBILITY IS HARD

@jpaulreed

Page 58: The Changing Role of Release Engineering in a DevOps World

IF YOU STARE AT THIS ALL DAY...

@jpaulreed

Page 59: The Changing Role of Release Engineering in a DevOps World

The best single question for testing an organization’s character is: What happens when people make mistakes?

-Robert I. Sutton

@jpaulreed

Page 60: The Changing Role of Release Engineering in a DevOps World

SORRY... NO ONE WANTS THESE

@jpaulreed

Page 61: The Changing Role of Release Engineering in a DevOps World

LIKE UBER, BUT FOR RELENG

@jpaulreed

Page 62: The Changing Role of Release Engineering in a DevOps World

THE HARD TRUTH

@jpaulreed

Page 63: The Changing Role of Release Engineering in a DevOps World

[It’s] important to understand the strategy,

the context, and the value that’s important to your

organization; and then how you play into those.

— Dr. Nicole Forsgren, Chef

@jpaulreed

Page 64: The Changing Role of Release Engineering in a DevOps World

Until you take the time to sit and understand that, DevOps for the sake of DevOps doesn’t matter.

— Dr. Nicole Forsgren, Chef

@jpaulreed

Page 65: The Changing Role of Release Engineering in a DevOps World

THE CRUEL PUNCHLINE…

•Deployment Frequency

•Lead Time for Changes

•Mean Time to Recover

The Single Practice Correlated to Improvement in…

@jpaulreed

Page 66: The Changing Role of Release Engineering in a DevOps World

THE CRUEL PUNCHLINE…

•Deployment Frequency

•Lead Time for Changes

•Mean Time to Recover

The Single Practice Correlated to Improvement in…

Use of Version Control for All Production Artifacts

@jpaulreed

Page 67: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 68: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 69: The Changing Role of Release Engineering in a DevOps World

3 WEIRD TRICKS

•Complexity-informed

•Accounts for the entirety of the system (systems thinking)

•Address human factors

1. Every release engineering strategy you deploy must to be:

@jpaulreed

Page 70: The Changing Role of Release Engineering in a DevOps World

CYNEFIN SIDEBAR

@jpaulreed

Page 71: The Changing Role of Release Engineering in a DevOps World

CYNEFIN SIDEBAR

@jpaulreed

Page 72: The Changing Role of Release Engineering in a DevOps World

CYNEFIN SIDEBAR

@jpaulreed

Page 73: The Changing Role of Release Engineering in a DevOps World

3 WEIRD TRICKS

•Complexity-informed

•Accounts for the entirety of the system (systems thinking)

•Address human factors

1. Every release engineering strategy you deploy must to be:

@jpaulreed

Page 74: The Changing Role of Release Engineering in a DevOps World

HUMAN FACTORS?

@jpaulreed

Page 75: The Changing Role of Release Engineering in a DevOps World

HUMAN FACTORS?

@jpaulreed

Page 76: The Changing Role of Release Engineering in a DevOps World

3 WEIRD TRICKS

2. If you[r team] is not involved in some sort of continuous improvement, you should be worried.

@jpaulreed

Page 77: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 78: The Changing Role of Release Engineering in a DevOps World

3 WEIRD TRICKS

3. If you[r team] is not working on a continuous delivery pipeline, you should be worried.

@jpaulreed

Page 79: The Changing Role of Release Engineering in a DevOps World

@jpaulreed

Page 80: The Changing Role of Release Engineering in a DevOps World

BONUS TRICK!

4. Find allies!

(There are some weird ones out there these days!)

@jpaulreed

Page 81: The Changing Role of Release Engineering in a DevOps World

H O W D O T H E Y I N T E R S E C T ?

R E L E A S E E N G I N E E R I N G A N D R U G G E D D E V O P S :

@jpaulreed

Page 82: The Changing Role of Release Engineering in a DevOps World

@petecheslock

DevOps

Sec

@hijinksensue(via @petecheslock) @jpaulreed

Page 83: The Changing Role of Release Engineering in a DevOps World

One vulnerable library in your product

is a security problem.

Multiple copies of a vulnerable library in your product

is a release engineering problem. — @jpaulreed

@jpaulreed

Page 84: The Changing Role of Release Engineering in a DevOps World

One vulnerable library in your product

is a security problem.

Multiple versions of a vulnerable library in your product

is a release engineering problem. — J. Paul Reed

Page 85: The Changing Role of Release Engineering in a DevOps World

BULLISH ON RELEASE ENGINEERING

@jpaulreed

Page 86: The Changing Role of Release Engineering in a DevOps World

J. Paul Reed www.jpaulreed.com

@jpaulreed

www.release-approaches.comSimply Ship. Every Time.

Page 87: The Changing Role of Release Engineering in a DevOps World

Adoption of Agile & DevOps methodologies is a journey, and every person and organization’s journey is going to be different.

-J. Paul Reed

DevOps in Practice

J. Paul Reed

http://jpaulreed.com/devops-in-practice@jpaulreed