Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO...

152
Ketan Gangatirkar Quantifying Empathy Through Service Level Objectives Vice President of Engineering – Job Seeker | [email protected]

Transcript of Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO...

Page 1: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Ketan Gangatirkar

Quantifying Empathy Through Service Level Objectives

Vice President of Engineering – Job Seeker | [email protected]

Page 2: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

I help people get jobs.

Page 3: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

One search. All jobs.

Page 4: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Job site 1

Job site 2

Job site 3

Job site 4

Job site 5

Job site ∞

Page 5: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

No searches. No jobs.

Page 6: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLO violation

Job Search was unavailable to users in Vietnam for 13 minutes

99.98% availability (last 90 days)99.99% SLO

This is why we need SLOs

Page 7: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Daddy, where do SLOs come from?

Page 8: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

The SREs define SLOs!

Page 9: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

I don't think Daddy knows the answer.

Page 10: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Why shouldn't SREs define the SLOs?

Page 11: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your product exists to serve users

Page 12: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Service Level IndicatorA quantifiable measure of the quality of a service

Page 13: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Service Level ObjectiveA target for a Service Level Indicator

Page 14: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs determine user experience

Page 15: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SREs determine user experience?

Page 16: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your SREs aren't your users

Page 17: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your SREs don't talk to your users

——————————————————

——————————————————

Page 18: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your SREs don't understand your users

A B

Page 19: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

● Consistent● Objective● Measurable● Explicit● Empathetic

SLOs are

Page 20: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLO violation

Job Search was unavailable to users in Vietnam for 13 minutes

99.98% availability (last 90 days)99.99% SLO

Page 21: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Put empathy in your SLOs

Page 22: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs without empathy are bad SLOs

Page 23: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs = numbersFeelings ≠ numbers

Page 24: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Turn feelings into numbers

Page 25: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Quantify your empathy

Page 26: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Adding quantified empathy to SLOs

SLO violation

Job Search was unavailable to users in Vietnam for 13 minutes

99.98% availability (last 90 days)99.99% SLO

3802 job seekers can't get jobs!

Job Search was unavailable to people in Vietnam for 13 minutes

99.98% availability (last 90 days)99.99% SLO

Page 27: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Make your users

happier

Make smarter

decisions

Build a better

product

Quantify empathy

Create better SLOs

Page 28: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs make people better

Page 29: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

People sleep SLOs are 24x7

Page 30: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs are always workingPeople go on holiday

Page 31: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs are collectiveEmpathy is individual

Page 32: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs don't get hangry People need food, have moods

Page 33: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Lack of empathy leads to subpar experience

Page 34: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your users could be more demanding than your SLO

PassingSLO

Good user experience

Empathy gap

Page 35: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your users may notice problems your SLO doesn't cover

Features users care about

Features your SLOs track

Page 36: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Lack of empathy leads to wasted effort

Page 37: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

harderbetterfasterstronger

Page 38: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Higher service level → Always better?

Page 39: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Service level →

Cost

Perfection

Page 40: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Maybe too much of a good thing?

Page 41: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Higher service levels cost time

Page 42: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Higher service levels cost money

Page 43: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Higher service levels cost opportunity

Page 44: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your users could be less demanding than your SLO

PassingSLO

Good user experience

Waste

Page 45: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your SLO may cover things your users don't care about

Features your SLOs track

Features users care about

Page 46: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 47: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

How good is just right?

Page 48: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

User research and product management problems

Page 49: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Solved by technology teams

Page 50: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SRE makes product decisions

Page 51: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Code for accuracy or freshness?

Page 52: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Speed or availability?

Page 53: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Add new PoP or implement auto-scaling?

Page 54: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

THE WHYWHYWHYWHYWHYs5

Page 55: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Add new PoP

↓Faster page load

↓Increased engagement

↓Lower bounce rate

↓Higher revenue

↓Fewer network hops

↓Adds capacity when neededvs.

↓More throughputvs.

↓Fresher datavs.

Implement auto-scalingvs.

↓Higher retentionvs.

↓Greater utilityvs.

