SlideShare une entreprise Scribd logo
1  sur  74
Télécharger pour lire hors ligne
WELCOME TO
THE LONDON SCALA UG
MEET UP
@
WILLIAM HILL
Luis Ángel Vicente Sánchez
Software Engineer @ Innovation Team
OMNIA
DISTRIBUTED & REACTIVE
PLATFORM FOR DATA MANAGEMENT
Site https://developer.williamhill.com
Twi$er	 https://twitter.com/lvicentesanchez
WHY BUILDING A DATA MANAGEMENT PLATFORM?
WHY BUILDING A DATA MANAGEMENT PLATFORM?
•  Lots of information flowing in the system.
•  What if we could make sense of all of it...?
•  ... and on real-time?
•  We would be in a great position to innovate.
WHY BUILDING A DATA MANAGEMENT PLATFORM?
BUT…
BUT… AVAILABILITY
BUT… AVAILABILITY
BUT…
BUT… SCALABILITY
BUT… SCALABILITY
BUT…
BUT… FAULT TOLERANCE
BUT… FAULT TOLERANCE
REQUIREMENTS
Availability	
Fault	
tolerance	
Scalability	
REQUIREMENTS
REACTIVE MANIFESTO
REACTIVE MANIFESTO
REACTIVE MANIFESTO
Respond	in	a	+mely	manner
REACTIVE MANIFESTO
Respond	in	a	+mely	manner	
Stay	responsive	under	different	workloads
REACTIVE MANIFESTO
Respond	in	a	+mely	manner	
Stay	responsive	under	different	workloads	 Stay	responsive	in	face	of	failures
REACTIVE MANIFESTO
Respond	in	a	+mely	manner	
Stay	responsive	under	different	workloads	 Stay	responsive	in	face	of	failures	
Loose	coupling,	isola+on,	loca+on	transparency,	and	error	handling	delega+on
OMNIA
•  It’s a lambda architecture.
OMNIA
•  It’s a lambda architecture.
OMNIA
•  It’s a lambda architecture.
OMNIA
Input	 Chronos
DataSource
NeoCortex
Speed Layer
Fates
Batch Layer
Hermes
ServingLayer
Output
CHRONOS
•  Collects data from multiple data sources.
•  Initially a PUSH system…
•  ... but that introduces dependencies on 3rd parties.
•  Evolved to a PUSH-PULL system.
CHRONOS
CHRONOS
Chronos
DataSource
TCP
HTTP
WS
Bets	Deposits		Prices
CHRONOS
JMS
SSE
Chronos
DataSource
TCP
HTTP
WS
…	
HTTP
Poll
Bets	Deposits		Prices
CHRONOS
JMS
SSE
Chronos
DataSource
TCP
HTTP
WS
…	
HTTP
Poll
Streams
Bets	Deposits		Prices
CHRONOS
STREAM
CHRONOS
Adapter
STREAM
CHRONOS
Adapter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE
CHRONOS
Adapter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE
CHRONOS
Adapter Converter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE
CHRONOS
Adapter Converter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE	
INCIDENT:
{
type: “bet”,
version: “1.0”,
time: “2015-09-03 06:00:10”,
acquisitionTime: “2015-09-03 06:00:06”,
source: “BetSystem”,
payload: {…. Any valid JSON …}
}
CHRONOS
Adapter Converter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE	
INCIDENT:
{
type: “bet”,
version: “1.0”,
time: “2015-09-03 06:00:10”,
acquisitionTime: “2015-09-03 06:00:06”,
source: “BetSystem”,
payload: {…. Any valid JSON …}
}
Observable[Incident]
CHRONOS
Adapter Converter
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE	
INCIDENT:
{
type: “bet”,
version: “1.0”,
time: “2015-09-03 06:00:10”,
acquisitionTime: “2015-09-03 06:00:06”,
source: “BetSystem”,
payload: {…. Any valid JSON …}
}
Observable[Incident]
CHRONOS
Adapter Converter Persistor
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE	
INCIDENT:
{
type: “bet”,
version: “1.0”,
time: “2015-09-03 06:00:10”,
acquisitionTime: “2015-09-03 06:00:06”,
source: “BetSystem”,
payload: {…. Any valid JSON …}
}
Observable[Incident]
CHRONOS
Adapter Converter Persistor
STREAM	
PUSH:	
•  HTTP	
•  TCP	
•  WEB	SOCKETS	
	
