SlideShare a Scribd company logo
1 of 20
Download to read offline
Measure Anything
Optimize Everything
Mini-Training
 Make decisions based on a scientific
approach
 Build a scientific approach based on what
is known of « real life » aka « Production »
“You can’t manage what you don’t measure.”
W. Edwards Deming,
Peter Drucker
Measure anything,
Optimize Everything
• Different levels of knowledge:
• Level 0 : no monitoring, metrics or logs. Features are defined based on
feeling, intuitions. This is a blind approach.
• Level 1 : metrics and logs are reviewed post dev. Success is defined
based on real events and failures.
• Level 2 : decisions and actions are deducted from metrics and
statistics. We measure to validate the results of our actions.
Where are we ?
Get Knowledge
• How do we know something is wrong ?
– Customer Service: calls from customers
– Error Logs
• How do we know everything is ok ?
– …
Production Knowledge
• How do we know if the new killer feature is used ?
• How do we know how efficient is our code ?
Feature Knowledge
• Define a metrics-driven process to :
– Know applications in real life
– Monitor
– Evolve in a measured and verified way
Objectives
1. Ask a question
2. Set an idea
3. Establish a prediction along this idea
4. Experiment to test this prediction
5. Analyse results to validate or reject the idea
6. Share results
7. Repeat
Scientific approach
• This approach needs a deep instrumentation of the
whole platform :
– Aggregate data from many sources
– Measure
– Monitor along time
– Analyse it in real-time or at posteriori
– Decide and act accordingly
Measure anything
Measure anything
Network
Machine
Application
• Tools to monitor network and machines :
– Nagios/Centreon
– SCOM
• Metrics :
– Server status
– Front / Service status
– Network Bandwidth
– …
Technical Monitoring
• Hard to manage :
– Related to business
– Change as business changes (often)
– Can’t be easily automated, not easily catchable
• Examples :
– Login successful/failed
– Bets placed Sport / Turf
– Casino transactions
– Challenge subscriptions
– Banners displayed
What about application ?
Application monitoring = Business monitoring
• Each application knows its own business
– Define and report their own metrics
• Examples :
– On Turf, how many races are on sale.
– On Sport, how many time it takes to place a bet.
– On Casino, how many games are currently available.
– …
Application monitoring
13
All is about Metrics
High Level
Real Time
Fast issue
detection
Confidence
Metrics should be part of every feature.
Simple
Accessible
Required
Pertinent
“Measure what is measurable, and make measurable what is not so.”
Galileo Galilei
• Dashboards :
– Dev oriented
– Display metrics
– Inform if all is OK
– Emit alerts
– Real time production status
Application monitoring
Dashboards Level 2 (at Etsy)
• If we can measure, we can optimize
– Reduce Errors logs
– Reduce response time
– Optimize call numbers
– Remove dead code/feature
– Increase offer/bet placed
– …
– Overall Quality
16
Finally : Optimize Everything
17
Virtuous Cycle
Business
Feature
MetricsReport
Optimize
• Etsy technical blog (code, deployment, devops,…):
http://codeascraft.com
• http://fr.slideshare.net/frankhoffsummer/measure-anything-measure-everything-8178303
• http://fr.slideshare.net/mikebrittain/metricsdriven-engineering
Source
Find out more
• On https://techblog.betclicgroup.com/
About Betclic
• Betclic Everest Group, one of the world leaders in online gaming, has a unique
portfolio comprising various complementary international brands: Betclic, Everest
Gaming, bet-at-home.com, Expekt…
• Active in 100 countries with more than 12 million customers worldwide, the Group is
committed to promoting secure and responsible gaming and is a member of several
international professional associations including the EGBA (European Gaming and
Betting Association) and the ESSA (European Sports Security Association).
• Through our brands, Betclic Everest Group places expertise, technological know-how
and security at the heart of our strategy to deliver an on-line gaming offer attuned to
the passion of our players.

More Related Content

Viewers also liked

Viewers also liked (16)

