The servicescore card - Gamifying Operational Excellence - SRECON

Gamifying Operational Excellence
The
Service
Score
Card
1 The Problem
3 A Solution tour
4 The results
5 Take aways & lessons Learnt & Questions
2 A Solution idea
Agenda
“If it's not broken, I’ll fix it.”
From Australia, on loan as
Staff SRE @ linkedIn
jobs, companies, recruiter
& Finder of encoding bugs
about me
Danny ☃ Lawrence
“If it's not broken, I’ll fix it.”
From Australia, on loan as
Staff SRE @ linkedIn
jobs, companies, recruiter
& Finder of encoding bugs
about me
Danny ☃ Lawrence
“If it's not broken, I’ll fix it.”
From Australia, on loan as
Staff SRE @ linkedIn
jobs, companies, recruiter
& Finder of encoding bugs
about me
Danny ☃ Lawrence
“If it's not broken, I’ll fix it.”
From Australia, on loan as
Staff SRE @ linkedIn
jobs, companies, recruiter
& Finder of encoding bugs
about me
Danny ☃ Lawrence
“If it's not broken, I’ll fix it.”
From Australia, on loan as
Staff SRE @ linkedIn
jobs, companies, recruiter
& Finder of encoding bugs
about me
Danny ☃ Lawrence
Good news
SRECON.
You passed
the ☃ test.
about me
Danny ☃ Lawrence
Some terms
(before we really get started)
Operational Excellence
effective and efficient delivery of information,
technology, and services required by end users
that add measurable value.
10
Gamifying Operational Excellence
Operational Excellence
Doing everything required to make sure
all of your services are as fast and as reliable
as possible.
11
Gamifying Operational Excellence
Gamification
application of game-design elements and game
principles in non-game contexts.
12
Gamifying Operational Excellence
Some background
(LinkedIn SRE crash course)
Mostly Java
Multitudes of services
Doing lots of things
Service-oriented architecture
Everything talks to everything
My direct team looks after 80+ services
We have 200+ SREs
14
LinkedIn SRE Crash Course
The Problem
(What started this whole thing)
Problem 1:
The GOOD
&
The BAD
16
Gamifying Operational Excellence
BAD services
wake me up
17
Gamifying Operational Excellence
GOOD services
let me sleep
18
Gamifying Operational Excellence
What makes a GOOD
service at LinkedIn
is a moving target.
19
Gamifying Operational Excellence
Technologies and dependencies
change
over time.
20
Gamifying Operational Excellence
Upgrading dependencies & libraries
Java / Jetty / Play / Tomcat
Correct usage of TLS
Switching databases / caches
Migrate from SVN to GIT
Reduce application startup time
Setup error budgeting
True up the number of metrics
21
Some examples
A GOOD service
can turn into a BAD service.
If you are not checking it
22
Gamifying Operational Excellence
Unfortunately
BAD services
do not
magically
turn into
GOOD services
23
Gamifying Operational Excellence
Problem 2:
Knowing what is BAD
24
Gamifying Operational Excellence
Problem 3:
Knowing why it’s BAD
25
Gamifying Operational Excellence
Problem 4:
Tribal knowledge
about how to get to GOOD
26
Gamifying Operational Excellence
The only thing SREs hate more than
not having documentation.
Is writing documentation.
27
Gamifying Operational Excellence
The Problem
summary
BAD services wake me up
Time will cause GOOD to turn BAD
Hard to know what is BAD
Hard to know why is BAD
Not sure how to fix the BAD
29
Gamifying Operational Excellence
The Service ScoreCard
(A solution)
In order determine the health
of the services we support,
we define a list of production requirements.
31
Gamifying Operational Excellence
Apply a weight to each requirement
32
Gamifying Operational Excellence
Codify each requirement into a check.
33
Gamifying Operational Excellence
Execute these checks
for each service
34
Service Scorecard
Tally up the results for service.
35
Gamifying Operational Excellence
Grade the service from
“F” to “A+”
36
Gamifying Operational Excellence
Add all the services into a highscore system
37
Gamifying Operational Excellence
Then
38
Gamifying Operational Excellence
Publish those scores to the company
39
Gamifying Operational Excellence
This is great,
but how do I improve the score?
How can I add X check into the system.
40
Gamifying Operational Excellence
What makes a check?
checks are one type of plugin.
fetch plugins gather data
check plugins check the data.
42
Gamifying Operational Excellence
We use the fetch plugin to gather
remote data from:
SVN, GIT, Configuration DBs,
host databases, monitoring systems,
build systems, deployment systems.
43
Gamifying Operational Excellence
Basically,
if we can fetch it,
then we do so.
44
Gamifying Operational Excellence
We build a giant context object.
45
Gamifying Operational Excellence
The check plugin will look at our
context object.
46
Gamifying Operational Excellence
All plugins are small python scripts,
where small is 10~30 LOC
47
Gamifying Operational Excellence
Simply return 2 or 3 things.
state*: True, False, None or 0.0 - 1.0
message*: short string
data: python dict of interesting things.
48
Gamifying Operational Excellence
Example fetch plugin
@ssc.tags(“ownership”)
def fetch_ownership(service_name):
“Fetch all the ownership data of a service”
o = r.get(“http://owners/” + service_name)
return True, “gathered data”, o.json()
50
@ssc.tags(“ownership”)
def fetch_ownership(service_name):
“Fetch all the ownership data of a service”
o = r.get(“http://owners/” + service_name)
return True, “gathered data”, o.json()
51
@ssc.tags(“ownership”)
def fetch_ownership(service_name):
“Fetch all the ownership data of a service”
o = r.get(“http://owners/” + service_name)
return True, “gathered data”, o.json()
52
@ssc.tags(“ownership”)
def fetch_ownership(service_name):
“Fetch all the ownership data of a service”
o = r.get(“http://owners/” + service_name)
return True, “gathered data”, o.json()
53
@ssc.tags(“ownership”)
def fetch_ownership(service_name):
“Fetch all the ownership data of a service”
o = r.get(“http://owners/” + service_name)
return True, “gathered owner data”, o.json()
54
Example check plugin
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
56
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
57
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
58
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
59
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
60
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
61
@ssc.weight(5)
@ssc.tags(‘ownership’)
@ssc.wiki(‘http://wiki/ssc_eng_owner’)
def check_eng_team(ctx):
“ensure ENG ownership of a service”
if ctx.ownership.eng_team:
return True, ctx.ownership.eng_team
return False, “missing eng_team”
62
Putting it all together
Problems
Understanding what is BAD
Knowing why it is BAD
Not sure how to fix the BAD
64
Gamifying Operational Excellence
Problems
Understanding what is BAD
65
Gamifying Operational Excellence
66
Service Scorecard
67
Service Scorecard
68
Service Scorecard
69
Service Scorecard
70
Service Scorecard
71
Service Scorecard
72
Service Scorecard
73
Service Scorecard
74
Service Scorecard
75
Service Scorecard
76
Service Scorecard
77
Service Scorecard
78
Service Scorecard
79
Service Scorecard
Problems
Understanding what is BAD
Knowing why it is BAD
80
Gamifying Operational Excellence
81
Service Scorecard
82
Service Scorecard
83
84
85
86
87
88
89
90
91
92
93
Problems
Understanding what is BAD
Knowing why it is BAD
Not sure how to fix the BAD
94
Gamifying Operational Excellence
95
96
97
98
99
What is the check?
Why is it important?
How long it will take to fix?
How will it be fixed?
100
Gamifying Operational Excellence
101
102
AngularJS
image: CC BY 4.0 https://angular.io/presskit.html (2017)
103
{{service_name}}
becomes
jobs-server
104
105
{{context.ownership.eng_owner}}
becomes
jobs-team
Using our fetched data in the wiki
107
{{service_name}}
108
{html}
<script src=”https://cdn/angularjs.js”/ >
{html}
109
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = ctx;
}
);
110
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = ctx;
}
);
111
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = ctx;
}
);
112
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = ctx;
}
);
113
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = data;
}
);
114
var query = $location.search();
var service_name = query[‘service_name’];
var url = ‘http://ssc/api/’ + service_name;
$http.get().success(
function(ctx) {
$scope.ctx = ctx;
}
);
115
{{ctx.ownership.owner_eng}}
116
{{ctx.ownership.owner_eng}}
{{ctx.number_of_hosts}}
{{ctx.product.lib.jetty.version}}
{{ctx.hosts.hostnames}}
{{ctx.is_deployed_in_prod}}
{{ctx.commits.last_commit}}
Problems
Understanding what is BAD
Knowing why it is BAD
Not sure how to fix the BAD
117
Gamifying Operational Excellence
Now
Reports show what is BAD
Checks validate why it is BAD
Wiki shows how to fix the BAD
118
Gamifying Operational Excellence
No more of these emails
“If you use a lib-core, then upgrade it,
we found a bug”
119
Gamifying Operational Excellence
How many of my 80 services use this lib?
How do I check?
How do I upgrade?
120
Gamifying Operational Excellence
121
122
123
Where does this tool fit?
125
Gamifying Operational Excellence
pre-commit Build Deployment Monitoring
126
Gamifying Operational Excellence
pre-commit Build Deployment Monitoring
Service Scorecard
127
Gamifying Operational Excellence
pre-commit Build Deployment Monitoring
Service Scorecard
API
128
Gamifying Operational Excellence
Service Scorecard
API
hack-days Reporting Deployment Monitoring
Results
&
Outcomes
What we do with the scores?
130
Gamifying Operational Excellence
Priority #1:
Getting the grades better
131
Gamifying Operational Excellence
132
When we started Now
Average grade for my team 40% 80%
Average score across SRE 35% 60%
Checks in 24 hours 15,560 89,859
Number of checks per service 15 31
Gamifying Operational Excellence
We can now explore news ways
to use the scores
133
Gamifying Operational Excellence
Carrot
&
Stick
134
Gamifying Operational Excellence
Carrot / GOOD
Stick / BAD
135
Gamifying Operational Excellence
No SRE support
for
F Grade
services.
136
Gamifying Operational Excellence
F Grade services generally
cause the
most problems.
137
Gamifying Operational Excellence
No deploy moratorium
for
A+ services
138
Gamifying Operational Excellence
A+ services generally
cause the
least problems.
139
Gamifying Operational Excellence
A services
are allowed to deploy 24/7
140
Gamifying Operational Excellence
Premium SRE support
for A+ services
141
Gamifying Operational Excellence
Priority build queues
for
GOOD
Services.
142
Gamifying Operational Excellence
Tiger teams
to raise the
scores on
F Grade services
143
Gamifying Operational Excellence
Hack Days
144
Gamifying Operational Excellence
FREE BEER
145
Gamifying Operational Excellence
Basically any problem
can be solve with
FREE BEER
146
Gamifying Operational Excellence
OR T-Shirts
147
Gamifying Operational Excellence
/
148
Influence where we allocate
open headcount
149
Gamifying Operational Excellence
Simple way to get things done
150
Gamifying Operational Excellence
Take aways
&
Lessons Learnt
Everyone cares about Reliability.
152
Gamifying Operational Excellence
Everyone cares about Reliability,
Everyone is a Site Reliability Engineer.
153
Gamifying Operational Excellence
Everyone cares about Reliability,
You just need to empower them.
154
Gamifying Operational Excellence
Hack Days are important,
This POC was built in an afternoon.
155
Gamifying Operational Excellence
Getting the data was easy,
Finding interesting ways to use it is hard.
156
Gamifying Operational Excellence
Make it as easy as possible
to do the right thing.
157
Gamifying Operational Excellence
Cheers !
Q & A
1 of 159

