SlideShare a Scribd company logo
1 of 78
Download to read offline
Decision Making Based on Machine Learning
at .
Jesper Richter-Reichhelm (@jrirei)
In the beginning there was void and every customer was
seeing the same version of the website.
But then came along a Product manager and spoke:
“What is this?
I need to be able to test variants of our products.
I will introduce something!”
And she took an off-the-shelf solution and now every
customer could see a different version of the website.
And after it was done she was happy and

life was good.
But then came along a Data Scientist and spoke:
“What is this?
I need to be able to add complex algorithms

to steer business processes.
I will take this and make it better!”
And he hacked together wrote a complex decision making
system that he would call Smart Gateway because it could
steer processes throughout all the company.
And after it was done both were happy and

life was good.
But then came along a Software Engineer and spoke:
“What is this?
If there would come just one strong wind,

everything would fall down and crash.
I will take this and make it better!”
And he would take the Smart Gateway and rewrite it from
scratch refactor it a bit to make it production ready.
And after it was done all three were happy and

life was good.
But then all three looked at the thing that they have
created together and spoke:
“What is this?
How did this become something so much more powerful

than what we set out to do in the first place?”
“Actually we have truly build a …”
Relevant fashion for men
Day 1
Day 1 Day 3
Day 1 Day 3 Day 4
Day 1 Day 3 Day 4 Day 5
Customer journey is quite “long”
Day 1 Day 3 Day 4 Day 5 Day 19
2-3 weeks to know what we’ve sold
Order economics demand complex tradeoffs
Cart Cost
Goods kept
Returned
Order economics demand complex tradeoffs
Cart Cost
operational profit
Goods kept
Buying
Logistics
Service
Other
Science

=

Data & Tech
Art

=

Stylist team
King

=

Customer
Science

=

Data & Tech
Art

=

Stylist team
Cart Cost
Data Driven Vision
AB Tests
Chapter 1 driven by Product
AB Tests with an external service
AB Tests with an external service
Canary testing with nginx
Canary testing with nginx
Problem: Parallel experiments with canary tests
A B
Problem: Parallel experiments with canary tests
AB BAAA BB
Problem: External tool can only track conversion
Problem: External tool can only track conversion
Day 1 Day 3 Day 4 Day 5 Day 19
2-3 weeks to know what we’ve sold
Problem: External tool does not support decision points
Cart Cost
operational profit
Goods kept
Buying
Logistics
Service
Other
Problem: External tool does not support decision points
Smart Gateway
Chapter 2 driven by Data Science
Goals
• Integration with IT platform
• Decision Points yield persistent results
• Complex decision making logic to allow process steering
• Configurable for flexibility
Smart Gateway is integrated in platform
Service
Service Smart Gateway
Service
REST
Black Box
Smart Gateways have persistence
Service
Service Smart Gateway
Service
Black Box
SQL
Smart Gateways are “smart”
• Data Scientists create an algorithm, called Decider
• Algorithm can have DWH access
• Algorithm is packed in a Docker container and listens to http calls
Smart Gateways are “smart”
Service
Service Smart Gateway
Service
Black Box
SQL
Smart Gateways are “smart”
Service
Service Smart Gateway
Service
Decider
Decider
Decider
DWH
http
SQL
Smart Gateways are configurable
• Sampling: routing of traffic to experiments
• Experiments can opt in independently
• Experiments define groups (random distribution)
• Groups map to a Decider
Smart Gateways are configurable
Decider
Decider
Decider
Decider
Decider
Decider
Sampling
Experiment
Experiment
25%
50% of “DE”
default
“A”
“B”
Age < 30 ? “A” : “B”
Age < 35 ? “A” : “B”
<something smart>
<some default>
50%
50%
50%
30%
20%
Problem: Data is not real time and can’t be consistent
Service
Service Smart Gateway
Service
Decider
Decider
Decider
DWH
data import
SQL
Problem: One single point of failure
Service
Service Smart Gateway
Service
Decider
Decider
Decider
DWH
SQL
all on one host
default

