40
Product Owner Project Manager Clinton Wolfe @clintoncwolfe Productive Making Your { { } }

Making Your Product Manager Productive by Clinton Wolfe

Embed Size (px)

Citation preview

Product OwnerProject Manager

Clinton Wolfe @clintoncwolfe

Productive

Making Your

{ {} }

• Dev => DevOps, lots of consulting

• Former DevOps Practice Lead at

OmniTI

• Now Senior Cloud Architect at Relus

Who am I?

Personal photo

Agile, “Agile", or agile

Some Assumptions about Your Org

Via blogspot

Product team run by executives

Some Assumptions about Your Org

kodos via flickr

Engineering vs Product Friction

tambako via flickr / CC-BY

Some Assumptions about Your Org

What is this all about?

PRODUCT+ DEV+ OPS

-----------PROFIT

The Bad Old Days

Product Dev QA Ops

Uncoordinated promotionCoordinated promotionFeedback loop

Enter Agile

Product Dev QA Ops

Uncoordinated promotionCoordinated promotionFeedback loop

Enter Continuous Integration

Product Dev QA Ops

Uncoordinated promotionCoordinated promotionFeedback loop

Enter DevOps

Product Dev

QA

Ops

Uncoordinated promotionCoordinated promotionFeedback loop

Missing Feedback

Product Dev

QA

Ops

Uncoordinated promotionCoordinated promotionFeedback loop

• Represents customer needs• Defines features

Product, PO, PM…

Product Owner (PO)

via teamjimmyjoe

Project Manager (PM)

Product, PO, PM…

• Schedules resources• Worries about a plan

via clipartfox

Are PO’s/PM’s Terrible People Sent to Spread Hate

and Misery?

via lifebuzz

Are PO’s/PM’s Terrible Ogres Sent to Spread Hate

and Misery?

NO!

• Understand a PO

• Understand a PM

• Identify conflicts

• Build bridges

Changing the Dynamic

Via blogspot

• Often “non-technical”

• Defends the team to the

customer

• Little control over outcomes

• Transitional role

Meet Your PO

via lifebuzz

• Quantitative / financial background?

• “Plan the work, work the plan”

• PMP certification - “waterfall” thinking

• Often first software project

Meet Your PM

via oldpix

• Lonely

• Afraid

• Stressed

Life as a PM/PO

bernard goldbach via flickr / CC-BY

Bricks in the Wall

Product Dev

QA

Ops

The PO/PM doesn’t understand any technical details!

Conflict Point: Common Language

The engineers speak in technobabble!

“I feel misunderstood”

Dev / Ops: PO / PM:

Can you speak in customer language?

Personal investment, workmanship bias

Being “Non-Technical”

ctak via flickr

To be a PO:

• Negotiation, compromise

• Business domain knowledge

• People skills, patience, listening

Being “Non-Technical”

Via brauctworks

Solution: Vocabulary Corner

krista kennedy via flickr / CC-BY

It doesn’t matter how much we plan, there will always be

unexpected work.

Conflict Point:Unexpected Work

When we commit to a sprint, that’s exactly the work I as a PO expect to happen - anything else is unauthorized.

“No one understands where work comes from,or who commits to it.”

Dev / Ops: PO / PM:

Planned Work

Features

Infrastructure

Process improvement

Unplanned Work

Incidents

Emergent tasks

Rework

Types of Work

See The Goal and The Phoenix Project

• Involve Ops early

• Validate across functions

• Track dependencies

Unplanned Work - Emergent

kevin o’mara via flickr / CC-BY

• CI Pipeline!

• Automate to reduce error

• Add testing upstream

• Reach out, build trust

Unplanned Work - Rework

via imgur

To reduce incidents:“DevOp more”

via whoopsiepic

Unplanned Work - Incidents

PMs expect software developmentand operations to be predictable,

and it simply never will be.

Conflict Point: Estimation

The engineers can’t be trusted to give good estimates, and my schedules keep getting ruined!

“I cannot control the outcomesfor which I am accountable.”

Dev / Ops: PO / PM:

• Ops unfamiliar with Agile estimation

• Modeling => loss of detail

• Points have one input, one output

• Discards a lot of context and risk data

Conflict Point: Estimating Work

BestCase Typical Worst

Case Expected Risk Index

A 3 4 20 6.5 0.8

B 1 4 20 6.2 0.8

C 3 4 5 4 0.2

Inputs:• Best-Case• Typical• Worst-Case

Outputs:• Expected Effort

• (1xBest + 4xTypical + 1xWorst) / 6• Risk

• 1 - (Typical / Worst)

Solution: Three Estimates

See Software Estimation by Steve McConnell - p120

Every service must be scalable, monitorable, manageable -

basically, operable.

Conflict Point: Ops Needs

The customer didn’t ask for monitoring; we’re not going do it.

Later: Why do we keep getting surprised by outages?

“Operations needs are not considered…until too late.”

Dev / Ops: PO / PM:

• Early ops consults

• Whole team can add missed

stories

• Focus on working deployed

software

• Make tradeoffs clear

• inoperable == missed SLAs

Tactical: Operational Needs

egonsarv via pintrest

Separate Dev and Ops

CTO

VP Eng

Product Team A

Dev

Dev

Product Team B

Dev

Dev

QA Team

QAE

QAE

VP Ops

DB Team

DBA

DBA

Sys Team

SRE

SRE

Cross Functional TeamsCTO

Frontend Team

Dev

Dev

QAE

DBA

SRE

API Team

Dev

Dev

QAE

DBA

SRE

Cross Functional TeamsCTO

Frontend Team

Dev

Dev

QAE

DBA

SRE

API Team

Dev

Dev

QAE

DBA

SRE

DB Guild

Cross Functional Teams

Ops Guild

QA Guild

CTO

Frontend Team

Dev

Dev

QAE

DBA

SRE

API Team

Dev

Dev

QAE

DBA

SRE

Joy of ProdDevQaOps

Product Dev

QA

Ops

Uncoordinated promotionCoordinated promotionFeedback loop

• @clintoncwolfe• Ops => DevOps mentor

Reach Out

marji beach via flickr / CC-BY