61
Swim! Don’t Sink... Why Training Maers to an SRE / DevOps Practice Jennifer Petoff (aka Dr. J) Twier: @jennski Global Head of SRE EDU at Google

Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink...

Why Training Matters to an SRE / DevOps Practice

Jennifer Petoff (aka Dr. J)Twitter: @jennski

Global Head of SRE EDU at Google

Page 2: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Jennifer Petoff (aka Dr. J)

Google Ireland

● Ph.D. in Chemistry

● 13 years at Google

● Lead the SRE EDU team

● Co-editor of the SRE Book

● Part-time Travel Blogger at Sidewalk Safari

Page 3: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Poll: What types of training experiences have you encountered?

Page 4: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Why is training important?

Page 5: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 6: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 7: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 8: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Continuum of Training Options

Low high

“Sink or Swim”

Self-study curriculum

Buddy System

Ad hoc classes

Systematic Training Program

Effort

Page 9: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Continuum of Training Options

Low high

“Sink or Swim”

Self-study curriculum

Buddy System

Ad hoc classes

Systematic Training Program

Effort

● Avoid “Sink or Swim” if you value inclusivity ○ Breeds stress, frustration, attrition○ Imposter syndrome

Page 10: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Continuum of Training Options

Low high

“Sink or Swim”

Self-study curriculum

Buddy System

Ad hoc classes

Systematic Training Program

Effort

● Higher touch options signal:○ Leadership commitment to the development of employees○ Ensure everyone is speaking with one voice○ Help imbibe the desired culture○ Reinforce desired behaviors

Page 11: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

What should I teach?

Page 12: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Organizational Dimensions That Inform Training Needs

Maturitylow ..high

Familiarity

Experience

Of your organization in adopting SRE or DevOps principles,practices, and culture

Knowledge that individual engineers have about your organizationand infrastructure

The experience of the individuals being trained, including technical skill and familiarity with SRE / DevOps

Page 13: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Poll: Who’s in the Audience?

Page 14: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 15: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Address Any Skill Gaps

Maturitylow ..high

● Does your team use a defect tracking system (e.g., Jira, Bugzilla)?

● Does your team have a project planning model (e.g., Agile)?

● Is work done in a version control system (e.g., Git)?

● Are solutions clearly articulated and vetted by team members (e.g., with design docs) before starting implementation?

● Does your team have a shared repository of commonly used tools and libraries?

Page 16: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Address Any Skill Gaps

Maturitylow ..high

● Does your team use a defect tracking system (e.g., Jira, bugs)?

● Does your team have a project planning model (e.g., Agile)?

● Is work done in a version control system (e.g., Git)?

● Are solutions clearly articulated and vetted by team members (e.g., with design docs) before starting implementation?

● Does your team have a shared repository of commonly used tools and libraries?

Page 17: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Know Your Team & Tailor the Message

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Cat

alyt

ic

Resistant

Receptive

Page 18: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Know Your Team & Tailor the Message

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Cat

alyt

ic

Resistant

Receptive

Most likely to go with the flow

Page 19: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Know Your Team & Tailor the Message

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Cat

alyt

ic

Resistant

Receptive

Address:“What’s in it for me?”“Why is this time different?”

Page 20: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Know Your Team & Tailor the Message

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Cat

alyt

ic

Resistant

Receptive

Empower them totell their success stories

Page 21: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Know Your Team & Tailor the Message

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Cat

alyt

ic

Resistant

Receptive

Empower them totell their success stories

Address:“What’s in it for me?”“Why is this time different?”

Most likely to go with the flow

Page 22: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 23: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Page 24: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Newbies

Page 25: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Internal Transfers

Page 26: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Old Timers

Page 27: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Industry Veterans

Page 28: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 1: Assess the Team Mix

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Internal Transfers

Newbies

Old Timers

Industry Veterans

Page 29: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Step 2: Find Your Focus

Maturitylow ..high

Experience

Familiarity

..highlow

high

low

Intro to DevOps / SRE Principles &

Practices Technical Depth

Going Oncall

Service-specific Depth

Production Overview & Culture

● Newbies need the most attention. They need to learn the infrastructure and culture.

● Internal Transfers may know your systems but are less familiar with DevOps/SRE practices so focus here.

● Old Timers are experienced on both dimensions. Go for technical depth to unlock career growth.

● Industry Veterans need to ramp-up on your infrastructure and processes and may need to unlearn some bad habits. Focus on specifics.

Page 30: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 31: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

“What” “How”

Software Development

Product Features

Deploying to production in a reliable way to meet the needs of our users.

Training Program

Training Content

Deploying a consistent and reliable training program that meets the needs of our students.

Drawing an Analogy Between Software Development and Training Programs

Page 32: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 33: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Operational Dimensions Influence Your Training Approach

How large is your organization?

How fast are you growing?

Size

Growth Rate

Page 34: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Page 35: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Shadowing / Mentoring

Page 36: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Shadowing / Mentoring + Ongoing Edu

Page 37: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Orientation Program

Page 38: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Full-Lifecycle Training Program

Page 39: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

How Much Effort Should You Invest?

Growth Rate

Size

..highlow

high

low

Shadowing / Mentoring + Ongoing Edu

Shadowing / Mentoring

Full-Lifecycle Training Program

Orientation Program