WHY?1

WHY?2

WHY?3

WHY?4

WHY?5

Page 56: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

People will disagree

Faster pages! Less downtime!

Increase throughput!

Reduce errors!

Marketing CEO SWE SRE

Page 57: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

People will disagree… a lot

400 ms! 300 ms! 250 ms! 265 ms!

Marketing CEO SWE SRE

Page 58: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

How do you make sure your team does it right?

Page 59: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

One person makes all the decisions

Page 60: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

The God Object anti-pattern

Page 61: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

It's hard for SRE to make product decisions

Page 62: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Expanding your hiring pool

Page 63: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Understand users Can understand users with training Don't understand users

Can you limit your candidate pool to these people?

All of these can be valuable employees

Employee personalities vary

Page 64: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Individuals don't scale

Page 65: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Time →

Product complexity

Page 66: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Time →

Number of products

Page 67: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Even the best people have limits

Page 68: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

You can't scale up by just making things bigger

Page 69: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

How do you overcome these obstacles?

Page 70: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Quantify empathy

Page 71: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

1) Get to know your users

2) Understand what your product does for them

3) Apply the 6 flavors of user happiness

4) Find the user pain in your data

5) Set the SLOs below the pain threshold

This is everyone's job

Page 72: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Empathy applies to all products

Page 73: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Case studyIndeed

Page 74: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

One search. All jobs.

Page 75: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Web site 1

Web site 2

Web site 3

Web site 4

Web site 5

Web site 6

Page 76: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

● Fast page loads● Getting all jobs● Get the jobs quickly enough● Seeing more jobs, even at risk of

irrelevance

● Perfect accuracy● All the features● Avoiding all irrelevant jobs

Job seekers care about Job seekers care less about

Page 77: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Case studyCapturing the flag

Page 78: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 79: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 80: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Flag capturers care about

● Lag (absence of)

Flag capturers care less about

● Availability

Page 81: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Case studyCustomer service

Page 82: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

#FML

Page 83: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

? Who is this guy?

Page 84: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Please hold while I find your reservation.............#FML2

Page 85: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 86: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 87: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

CSRs care about

● Fast enough page loads● Availability● Data freshness● Accuracy

CSRs care less about

● Fastest possible page loads● Lots of features

Page 88: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Empathy is an S-curve

Page 89: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Brokenness →

↑User happiness

Sweet spot

Uselessly broken

Basically perfect

Usable

Page 90: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

6 flavors of user happiness

Page 91: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

1) Availability

2) Responsiveness

3) Freshness

4) Completeness

5) Accuracy and precision

6) Breadth of functionality

ARFCAapBof#

Page 92: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

1. Availability

Page 93: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Can your product perform its most basic functions?

● Finding jobs● Capturing the flag● Displaying customer records

Page 94: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Availability →

↑Flagaliciousness I'll try again later

It's just a game

I'm getting the flag!

99.5% 98%

SLO: 99.5% availability

Page 95: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Availability →

↑Productivity

This is tolerable

I can do my job

We're paying how much?!?!

Cancel the contract

99.9%99.5%

99%

SLO: 99.95% availability

Page 96: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

2. Responsiveness

Page 97: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

User Action

Product Reaction

Page 98: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Page load time →

↑Job clicks

SLO: 99% < 250 ms

125 ms 250 ms 500 ms 1000 ms 2000 ms 4000 ms 8000 ms 16000 ms

2x latencyLittle click loss

2x latencyLittle click loss

2x latencyMajor click loss

Page 99: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

I can play

I'm switching to Solitaire

I am awesome

50 ms 80 ms

SLO: 99% < 80 ms

Network Latency →

↑Flags captured

Page 100: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

3. Freshness

Page 101: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Freshness = how close to real-time the data are

Page 102: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

How are user goals compromised by stale data?

Page 103: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Job availability lag →

↑User happiness

This web site is free

I should use Glassdoor instead

This is awesome

SLO: 99% < 18 hours

6 hours 24 hours

Page 104: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability
Page 105: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Account data lag →