Clean Architecture (Alt.Net Meetup on 26/06/2013)
Clean Architecture (Alt.Net Meetup on 26/06/2013)Clean Architecture (Alt.Net Meetup on 26/06/2013)
Clean Architecture (Alt.Net Meetup on 26/06/2013)
 
Mini-Training: JS Graphical Libraries
Mini-Training: JS Graphical LibrariesMini-Training: JS Graphical Libraries
Mini-Training: JS Graphical Libraries
 
Mini-Training: Let's have a rest
Mini-Training: Let's have a restMini-Training: Let's have a rest
Mini-Training: Let's have a rest
 
Mini-Training: DataViz, data-driven documents and D3.js
Mini-Training: DataViz, data-driven documents and D3.jsMini-Training: DataViz, data-driven documents and D3.js
Mini-Training: DataViz, data-driven documents and D3.js
 
Mini-Training Owin Katana
Mini-Training Owin KatanaMini-Training Owin Katana
Mini-Training Owin Katana
 
Visual Studio Profiler
Visual Studio ProfilerVisual Studio Profiler
Visual Studio Profiler
 
Mini training - Moving to xUnit.net
Mini training - Moving to xUnit.netMini training - Moving to xUnit.net
Mini training - Moving to xUnit.net
 
Building Cross Platform Mobile Applications
Building Cross Platform Mobile ApplicationsBuilding Cross Platform Mobile Applications
Building Cross Platform Mobile Applications
 
Training – Going Async
Training – Going AsyncTraining – Going Async
Training – Going Async
 
The Ten Commandments of Egoless Programming
The Ten Commandments of Egoless ProgrammingThe Ten Commandments of Egoless Programming
The Ten Commandments of Egoless Programming
 
Mini-Training: NDepend
Mini-Training: NDependMini-Training: NDepend
Mini-Training: NDepend
 
Mini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure StorageMini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure Storage
 
Lean for Business
Lean for BusinessLean for Business
Lean for Business
 
WCF Configuration - The basics
WCF Configuration - The basicsWCF Configuration - The basics
WCF Configuration - The basics
 
Mini-Training: Roslyn
Mini-Training: RoslynMini-Training: Roslyn
Mini-Training: Roslyn
 
Introduction to Unit Tests and TDD
Introduction to Unit Tests and TDDIntroduction to Unit Tests and TDD
Introduction to Unit Tests and TDD
 

More from Betclic Everest Group Tech Team

More from Betclic Everest Group Tech Team (20)

Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)
 
Akka.Net
Akka.NetAkka.Net
Akka.Net
 
Mini training- Scenario Driven Design
Mini training- Scenario Driven DesignMini training- Scenario Driven Design
Mini training- Scenario Driven Design
 
Email Management in Outlook
Email Management in OutlookEmail Management in Outlook
Email Management in Outlook
 
Mini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity FoundationMini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity Foundation
 
Training - What is Performance ?
Training  - What is Performance ?Training  - What is Performance ?
Training - What is Performance ?
 
Mini-Training: Docker
Mini-Training: DockerMini-Training: Docker
Mini-Training: Docker
 
Mini Training Flyway
Mini Training FlywayMini Training Flyway
Mini Training Flyway
 
Management 3.0 Workout
Management 3.0 WorkoutManagement 3.0 Workout
Management 3.0 Workout
 
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
 
Mini-Training: Mobile UX Trends
Mini-Training: Mobile UX TrendsMini-Training: Mobile UX Trends
Mini-Training: Mobile UX Trends
 
Training: MVVM Pattern
Training: MVVM PatternTraining: MVVM Pattern
Training: MVVM Pattern
 
Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation Demystified
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
AngularJS Best Practices
AngularJS Best PracticesAngularJS Best Practices
AngularJS Best Practices
 
Mini-Training: Netflix Simian Army
Mini-Training: Netflix Simian ArmyMini-Training: Netflix Simian Army
Mini-Training: Netflix Simian Army
 