Recommended

Empowerment through Observability - Keynote by
Empowerment through Observability - KeynoteEmpowerment through Observability - Keynote
Empowerment through Observability - KeynoteAbigail Bangser
2.6K views117 slides
Reducing MTTR and False Escalations: Event Correlation at LinkedIn by
Reducing MTTR and False Escalations: Event Correlation at LinkedInReducing MTTR and False Escalations: Event Correlation at LinkedIn
Reducing MTTR and False Escalations: Event Correlation at LinkedInMichael Kehoe
956 views34 slides
Dokumentasi keperawatan metode focus by
Dokumentasi keperawatan metode focusDokumentasi keperawatan metode focus
Dokumentasi keperawatan metode focuspormina tambunan
8.1K views8 slides
Muses ~ By Japanese Painter Ichiro Tsuruta by
Muses ~ By Japanese Painter Ichiro TsurutaMuses ~ By Japanese Painter Ichiro Tsuruta
Muses ~ By Japanese Painter Ichiro Tsurutamaditabalnco
1.3K views45 slides
MariaDB ColumnStore - LONDON MySQL Meetup by
MariaDB ColumnStore - LONDON MySQL MeetupMariaDB ColumnStore - LONDON MySQL Meetup
MariaDB ColumnStore - LONDON MySQL MeetupIvan Zoratti
655 views23 slides
Keynote - AIIM17 -- Forces of Change in Content Management by
Keynote - AIIM17 -- Forces of Change in Content ManagementKeynote - AIIM17 -- Forces of Change in Content Management
Keynote - AIIM17 -- Forces of Change in Content ManagementJohn Mancini
20K views18 slides