decision
Smart Gateway v2
Chapter 3 driven by IT
Goals
• Separation of concerns
• Data access is real time
• Production ready setup
Created a new team to shift responsibilities
Stylist Support
Logistics Support
Web
Data / ML
BI
Created a new team to shift responsibilities
Stylist Support
Logistics Support
Web
Data Delivery Data / ML
BI
Created a new team to shift responsibilities
Service
Service Smart Gateway
Service
Decider
Decider
Decider
DWH
SQL
Configuration is now DB based
• It simply got too big
• Decision Point
• n Experiments per Decision Point
• n Deciders per Experiment
• REST API to change config on the fly
Smart Gateways do “data enrichment”
• Deciders become pure functions
• Before sampling of traffic, call is enriched with data
• Enrichment is configurable
• Enriched data can be used to decide if experiments “opt in”
Smart Gateways now do “data enrichment”
Enrichment Sampling Experiment
Decider
Decider
DeciderRetrieve data:
• REST call
• constant value
• LocalStore (K/V)
• JS Script
Smart Gateways become production ready
• Professional Docker setup
• Orchestrating Docker containers via Kubernetes
Decider
Decider
Decider
Smart Gateway
Smart Gateways become production ready
Service
Service Smart Gateway
Service
Decider
Decider
Decider
SQL
Service
Service
SQL Redis
Data Job
Example use cases
• AB testing
• Decision Points
• User discrimination to prepayment
• … and many more
• Also very nice: shadow mode
Smart Gateways
Service
Service Smart GatewaySmart Gateway
Service
DeciderDecider
DeciderDecider
DeciderDecider
Service
Service
RedisSQL
Data Job
Smart Gateways are a runtime environment for pure functions
Service
Service Smart GatewaySmart Gateway
Service
Decider𝛌
Decider𝛌
Decider𝛌
Service
Service
RedisSQL
Data Job
Delivery platform for pure functions
Chapter 4 driven by Product, Data Science, and IT
Our own delivery platform for algorithms
Example 1: Supporting our stylists in decision making
Filters…
Customer
Info
Order /
Basket
Available Stock
• For every order
• For every article in stock
• Calculate a score how likely
customer is to keep this article
• Score is used to encourage or
discourage stylist to pick an article
Example 2: Scanning return slips
• External partner would take too
long
• Implemented algorithm on our own
• Every scan is handled via Smart
Gateway
• Information on follow on orders
is now available
Filters…
Customer
Info
Order /
Basket
Available Stock
Smart Gateway
120 sec execution time3 MB data (input / output)
Smart Gateway became asynchronous (if necessary)
Service
Service Smart GatewaySmart Gateway
Service
Decider𝛌
Decider𝛌
Decider𝛌
Service
Service
RedisSQL
Data Job
AWESOME
Conclusion
By me
But then all three looked at the thing that they have
created together and spoke:
“What is this?
How did this become something so much more powerful

than what we set out to do in the first place?”
“Actually we have truly build a system that can run

just any pure function.
AB tests and process steering are just the beginning.
Maybe speech recognition is next. Or maybe…”
With that they started to brainstorm all the cool things
they could do in the future.
Time and the next Hackathon will tell

what they made out of it.
And maybe I can come back next year

to tell you all about it.
The End
Questions?
Jesper Richter-Reichhelm (@jrirei)

More Related Content

Similar to Decision Making based on Machine Learning at Outfittery (W-JAX 2017)

Accelerate ML Deployment with H2O Driverless AI on AWS
Accelerate ML Deployment with H2O Driverless AI on AWSAccelerate ML Deployment with H2O Driverless AI on AWS
Accelerate ML Deployment with H2O Driverless AI on AWSSri Ambati
 
Power to the People: A Stack to Empower Every User to Make Data-Driven Decisions
Power to the People: A Stack to Empower Every User to Make Data-Driven DecisionsPower to the People: A Stack to Empower Every User to Make Data-Driven Decisions
Power to the People: A Stack to Empower Every User to Make Data-Driven DecisionsLooker
 
Continuous delivery is more than dev ops
Continuous delivery is more than dev opsContinuous delivery is more than dev ops
Continuous delivery is more than dev opsAgile Montréal
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware Cprime
 
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...Looker
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday SeasonG3 Communications
 
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼Elasticsearch
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous DeliveryXebiaLabs
 