PULL:	
•  HTTP	POLL	
•  JMS	
•  SSE	
INCIDENT:
{
type: “bet”,
version: “1.0”,
time: “2015-09-03 06:00:10”,
acquisitionTime: “2015-09-03 06:00:06”,
source: “BetSystem”,
payload: {…. Any valid JSON …}
}
Observable[Incident]
CHRONOS
CHRONOS
Chronos 1 Chronos 2 Chronos 3 Chronos N
….…
CHRONOS
Chronos 1
(SSE, Bets placed)
(SSE, Twitter)
Chronos 2
(JMS, Deposits)
Chronos 3
(HTTP, Events)
Chronos N
….…
CHRONOS
Chronos 1
(SSE, Bets placed)
(SSE, Twitter)
Chronos 2
(JMS, Deposits)
Chronos 3
(HTTP, Events)
Chronos N
….…
CHRONOS
Chronos 1
(SSE, Bets placed)
(SSE, Twitter)
Chronos 2
(JMS, Deposits)
Chronos 3
(HTTP, Events)
Chronos N
….…
CHRONOS
Chronos 1
(SSE, Bets placed)
(SSE, Twitter)
Chronos 3
(HTTP, Events)
Chronos N
(SSE, Twitter)
….…	
Chronos 2
(JMS, Deposits)
(SSE, Bets placed)
FATES
FATES
Views
Jobs
Fates
•  Long term memory.
•  Records all incidents as timelines, i.e. customer bets,
customer payments, everything that happens in a
match…
•  … or any combination of those.
FATES
FATES
Bets	 Deposits		Events	 Session	
Fates
Batch Layer
FATES
Timelines
Bets	 Deposits		Events	 Session	
Fates
Batch Layer
FATES
Customer: 123
Login
Deposit
Bet placed
…	
LogoutTimelines
Bets	 Deposits		Events	 Session	
Fates
Batch Layer
FATES
Customer: 123
Login
Deposit
Bet placed
…	
Logout
Event: 78
Started
Bet placed
Penalty
…	
GoalTimelines
Bets	 Deposits		Events	 Session	
Fates
Batch Layer
•  Creates views using the timelines and/or other views.
•  These views are created using:
– Timeline analysis
– Logical reasoning…
– ... or any other ML technique
FATES
FATES
Logical	
Reasoning	
• DeducDon	
• InducDon	
• AbducDon	
Timeline	analysis	
• Trends	
• Cycles	
• Seasonality	
Other	ML	
• ClassificaDon	
• Clustering	
• PredicDons
•  Timelines and views persisted to Cassandra.
•  Column family name: <category>_tl or <category>_vw
•  Column family key: ((entityId, date), timestamp)
FATES
NEOCORTEX
NEOCORTEX
Bets	Deposits		Events	Session	
Micro Services
Output
•  Short term memory
•  Built on top of Spark: performant, distributed, real-time
computations.
•  Built on top of abstractions that hide low level details:
Timeline, View, Stream, Sink, Monoid, Group, Ring…
NEOCORTEX
NEOCORTEX
HERMES
•  Full duplex serving layer.
•  Can be queried from any backend…
•  ... and we provide a JS library to provide efficient data
access from the browser. Inspired by Falcor and
GraphML
HERMES
HERMES
B2C
Browser
B2B
Loadbalancer
Push
Server
Distributed
Cache
Push
Server
Push
Server
…	
TCP
WS
HTTP
JSAPI
WH
Apps
Cache
Cache
Apps
HERMES
Hermes	
Distributed	Cache	
Hermes	Node	
	
	
	
	
	
	
	
	
	
Local	Cache	
SubscripDon	Manager	
Client	Manager	
AuthenDcaDon	Handler	
Dispatcher	
HTTP	
WS	
TCP	
Browser	
Hermes	JS	
WH	Apps
INFRASTRUCTURE
INFRASTRUCTURE
Omnia	
Docker	
Marathon		
Mesos	
Node	 Node	 Node	 Node	 Node
USE CASE: BET SUGGESTIONS
•  To provide customers with bet suggestions to make their
experience more relevant/personal
•  Offered to new and existing customers.
•  Hot bets and personalized suggestions.
USE CASE: BET SUGGESTIONS
USE CASE: BET SUGGESTIONS
USE CASE: GAMIFICATION
•  To provide customers with a more engaging experience
by gamifying parts of the customer journey.
•  Appeal to attributes like status, mastery, belonging.
•  Achievements and rewards, leveling up, leaderboard, …
USE CASE: GAMIFICATION
USE CASE: GAMIFICATION
https://careers.williamhillplc.com
QUESTIONS
7
4
Twitter: @WHTechjobs

Contenu connexe

Similaire à London Scala Meetup - Omnia

How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)Yan Cui
 
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Institut Lean France
 
Approaches for application request throttling - dotNetCologne
Approaches for application request throttling - dotNetCologneApproaches for application request throttling - dotNetCologne
Approaches for application request throttling - dotNetCologneMaarten Balliauw
 