More Related Content

Similar to The servicescore card - Gamifying Operational Excellence - SRECON

muCon 2017 - Build Confidence in your System with Chaos Engineering by
muCon 2017 - Build Confidence in your System with Chaos EngineeringmuCon 2017 - Build Confidence in your System with Chaos Engineering
muCon 2017 - Build Confidence in your System with Chaos EngineeringSylvain Hellegouarch
475 views58 slides
Week 3 ILab by
Week 3 ILabWeek 3 ILab
Week 3 ILabTammy Mitchell
2 views60 slides
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile by
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileKenAtIndeed
915 views125 slides
SysAdmin to SRE: Solving the Last Mile Problem by
SysAdmin to SRE: Solving the Last Mile ProblemSysAdmin to SRE: Solving the Last Mile Problem
SysAdmin to SRE: Solving the Last Mile ProblemRundeck
2K views153 slides
AI & AWS DeepComposer by
AI & AWS DeepComposerAI & AWS DeepComposer
AI & AWS DeepComposerAmazon Web Services
1.6K views58 slides
OSMC 2019 | Directing the Director by Martin Schurz by
OSMC 2019 | Directing the Director by Martin SchurzOSMC 2019 | Directing the Director by Martin Schurz
OSMC 2019 | Directing the Director by Martin SchurzNETWAYS
174 views71 slides