Doing Analytics Right - Building the Analytics Environment
Doing Analytics Right - Building the Analytics EnvironmentDoing Analytics Right - Building the Analytics Environment
Doing Analytics Right - Building the Analytics EnvironmentTasktop
 
ISV Showcase: End-to-end Machine Learning using H2O on Azure
ISV Showcase: End-to-end Machine Learning using H2O on AzureISV Showcase: End-to-end Machine Learning using H2O on Azure
ISV Showcase: End-to-end Machine Learning using H2O on AzureMicrosoft Tech Community
 
Maintainable Machine Learning Products
Maintainable Machine Learning ProductsMaintainable Machine Learning Products
Maintainable Machine Learning ProductsAndrew Musselman
 
How Celtra Optimizes its Advertising Platform with Databricks
How Celtra Optimizes its Advertising Platformwith DatabricksHow Celtra Optimizes its Advertising Platformwith Databricks
How Celtra Optimizes its Advertising Platform with DatabricksGrega Kespret
 
Store, Extract, Transform, Load, Visualize. Untagged Conference
Store, Extract, Transform, Load, Visualize. Untagged ConferenceStore, Extract, Transform, Load, Visualize. Untagged Conference
Store, Extract, Transform, Load, Visualize. Untagged ConferenceAni Lopez
 
Introducción al Machine Learning Automático
Introducción al Machine Learning AutomáticoIntroducción al Machine Learning Automático
Introducción al Machine Learning AutomáticoSri Ambati
 
Le big data à l'épreuve des projets d'entreprise
Le big data à l'épreuve des projets d'entrepriseLe big data à l'épreuve des projets d'entreprise
Le big data à l'épreuve des projets d'entrepriseRubedo, a WebTales solution
 
Building High Available and Scalable Machine Learning Applications
Building High Available and Scalable Machine Learning ApplicationsBuilding High Available and Scalable Machine Learning Applications
Building High Available and Scalable Machine Learning ApplicationsYalçın Yenigün
 
Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Agile India
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro - Database DevOps
 

Similar to Decision Making based on Machine Learning at Outfittery (W-JAX 2017) (20)

Accelerate ML Deployment with H2O Driverless AI on AWS
Accelerate ML Deployment with H2O Driverless AI on AWSAccelerate ML Deployment with H2O Driverless AI on AWS
Accelerate ML Deployment with H2O Driverless AI on AWS
 
Power to the People: A Stack to Empower Every User to Make Data-Driven Decisions
Power to the People: A Stack to Empower Every User to Make Data-Driven DecisionsPower to the People: A Stack to Empower Every User to Make Data-Driven Decisions
Power to the People: A Stack to Empower Every User to Make Data-Driven Decisions
 
Continuous delivery is more than dev ops
Continuous delivery is more than dev opsContinuous delivery is more than dev ops
Continuous delivery is more than dev ops
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware
 
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...
Webinar with SnagAJob, HP Vertica and Looker - Data at the speed of busines s...
 
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
5 Steps To Deliver The Fastest Mobile Shopping Experience This Holiday Season
 
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼
Customer Story: Elastic Stack을 이용한 게임 서비스 통합 로깅 플랫폼
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New Contexts
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery
 
Conclusion Connect state of IoT 2019 Review io t solutions world congress 2019
Conclusion Connect state of IoT 2019 Review io t solutions world congress 2019Conclusion Connect state of IoT 2019 Review io t solutions world congress 2019
Conclusion Connect state of IoT 2019 Review io t solutions world congress 2019
 
Doing Analytics Right - Building the Analytics Environment
Doing Analytics Right - Building the Analytics EnvironmentDoing Analytics Right - Building the Analytics Environment
Doing Analytics Right - Building the Analytics Environment
 
ISV Showcase: End-to-end Machine Learning using H2O on Azure
ISV Showcase: End-to-end Machine Learning using H2O on AzureISV Showcase: End-to-end Machine Learning using H2O on Azure
ISV Showcase: End-to-end Machine Learning using H2O on Azure
 
Maintainable Machine Learning Products
Maintainable Machine Learning ProductsMaintainable Machine Learning Products
Maintainable Machine Learning Products
 
How Celtra Optimizes its Advertising Platform with Databricks
How Celtra Optimizes its Advertising Platformwith DatabricksHow Celtra Optimizes its Advertising Platformwith Databricks
How Celtra Optimizes its Advertising Platform with Databricks
 