ConFoo Montreal - Approaches for application request throttling
ConFoo Montreal - Approaches for application request throttlingConFoo Montreal - Approaches for application request throttling
ConFoo Montreal - Approaches for application request throttlingMaarten Balliauw
 
Approaches to application request throttling
Approaches to application request throttlingApproaches to application request throttling
Approaches to application request throttlingMaarten Balliauw
 
Getting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsGetting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsAmazon Web Services
 
Reactor, Reactive streams and MicroServices
Reactor, Reactive streams and MicroServicesReactor, Reactive streams and MicroServices
Reactor, Reactive streams and MicroServicesStéphane Maldini
 
Approaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandApproaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandMaarten Balliauw
 
How to build observability into Serverless (BuildStuff 2018)
How to build observability into Serverless (BuildStuff 2018)How to build observability into Serverless (BuildStuff 2018)
How to build observability into Serverless (BuildStuff 2018)Yan Cui
 
Hey man, can I get a clue?
Hey man, can I get a clue?Hey man, can I get a clue?
Hey man, can I get a clue?Voxeo Corp
 
The free lunch is over
The free lunch is overThe free lunch is over
The free lunch is overThadeu Russo
 
Spark Streaming with Cassandra
Spark Streaming with CassandraSpark Streaming with Cassandra
Spark Streaming with CassandraJacek Lewandowski
 
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...DevOps.com
 
Twitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat ArchitectureTwitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat ArchitectureC4Media
 
The present and future of serverless observability
The present and future of serverless observabilityThe present and future of serverless observability
The present and future of serverless observabilityYan Cui
 
Tracking a soccer game with Big Data
Tracking a soccer game with Big DataTracking a soccer game with Big Data
Tracking a soccer game with Big DataWSO2
 
Strata 2014 Talk:Tracking a Soccer Game with Big Data
Strata 2014 Talk:Tracking a Soccer Game with Big DataStrata 2014 Talk:Tracking a Soccer Game with Big Data
Strata 2014 Talk:Tracking a Soccer Game with Big DataSrinath Perera
 

Similaire à London Scala Meetup - Omnia (20)

How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)How to build observability into Serverless (O'Reilly Velocity 2018)
How to build observability into Serverless (O'Reilly Velocity 2018)
 
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
 
Is this normal?
Is this normal?Is this normal?
Is this normal?
 
Approaches for application request throttling - dotNetCologne
Approaches for application request throttling - dotNetCologneApproaches for application request throttling - dotNetCologne
Approaches for application request throttling - dotNetCologne
 
ConFoo Montreal - Approaches for application request throttling
ConFoo Montreal - Approaches for application request throttlingConFoo Montreal - Approaches for application request throttling
ConFoo Montreal - Approaches for application request throttling
 
Approaches to application request throttling
Approaches to application request throttlingApproaches to application request throttling
Approaches to application request throttling
 
Getting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsGetting Started with Real-Time Analytics
Getting Started with Real-Time Analytics
 
Reactor, Reactive streams and MicroServices
Reactor, Reactive streams and MicroServicesReactor, Reactive streams and MicroServices
Reactor, Reactive streams and MicroServices
 
Approaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandApproaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days Poland
 
How to build observability into Serverless (BuildStuff 2018)
How to build observability into Serverless (BuildStuff 2018)How to build observability into Serverless (BuildStuff 2018)
How to build observability into Serverless (BuildStuff 2018)
 
About time
About timeAbout time
About time
 
Hey man, can I get a clue?
Hey man, can I get a clue?Hey man, can I get a clue?
Hey man, can I get a clue?
 
The free lunch is over
The free lunch is overThe free lunch is over
The free lunch is over
 
Spark Streaming with Cassandra
Spark Streaming with CassandraSpark Streaming with Cassandra
Spark Streaming with Cassandra
 
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...
Three Pillars, No Answers: Helping Platform Teams Solve Real Observability Pr...
 
Flink. Pure Streaming
Flink. Pure StreamingFlink. Pure Streaming
Flink. Pure Streaming
 
Twitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat ArchitectureTwitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat Architecture
 
The present and future of serverless observability
The present and future of serverless observabilityThe present and future of serverless observability
The present and future of serverless observability
 
Tracking a soccer game with Big Data
Tracking a soccer game with Big DataTracking a soccer game with Big Data
Tracking a soccer game with Big Data
 
Strata 2014 Talk:Tracking a Soccer Game with Big Data
Strata 2014 Talk:Tracking a Soccer Game with Big DataStrata 2014 Talk:Tracking a Soccer Game with Big Data
Strata 2014 Talk:Tracking a Soccer Game with Big Data
 

Dernier

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
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
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
 
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
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
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
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
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
 
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
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
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.
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 

Dernier (20)

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
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.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...
 
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...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
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
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
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
 
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
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
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...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 

London Scala Meetup - Omnia