↑Product value

Better than nothing

I was wrongI'd rather have nothing

This is awesome

SLO: 99% of actions visible < 15 s

10s 20s 30s

This works okay

40s

Page 106: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

4. Completeness

Page 107: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Do you have all the data?

Page 108: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Missing jobs →

↑User perception

50% 75%25% 100%0%

some jobs.

no jobs.

most jobs.

SLO: < 25% missing jobs

Page 109: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

5. Accuracy and precision

Page 110: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Exact joblocation service

Raw jobs Processed jobs

Sometimes this is broken

Page 111: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Approximate location

More precise location

Faster

Slower

Page 112: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Do job seekers want faster or more precise?

Page 113: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOmost exact location possible

< 30 minutes lag

Page 114: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

6. Breadth of functionality

Page 115: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Must have vs. nice to have

Page 116: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

How often are nice-to-have features available?

Page 117: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLO95+% of results pages have stars

Hard timeout at 100 ms

Page 118: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Empathy for the user

Page 119: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Turn implicit intuition into explicit systems

Page 120: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Brokenness →

↑User happiness

Many different ways to draw an S curve

Page 121: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Brokenness →

↑User happiness

Look in your data to find your S curve

Page 122: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Perception is reality

Page 123: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Server times

Server error rates

User experience

Your perceptions are only part of the picture

Page 124: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

query

AJAX request

Front endservice

ControllerView Loadbalancer

Microservices Data store

Service request

REST request

Render

Click

results

Service responseREST

responseAJAX response

Hard to measure Easy to measure

User experience Technobabble

Page 125: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Simulate clients

Page 126: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Measure from real clients

Page 127: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Dealing with factors beyond your control

Page 128: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

User experience

Out of your control In your control

Page 129: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your SLO should cover the whole user experience

Page 130: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Service Level Objective

What you can't control What you have to work with

Page 131: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Page load < 1s

+400 ms user network 600 ms to work with

Page 132: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Controlling for what you can't control

Page 133: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Can't move users closer to your servers Can move your servers closer to users

Too much latency Acceptable latency

Page 134: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

———————————————————————————————————

———————————————————————————————————

Page 135: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

———————————————————————————————————

———————————————————————————————————

If it feels fast, it is fast

Page 136: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Empathy avoids overkill

Page 137: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

99% 99.99999999999999%16x9 = 315 nanoseconds

External systems + your components

Page 138: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Brokenness →

Overkill

↑User success

User system brokenness

Page 139: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Quantifying empathy

Page 140: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Empathy = I feel what you feel

Page 141: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your users' perception is their reality

Page 142: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Your users' perception must be your reality

Page 143: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs————————————————————————————————————————————————————————

User needs Actionable guidance

Page 144: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Model the user's feelings and simulate empathy

Page 145: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Failing SLO Meeting SLO

Sad user

Happy user

An accurate simulation

Empathy gap

Overkill

Page 146: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

SLOs with empathy tell me what you feel

Page 147: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

● Before the user notices● Before the user feels pain● Before you deploy your service

SLOs with empathy tell me whatyou will feel before you feel it

Page 148: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

1) Get to know your users

2) Understand what your product does for them

3) Apply the 6 flavors of user happiness

4) Find the user pain in your data

5) Set the SLOs below the pain threshold

How to quantify empathy

Page 149: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

1) Raise targets that allow poor user experience

2) Lower targets that don't benefit the user

3) Find gaps in features not covered by SLOs

4) Discard SLOs for features your users don't need

5) Get everyone lined up behind the same goals

How you benefit from quantifying empathy

Page 150: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Make your users

happier

Make smarter

decisions

Build a better

product

Quantify empathy

Create better SLOs

Page 151: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Questions?

Page 152: Through Service Level Objectives Quantifying Empathy...Adding quantified empathy to SLOs SLO violation Job Search was unavailable to users in Vietnam for 13 minutes 99.98% availability

Ketan Gangatirkar

Quantifying Empathy Through Service Level Objectives

Vice President of Engineering – Job Seeker | [email protected]