Store, Extract, Transform, Load, Visualize. Untagged Conference
Store, Extract, Transform, Load, Visualize. Untagged ConferenceStore, Extract, Transform, Load, Visualize. Untagged Conference
Store, Extract, Transform, Load, Visualize. Untagged Conference
 
Introducción al Machine Learning Automático
Introducción al Machine Learning AutomáticoIntroducción al Machine Learning Automático
Introducción al Machine Learning Automático
 
Le big data à l'épreuve des projets d'entreprise
Le big data à l'épreuve des projets d'entrepriseLe big data à l'épreuve des projets d'entreprise
Le big data à l'épreuve des projets d'entreprise
 
Building High Available and Scalable Machine Learning Applications
Building High Available and Scalable Machine Learning ApplicationsBuilding High Available and Scalable Machine Learning Applications
Building High Available and Scalable Machine Learning Applications
 
Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
 

Recently uploaded

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 

Recently uploaded (20)

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 

Decision Making based on Machine Learning at Outfittery (W-JAX 2017)

  • 1. Decision Making Based on Machine Learning at . Jesper Richter-Reichhelm (@jrirei)
  • 2. In the beginning there was void and every customer was seeing the same version of the website.
  • 3. But then came along a Product manager and spoke:
  • 4. “What is this? I need to be able to test variants of our products. I will introduce something!”
  • 5. And she took an off-the-shelf solution and now every customer could see a different version of the website. And after it was done she was happy and
 life was good.
  • 6. But then came along a Data Scientist and spoke:
  • 7. “What is this? I need to be able to add complex algorithms
 to steer business processes. I will take this and make it better!”
  • 8. And he hacked together wrote a complex decision making system that he would call Smart Gateway because it could steer processes throughout all the company. And after it was done both were happy and
 life was good.
  • 9. But then came along a Software Engineer and spoke:
  • 10. “What is this? If there would come just one strong wind,
 everything would fall down and crash. I will take this and make it better!”
  • 11. And he would take the Smart Gateway and rewrite it from scratch refactor it a bit to make it production ready. And after it was done all three were happy and
 life was good.
  • 12. But then all three looked at the thing that they have created together and spoke:
  • 13. “What is this? How did this become something so much more powerful
 than what we set out to do in the first place?”
  • 14. “Actually we have truly build a …”
  • 16.
  • 17. Day 1
  • 19. Day 1 Day 3 Day 4
  • 20. Day 1 Day 3 Day 4 Day 5
  • 21. Customer journey is quite “long” Day 1 Day 3 Day 4 Day 5 Day 19 2-3 weeks to know what we’ve sold
  • 22. Order economics demand complex tradeoffs Cart Cost Goods kept Returned
  • 23. Order economics demand complex tradeoffs Cart Cost operational profit Goods kept Buying Logistics Service Other
  • 24. Science = Data & Tech Art = Stylist team King = Customer
  • 25. Science = Data & Tech Art = Stylist team Cart Cost Data Driven Vision
  • 26. AB Tests Chapter 1 driven by Product
  • 27. AB Tests with an external service
  • 28. AB Tests with an external service
  • 31.
  • 32. Problem: Parallel experiments with canary tests A B
  • 33. Problem: Parallel experiments with canary tests AB BAAA BB
  • 34. Problem: External tool can only track conversion
  • 35. Problem: External tool can only track conversion Day 1 Day 3 Day 4 Day 5 Day 19 2-3 weeks to know what we’ve sold
  • 36. Problem: External tool does not support decision points Cart Cost operational profit Goods kept Buying Logistics Service Other
  • 37. Problem: External tool does not support decision points
  • 38. Smart Gateway Chapter 2 driven by Data Science
  • 39. Goals • Integration with IT platform • Decision Points yield persistent results • Complex decision making logic to allow process steering • Configurable for flexibility
  • 40. Smart Gateway is integrated in platform Service Service Smart Gateway Service REST Black Box
  • 41. Smart Gateways have persistence Service Service Smart Gateway Service Black Box SQL
  • 42. Smart Gateways are “smart” • Data Scientists create an algorithm, called Decider • Algorithm can have DWH access • Algorithm is packed in a Docker container and listens to http calls
  • 43. Smart Gateways are “smart” Service Service Smart Gateway Service Black Box SQL
  • 44. Smart Gateways are “smart” Service Service Smart Gateway Service Decider Decider Decider DWH http SQL
  • 45. Smart Gateways are configurable • Sampling: routing of traffic to experiments • Experiments can opt in independently • Experiments define groups (random distribution) • Groups map to a Decider
  • 46. Smart Gateways are configurable Decider Decider Decider Decider Decider Decider Sampling Experiment Experiment 25% 50% of “DE” default “A” “B” Age < 30 ? “A” : “B” Age < 35 ? “A” : “B” <something smart> <some default> 50% 50% 50% 30% 20%
  • 47.
  • 48. Problem: Data is not real time and can’t be consistent Service Service Smart Gateway Service Decider Decider Decider DWH data import SQL
  • 49. Problem: One single point of failure Service Service Smart Gateway Service Decider Decider Decider DWH SQL all on one host default
 decision
  • 50. Smart Gateway v2 Chapter 3 driven by IT
  • 51. Goals • Separation of concerns • Data access is real time • Production ready setup
  • 52. Created a new team to shift responsibilities Stylist Support Logistics Support Web Data / ML BI
  • 53. Created a new team to shift responsibilities Stylist Support Logistics Support Web Data Delivery Data / ML BI
  • 54. Created a new team to shift responsibilities Service Service Smart Gateway Service Decider Decider Decider DWH SQL
  • 55. Configuration is now DB based • It simply got too big • Decision Point • n Experiments per Decision Point • n Deciders per Experiment • REST API to change config on the fly
  • 56. Smart Gateways do “data enrichment” • Deciders become pure functions • Before sampling of traffic, call is enriched with data • Enrichment is configurable • Enriched data can be used to decide if experiments “opt in”
  • 57. Smart Gateways now do “data enrichment” Enrichment Sampling Experiment Decider Decider DeciderRetrieve data: • REST call • constant value • LocalStore (K/V) • JS Script
  • 58. Smart Gateways become production ready • Professional Docker setup • Orchestrating Docker containers via Kubernetes
  • 59. Decider Decider Decider Smart Gateway Smart Gateways become production ready Service Service Smart Gateway Service Decider Decider Decider SQL Service Service SQL Redis Data Job
  • 60. Example use cases • AB testing • Decision Points • User discrimination to prepayment • … and many more • Also very nice: shadow mode
  • 61.
  • 62. Smart Gateways Service Service Smart GatewaySmart Gateway Service DeciderDecider DeciderDecider DeciderDecider Service Service RedisSQL Data Job
  • 63. Smart Gateways are a runtime environment for pure functions Service Service Smart GatewaySmart Gateway Service Decider𝛌 Decider𝛌 Decider𝛌 Service Service RedisSQL Data Job
  • 64. Delivery platform for pure functions Chapter 4 driven by Product, Data Science, and IT
  • 65. Our own delivery platform for algorithms
  • 66. Example 1: Supporting our stylists in decision making Filters… Customer Info Order / Basket Available Stock • For every order • For every article in stock • Calculate a score how likely customer is to keep this article • Score is used to encourage or discourage stylist to pick an article
  • 67. Example 2: Scanning return slips • External partner would take too long • Implemented algorithm on our own • Every scan is handled via Smart Gateway • Information on follow on orders is now available
  • 68. Filters… Customer Info Order / Basket Available Stock Smart Gateway 120 sec execution time3 MB data (input / output)
  • 69. Smart Gateway became asynchronous (if necessary) Service Service Smart GatewaySmart Gateway Service Decider𝛌 Decider𝛌 Decider𝛌 Service Service RedisSQL Data Job
  • 72. But then all three looked at the thing that they have created together and spoke:
  • 73. “What is this? How did this become something so much more powerful
 than what we set out to do in the first place?”
  • 74. “Actually we have truly build a system that can run
 just any pure function. AB tests and process steering are just the beginning. Maybe speech recognition is next. Or maybe…”
  • 75. With that they started to brainstorm all the cool things they could do in the future.
  • 76. Time and the next Hackathon will tell
 what they made out of it. And maybe I can come back next year
 to tell you all about it.