● Invest the most under conditions of rapid growth.

● Small but rapidly growing organizations benefit the most from onboarding training.

● Don’t forget about your existing workforce. Invest in ongoing education for their career development.

Page 40: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Where to Start When Developing Content?

ASSBAT

A Student Should Be Able To

Page 41: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

A Student Should Be Able To

Understand $foo service?

Page 42: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

A Student Should Be Able To

Understand $foo service?Understand $foo service?

Page 43: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

A Student Should Be Able To

Focus on the behaviors you want to drive:

● Use $tool to identify how much memory a job is using

● Interpret a graph in $monitoring_tool to identify the health of $foo service

● Move traffic away from a cluster using $drain_tool in five minutes

Understand $foo service?Understand $foo service?

Observe and measure how the training is applied

Page 44: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

The ADDIE Model of Instructional Design

Analyze

Design

ImplementEvaluate

Develop

Analyze needs

Design based on ASSBATS

Develop training content

Implement the program

Evaluate effectiveness

Page 45: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated
Page 46: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

https://landing.google.com/sre/sre-book/chapters/part3/

Service Reliability Hierarchy

Monitoring

Incident Response

Postmortem / RCA

Testing & Release

Development

Product

Capacity Planning

Page 47: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Service Reliability Hierarchy* SRE Training Reliability Hierarchy

Monitoring

Incident Response

Postmortem / RCA

Testing & Release

Development

Product

Capacity Planning

Postmortem / RCA

Curriculum design

Program

Scale Operations

Address Issues

Attendance Tracking / Survey Feedback

Test Teaching

* https://landing.google.com/sre/sre-book/chapters/part3/

How to Apply SRE Principles to a Training Program

Page 48: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Is More Effort Always Better? No.

Effort Results

SRE Principle in Practice:

● Do just enough to meet the needs of your students.

● Keep them happy, but not too happy.

● Consider trade-offs and avoid polishing a diamond.

Page 49: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Also more prepared, hands-on "Hello world" demonstrations and in-class labs allowing use of the aforementioned paths would be welcome (kinesthetic).

More time doing hands-on work and deeper exploration of how {redacted} were run by SRE teams would be nice.

Some more hands-on activities would have been good.

I disliked the "wall of lecture" in some classes, meaning 1.5 or 2 hours of listening with little/no hands-on exercise.

What Did Our Monitoring Tell Us?

Page 50: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Google SRE EDU Orientation v2

● Move away from passive listening

● Troubleshoot a real system, built for this purpose

● Facilitator backs off more and more

● Groups of three students, least experienced in the middle, driving

● Instill confidence http://bitly.com/sre-edu

Page 51: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

I went in feeling quite apprehensive & came out feeling like I at least know which way I'm pointed. Thoroughly enjoyed the breakage activities and learning about how Google's infra, monitoring and processes fit together.

Delving into real breaking scenarios was super valuable - I would love more of these (1 per day would be amazing).

The breakage scenarios in SRE EDU were awesome.

It was the funnest week I've had this year. Overall, it made me feel more connected to production and the technology, which made me really happy.

What Does Our Monitoring Tell Us Now?

Page 52: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

SRE EDU Orientation v2 is Better Instrumented for Observability

Concrete behaviors demonstrated

● Use a system diagram

● Diagnose issues using SRE tools

● Annotate an outage

● Mitigate a realistic production issue

● Find root causes & propose solutions

Page 53: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

Page 54: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

● Training is an investment → An investment in your organization and people.

Page 55: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

● Training is an investment → An investment in your organization and people.

● Evaluate the cost and benefits → to make sure you make the right level of investment.

Page 56: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

● Training is an investment → An investment in your organization and people.

● Evaluate the cost and benefits → to make sure you make the right level of investment.

● Where to invest? → depends on the ‘what’ and ‘how’ of your organizational circumstances.

Page 57: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

● Training is an investment → An investment in your organization and people.

● Evaluate the cost and benefits → to make sure you make the right level of investment.

● Where to invest? → depends on the ‘what’ and ‘how’ of your organizational circumstances.

● Walk the Talk → Apply SRE / DevOps principles to the training program itself for a consistent and reliable experience.

Page 58: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Swim! Don’t Sink... Takeaways

● Training is an investment → An investment in your organization and people.

● Evaluate the cost and benefits → to make sure you make the right level of investment.

● Where to invest? → depends on the ‘what’ and ‘how’ of your organizational circumstances.

● Walk the Talk → Apply SRE / DevOps principles to the training program itself for a consistent and reliable experience.

Page 59: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Time for a Final Poll...

Page 60: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Brad Lipinski

SRE, Software Engineer

Jennifer Petoff

Global Program Mgr & Lead

David Butts

SRE, Software Engineer

JC van Winkel

Lead Educator

Preston Yoshioka

Instructional Designer

Laura Baum

Program Manager

Benjamin Weaver

Program Mgr

Thanks to the SRE EDU Core Team and All Our Volunteers!

Page 61: Swim! Don’t Sink · 2020-06-11 · Does your team have a project planning model (e.g., Agile)? Is work done in a version control system (e.g., Git)? Are solutions clearly articulated

Jennifer Petoff (aka Dr. J)Twitter: @jennski

Global Head of SRE EDU at Google

Want to learn more?

http://bitly.com/training-sres