Mini-Training: Javascript Patterns
Mini-Training: Javascript PatternsMini-Training: Javascript Patterns
Mini-Training: Javascript Patterns
 
Mini-Training: Redis
Mini-Training: RedisMini-Training: Redis
Mini-Training: Redis
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Mini-Training: TypeScript
Mini-Training: TypeScriptMini-Training: TypeScript
Mini-Training: TypeScript
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

Mini-Training: Measure Anything Optimize Everything

  • 2.  Make decisions based on a scientific approach  Build a scientific approach based on what is known of « real life » aka « Production » “You can’t manage what you don’t measure.” W. Edwards Deming, Peter Drucker Measure anything, Optimize Everything
  • 3. • Different levels of knowledge: • Level 0 : no monitoring, metrics or logs. Features are defined based on feeling, intuitions. This is a blind approach. • Level 1 : metrics and logs are reviewed post dev. Success is defined based on real events and failures. • Level 2 : decisions and actions are deducted from metrics and statistics. We measure to validate the results of our actions. Where are we ? Get Knowledge
  • 4. • How do we know something is wrong ? – Customer Service: calls from customers – Error Logs • How do we know everything is ok ? – … Production Knowledge
  • 5. • How do we know if the new killer feature is used ? • How do we know how efficient is our code ? Feature Knowledge
  • 6. • Define a metrics-driven process to : – Know applications in real life – Monitor – Evolve in a measured and verified way Objectives
  • 7. 1. Ask a question 2. Set an idea 3. Establish a prediction along this idea 4. Experiment to test this prediction 5. Analyse results to validate or reject the idea 6. Share results 7. Repeat Scientific approach
  • 8. • This approach needs a deep instrumentation of the whole platform : – Aggregate data from many sources – Measure – Monitor along time – Analyse it in real-time or at posteriori – Decide and act accordingly Measure anything
  • 10. • Tools to monitor network and machines : – Nagios/Centreon – SCOM • Metrics : – Server status – Front / Service status – Network Bandwidth – … Technical Monitoring
  • 11. • Hard to manage : – Related to business – Change as business changes (often) – Can’t be easily automated, not easily catchable • Examples : – Login successful/failed – Bets placed Sport / Turf – Casino transactions – Challenge subscriptions – Banners displayed What about application ?
  • 12. Application monitoring = Business monitoring • Each application knows its own business – Define and report their own metrics • Examples : – On Turf, how many races are on sale. – On Sport, how many time it takes to place a bet. – On Casino, how many games are currently available. – … Application monitoring
  • 13. 13 All is about Metrics High Level Real Time Fast issue detection Confidence Metrics should be part of every feature. Simple Accessible Required Pertinent “Measure what is measurable, and make measurable what is not so.” Galileo Galilei
  • 14. • Dashboards : – Dev oriented – Display metrics – Inform if all is OK – Emit alerts – Real time production status Application monitoring
  • 15. Dashboards Level 2 (at Etsy)
  • 16. • If we can measure, we can optimize – Reduce Errors logs – Reduce response time – Optimize call numbers – Remove dead code/feature – Increase offer/bet placed – … – Overall Quality 16 Finally : Optimize Everything
  • 18. • Etsy technical blog (code, deployment, devops,…): http://codeascraft.com • http://fr.slideshare.net/frankhoffsummer/measure-anything-measure-everything-8178303 • http://fr.slideshare.net/mikebrittain/metricsdriven-engineering Source
  • 19. Find out more • On https://techblog.betclicgroup.com/
  • 20. About Betclic • Betclic Everest Group, one of the world leaders in online gaming, has a unique portfolio comprising various complementary international brands: Betclic, Everest Gaming, bet-at-home.com, Expekt… • Active in 100 countries with more than 12 million customers worldwide, the Group is committed to promoting secure and responsible gaming and is a member of several international professional associations including the EGBA (European Gaming and Betting Association) and the ESSA (European Sports Security Association). • Through our brands, Betclic Everest Group places expertise, technological know-how and security at the heart of our strategy to deliver an on-line gaming offer attuned to the passion of our players.