Similar to The servicescore card - Gamifying Operational Excellence - SRECON(20)

muCon 2017 - Build Confidence in your System with Chaos Engineering by Sylvain Hellegouarch
muCon 2017 - Build Confidence in your System with Chaos EngineeringmuCon 2017 - Build Confidence in your System with Chaos Engineering
muCon 2017 - Build Confidence in your System with Chaos Engineering
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile by KenAtIndeed
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
KenAtIndeed915 views
SysAdmin to SRE: Solving the Last Mile Problem by Rundeck
SysAdmin to SRE: Solving the Last Mile ProblemSysAdmin to SRE: Solving the Last Mile Problem
SysAdmin to SRE: Solving the Last Mile Problem
Rundeck2K views
OSMC 2019 | Directing the Director by Martin Schurz by NETWAYS
OSMC 2019 | Directing the Director by Martin SchurzOSMC 2019 | Directing the Director by Martin Schurz
OSMC 2019 | Directing the Director by Martin Schurz
NETWAYS174 views
Deep Dive: AWS X-Ray London Summit 2017 by Randall Hunt
Deep Dive: AWS X-Ray London Summit 2017Deep Dive: AWS X-Ray London Summit 2017
Deep Dive: AWS X-Ray London Summit 2017
Randall Hunt1.1K views
The World Outside - The Blind Spot of TDD by Amit Anafy
The World Outside - The Blind Spot of TDDThe World Outside - The Blind Spot of TDD
The World Outside - The Blind Spot of TDD
Amit Anafy82 views
Building, Evaluating, and Optimizing your RAG App for Production by Sri Ambati
Building, Evaluating, and Optimizing your RAG App for ProductionBuilding, Evaluating, and Optimizing your RAG App for Production
Building, Evaluating, and Optimizing your RAG App for Production
Sri Ambati16 views
The Enterprise Architecture you always wanted: A Billion Transactions Per Mon... by Thoughtworks
The Enterprise Architecture you always wanted: A Billion Transactions Per Mon...The Enterprise Architecture you always wanted: A Billion Transactions Per Mon...
The Enterprise Architecture you always wanted: A Billion Transactions Per Mon...
Thoughtworks562 views
From Monoliths to Microservices at Realestate.com.au by evanbottcher
From Monoliths to Microservices at Realestate.com.auFrom Monoliths to Microservices at Realestate.com.au
From Monoliths to Microservices at Realestate.com.au
evanbottcher1.9K views
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn by Andreas Grabner
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnJenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Andreas Grabner420 views
Machine Learning for Software Developers (...and Knitters) by Kristine Howard
Machine Learning for Software Developers (...and Knitters)Machine Learning for Software Developers (...and Knitters)
Machine Learning for Software Developers (...and Knitters)
Kristine Howard96 views
Comment se crasher avec classe pendant un pic d'audience, a.k.a #effetcapital by Guillaume Marchand
Comment se crasher avec classe pendant un pic d'audience, a.k.a #effetcapitalComment se crasher avec classe pendant un pic d'audience, a.k.a #effetcapital
Comment se crasher avec classe pendant un pic d'audience, a.k.a #effetcapital
Guillaume Marchand261 views
DockerCon SF 2019 - Observability Workshop by Kevin Crawley
DockerCon SF 2019 - Observability WorkshopDockerCon SF 2019 - Observability Workshop
DockerCon SF 2019 - Observability Workshop
Kevin Crawley300 views
Incident Management in the Age of DevOps and SRE by Rundeck
Incident Management in the Age of DevOps and SRE Incident Management in the Age of DevOps and SRE
Incident Management in the Age of DevOps and SRE
Rundeck625 views
How I Learned to Stop Worrying and Love Legacy Code by Gene Gotimer
How I Learned to Stop Worrying and Love Legacy CodeHow I Learned to Stop Worrying and Love Legacy Code
How I Learned to Stop Worrying and Love Legacy Code
Gene Gotimer21 views
SELJE_Database_Unit_Testing.pdf by Eric Selje
SELJE_Database_Unit_Testing.pdfSELJE_Database_Unit_Testing.pdf
SELJE_Database_Unit_Testing.pdf
Eric Selje4 views
Top Java Performance Problems and Metrics To Check in Your Pipeline by Andreas Grabner
Top Java Performance Problems and Metrics To Check in Your PipelineTop Java Performance Problems and Metrics To Check in Your Pipeline
Top Java Performance Problems and Metrics To Check in Your Pipeline
Andreas Grabner2K views

Recently uploaded

【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院IttrainingIttraining
58 views8 slides
PRODUCT LISTING.pptx by
PRODUCT LISTING.pptxPRODUCT LISTING.pptx
PRODUCT LISTING.pptxangelicacueva6
14 views1 slide
Uni Systems for Power Platform.pptx by
Uni Systems for Power Platform.pptxUni Systems for Power Platform.pptx
Uni Systems for Power Platform.pptxUni Systems S.M.S.A.
56 views21 slides
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...James Anderson
92 views32 slides
HTTP headers that make your website go faster - devs.gent November 2023 by
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023Thijs Feryn
22 views151 slides
Ransomware is Knocking your Door_Final.pdf by
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdfSecurity Bootcamp
59 views46 slides

Recently uploaded(20)

【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson92 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn22 views
Unit 1_Lecture 2_Physical Design of IoT.pdf by StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec12 views
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
Powerful Google developer tools for immediate impact! (2023-24) by wesley chun
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)
wesley chun10 views
Special_edition_innovator_2023.pdf by WillDavies22
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdf
WillDavies2218 views
Future of AR - Facebook Presentation by ssuserb54b561
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
ssuserb54b56115 views

The servicescore card - Gamifying Operational Excellence - SRECON