SlideShare a Scribd company logo
Kijk vooruit!
Steven Laan
Building a real-time forecasting engine with Scala and Akka
Lightbend CTO Roundtable 24-01-2017
Product Owner at ING Analytics
Academic background: Artificial Intelligence
Working as Dev Engineer since 2014
Steven.Laan@ing.nl https://nl.linkedin.com/in/steven-laan-64222b48
Steven Laan
Agenda
3
Why ING is a data-driven enterprise1. Strategy
How RAF is build3. Architecture and Technology
How we implement the tools4. Way of Working
The coolest feature in ING’s mobile app2. Use case: RAF
Lessons learned and the road ahead5. Conclusions
WHY: Strategy
ING’s Think Forward strategy was launched in March 2014
5
We are committed to helping our customers stay a step ahead
by making their data work harder for them
6
Compliant
Omnichannel
Predictive
Secure & reliable
Personal
How do we want to use data at ING?
7
the right message
at the right time
in the right channel
to the right customer
Message
Time Channel
What does ‘right’ mean?
• We want to be as relevant as possible
• ‘right’ = interesting enough to react positively (i.e. to click)
WHAT: Forecasting
8
What?
• Provide customers insight in their future transactions
How?
• Mobile app feature
• Start small: MVP
• Agile: Keep improving
Real-time Account Forecasting
9
Mobile interface
10
Main screen Transaction detailsTerms & conditions Info page
Architecture and Technologies
11
Forecasting chain
12
Mobile Platform
Backend
Services
Forecasting API
iOS
iOS
• Called by Mobile Platform (REST)
• Calls backend services (multiple protocols)
• Returns future transactions (JSON)
• Certain transactions
• Predicted transactions
Forecasting API
13
• Scala
• Akka
• Git
• Sbt
• Nolio
• Jenkins
• Graphite / Grafana
• Spark
Used Technologies
14
• Scala
• Interop with JVM
• Functional
• Akka
• Scalability
• Domain
Why Scala / Akka
15
Flow of a request
16
Spray HTTP
Service
RequestActor
FutureActors
HistoryActors
Historic
transactions
services
Planned
transactions
services
ForecastActor
Forecasting
Library
Flow of a request
17
Spray HTTP
Service
RequestActor
FutureActors
HistoryActors
Historic
transactions
services
Planned
transactions
services
ForecastActor
Forecasting
Library
Flow of a request
18
Spray HTTP
Service
RequestActor
FutureActors
HistoryActors
Historic
transactions
services
Planned
transactions
services
ForecastActor
Forecasting
Library
• RequestActor per request
• Scalable
• Asynchronous
• Dedicated service actors
• Configurability
• Error handling
• Separate forecasting library
• Separation of concern
• Reusable
• Parallel development
Actor System Architecture
19
Dealing with slower processes
20
Real time
transactions
service
Slow (legacy)
system
Forecasting
Library
Forecasting APIFront End DB Preprocessing
• Move towards streaming solutions
• Fast data
• Kafka / Flume / Flink
• Improve forecasting library
Road ahead
21
HOW: Way of working
ING is an Experimental Enterprise
Source: Edd Dumbill, Forbes, 2014
Squad
Tribes, squads, chapters, guilds, …
SquadSquad
Chapter
Guild
DS
DA
OpsOps
CJE
DS
DA
DS
CJE
DS
Ops
DS
CJE
Dev DevDevDevDev
A fun place to work!
25
26
Follow us to stay a step ahead
ING.com
YouTube.com/ING
SlideShare.net/ING@ING_News LinkedIn.com/company/ING
Flickr.com/INGGroupFacebook.com/ING

More Related Content

PDF
Journey to the Modern App with Containers, Microservices and Big Data
PDF
Going Reactive in the Land of No
PDF
Five Early Challenges Of Building Streaming Fast Data Applications
PPTX
Journey to the Modern App with Containers, Microservices and Big Data
PPTX
Serverless Architecture at iRobot
PDF
Evolving the Engineering Culture to Manage Kafka as a Service | Kate Agnew, O...
PDF
The Future of Services: Building Asynchronous, Resilient and Elastic Systems
PDF
Lightbend Fast Data Platform
Journey to the Modern App with Containers, Microservices and Big Data
Going Reactive in the Land of No
Five Early Challenges Of Building Streaming Fast Data Applications
Journey to the Modern App with Containers, Microservices and Big Data
Serverless Architecture at iRobot
Evolving the Engineering Culture to Manage Kafka as a Service | Kate Agnew, O...
The Future of Services: Building Asynchronous, Resilient and Elastic Systems
Lightbend Fast Data Platform

What's hot (20)

PDF
Death of the dumb pipes: Using Apache Kafka® for Integration projects
PDF
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
PDF
IBM and Lightbend Build Integrated Platform for Cognitive Development
PDF
Building Streaming And Fast Data Applications With Spark, Mesos, Akka, Cassan...
PDF
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
PDF
Event & Data Mesh as a Service: Industrializing Microservices in the Enterpri...
PDF
Extracting Value from IOT using Azure Cosmos DB, Azure Synapse Analytics and ...
PDF
The Event Mesh: real-time, event-driven, responsive APIs and beyond
PDF
Developing custom transformation in the Kafka connect to minimize data redund...
PDF
Why Kafka Works the Way It Does (And Not Some Other Way) | Tim Berglund, Conf...
PDF
MongoDB .local London 2019: Streaming Data on the Shoulders of Giants
PDF
Building Information Systems using Event Modeling (Bobby Calderwood, Evident ...
PDF
Streaming Data in the Cloud with Confluent and MongoDB Atlas | Robert Walters...
PDF
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
PDF
Streaming Data Analytics with ksqlDB and Superset | Robert Stolz, Preset
PDF
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
PDF
Nordstrom's Event-Sourced Architecture and Kafka-as-a-Service | Adam Weyant a...
PPTX
Serverless and AI: Orit Nissan-Messing, Iguazio, Serverless NYC 2018
PDF
Kafka Summit SF 2017 - Worldwide Scalable and Resilient Messaging Services wi...
PDF
Building Scalable Real-Time Data Pipelines with the Couchbase Kafka Connector...
Death of the dumb pipes: Using Apache Kafka® for Integration projects
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
IBM and Lightbend Build Integrated Platform for Cognitive Development
Building Streaming And Fast Data Applications With Spark, Mesos, Akka, Cassan...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
Event & Data Mesh as a Service: Industrializing Microservices in the Enterpri...
Extracting Value from IOT using Azure Cosmos DB, Azure Synapse Analytics and ...
The Event Mesh: real-time, event-driven, responsive APIs and beyond
Developing custom transformation in the Kafka connect to minimize data redund...
Why Kafka Works the Way It Does (And Not Some Other Way) | Tim Berglund, Conf...
MongoDB .local London 2019: Streaming Data on the Shoulders of Giants
Building Information Systems using Event Modeling (Bobby Calderwood, Evident ...
Streaming Data in the Cloud with Confluent and MongoDB Atlas | Robert Walters...
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
Streaming Data Analytics with ksqlDB and Superset | Robert Stolz, Preset
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
Nordstrom's Event-Sourced Architecture and Kafka-as-a-Service | Adam Weyant a...
Serverless and AI: Orit Nissan-Messing, Iguazio, Serverless NYC 2018
Kafka Summit SF 2017 - Worldwide Scalable and Resilient Messaging Services wi...
Building Scalable Real-Time Data Pipelines with the Couchbase Kafka Connector...
Ad

Viewers also liked (11)

PDF
Lightbend Fast Data Platform
PDF
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
PDF
Exploring Reactive Integrations With Akka Streams, Alpakka And Apache Kafka
PDF
Enterprise Development Trends 2016 - Cloud, Container and Microservices Insig...
PPTX
Benefits Of The Actor Model For Cloud Computing: A Pragmatic Overview For Jav...
PDF
Distributed Systems Done Right: Why Java Enterprises Are Embracing The Actor ...
PPTX
Lessons Learned From PayPal: Implementing Back-Pressure With Akka Streams And...
PDF
What is reactive
PDF
Introduction to akka actors with java 8
PDF
Microservices, Monoliths, SOA and How We Got Here
PDF
API Asynchrones en Java 8
Lightbend Fast Data Platform
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
Exploring Reactive Integrations With Akka Streams, Alpakka And Apache Kafka
Enterprise Development Trends 2016 - Cloud, Container and Microservices Insig...
Benefits Of The Actor Model For Cloud Computing: A Pragmatic Overview For Jav...
Distributed Systems Done Right: Why Java Enterprises Are Embracing The Actor ...
Lessons Learned From PayPal: Implementing Back-Pressure With Akka Streams And...
What is reactive
Introduction to akka actors with java 8
Microservices, Monoliths, SOA and How We Got Here
API Asynchrones en Java 8
Ad

Similar to Building a Real-Time Forecasting Engine with Scala and Akka (20)

PDF
How Cloud Based Market Data Enables Innovation
PDF
Flink Forward Berlin 2017: Bas Geerdink, Martijn Visser - Fast Data at ING - ...
PDF
Inphina cloud
PPTX
The end of traditional enterprise IT - ING's journey to the next generation I...
PPT
UnConference for Georgia Southern Computer Science March 31, 2015
PDF
Top 8 Trends in Performance Engineering
PPT
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
PDF
I Love APIs Europe 2015: Technical Sessions
PPTX
APIs Are Powering Fintech Innovation. What Is Next?
POTX
20151014 ing architecting for 400 teams
PDF
Agile enterprise
PPTX
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
PDF
The Cloudification of Capital Markets
PDF
ASAS 2015 Henk Kolk
PDF
Analytics&IoT
PDF
CWIN17 Rome / The software-ag digital business platform.v3
PDF
webMethods World: How Can You Innovate Even Faster With the Latest webMethods...
PDF
Reactive Summit 2017 Highlights!
PDF
Φάννυ Κοφινά, 7th Digital Banking Forum
PDF
How cloud computing enables Tradeshift to deliver continuous and global e-inv...
How Cloud Based Market Data Enables Innovation
Flink Forward Berlin 2017: Bas Geerdink, Martijn Visser - Fast Data at ING - ...
Inphina cloud
The end of traditional enterprise IT - ING's journey to the next generation I...
UnConference for Georgia Southern Computer Science March 31, 2015
Top 8 Trends in Performance Engineering
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
I Love APIs Europe 2015: Technical Sessions
APIs Are Powering Fintech Innovation. What Is Next?
20151014 ing architecting for 400 teams
Agile enterprise
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
The Cloudification of Capital Markets
ASAS 2015 Henk Kolk
Analytics&IoT
CWIN17 Rome / The software-ag digital business platform.v3
webMethods World: How Can You Innovate Even Faster With the Latest webMethods...
Reactive Summit 2017 Highlights!
Φάννυ Κοφινά, 7th Digital Banking Forum
How cloud computing enables Tradeshift to deliver continuous and global e-inv...

More from Lightbend (20)

PDF
IoT 'Megaservices' - High Throughput Microservices with Akka
PDF
How Akka Cluster Works: Actors Living in a Cluster
PDF
The Reactive Principles: Eight Tenets For Building Cloud Native Applications
PDF
Putting the 'I' in IoT - Building Digital Twins with Akka Microservices
PDF
Akka at Enterprise Scale: Performance Tuning Distributed Applications
PDF
Digital Transformation with Kubernetes, Containers, and Microservices
PDF
Detecting Real-Time Financial Fraud with Cloudflow on Kubernetes
PDF
Cloudstate - Towards Stateful Serverless
PDF
Digital Transformation from Monoliths to Microservices to Serverless and Beyond
PDF
Akka Anti-Patterns, Goodbye: Six Features of Akka 2.6
PPTX
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
PDF
Microservices, Kubernetes, and Application Modernization Done Right
PDF
Full Stack Reactive In Practice
PDF
Akka and Kubernetes: A Symbiotic Love Story
PPTX
Scala 3 Is Coming: Martin Odersky Shares What To Know
PDF
Migrating From Java EE To Cloud-Native Reactive Systems
PDF
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
PDF
Designing Events-First Microservices For A Cloud Native World
PDF
Scala Security: Eliminate 200+ Code-Level Threats With Fortify SCA For Scala
PDF
How To Build, Integrate, and Deploy Real-Time Streaming Pipelines On Kubernetes
IoT 'Megaservices' - High Throughput Microservices with Akka
How Akka Cluster Works: Actors Living in a Cluster
The Reactive Principles: Eight Tenets For Building Cloud Native Applications
Putting the 'I' in IoT - Building Digital Twins with Akka Microservices
Akka at Enterprise Scale: Performance Tuning Distributed Applications
Digital Transformation with Kubernetes, Containers, and Microservices
Detecting Real-Time Financial Fraud with Cloudflow on Kubernetes
Cloudstate - Towards Stateful Serverless
Digital Transformation from Monoliths to Microservices to Serverless and Beyond
Akka Anti-Patterns, Goodbye: Six Features of Akka 2.6
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
Microservices, Kubernetes, and Application Modernization Done Right
Full Stack Reactive In Practice
Akka and Kubernetes: A Symbiotic Love Story
Scala 3 Is Coming: Martin Odersky Shares What To Know
Migrating From Java EE To Cloud-Native Reactive Systems
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Designing Events-First Microservices For A Cloud Native World
Scala Security: Eliminate 200+ Code-Level Threats With Fortify SCA For Scala
How To Build, Integrate, and Deploy Real-Time Streaming Pipelines On Kubernetes

Recently uploaded (20)

PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Modernizing your data center with Dell and AMD
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPT
Teaching material agriculture food technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Approach and Philosophy of On baking technology
PDF
NewMind AI Monthly Chronicles - July 2025
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
“AI and Expert System Decision Support & Business Intelligence Systems”
Modernizing your data center with Dell and AMD
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Machine learning based COVID-19 study performance prediction
Digital-Transformation-Roadmap-for-Companies.pptx
Teaching material agriculture food technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
20250228 LYD VKU AI Blended-Learning.pptx
A Presentation on Artificial Intelligence
Approach and Philosophy of On baking technology
NewMind AI Monthly Chronicles - July 2025

Building a Real-Time Forecasting Engine with Scala and Akka

  • 1. Kijk vooruit! Steven Laan Building a real-time forecasting engine with Scala and Akka Lightbend CTO Roundtable 24-01-2017
  • 2. Product Owner at ING Analytics Academic background: Artificial Intelligence Working as Dev Engineer since 2014 Steven.Laan@ing.nl https://nl.linkedin.com/in/steven-laan-64222b48 Steven Laan
  • 3. Agenda 3 Why ING is a data-driven enterprise1. Strategy How RAF is build3. Architecture and Technology How we implement the tools4. Way of Working The coolest feature in ING’s mobile app2. Use case: RAF Lessons learned and the road ahead5. Conclusions
  • 5. ING’s Think Forward strategy was launched in March 2014 5
  • 6. We are committed to helping our customers stay a step ahead by making their data work harder for them 6 Compliant Omnichannel Predictive Secure & reliable Personal
  • 7. How do we want to use data at ING? 7 the right message at the right time in the right channel to the right customer Message Time Channel What does ‘right’ mean? • We want to be as relevant as possible • ‘right’ = interesting enough to react positively (i.e. to click)
  • 9. What? • Provide customers insight in their future transactions How? • Mobile app feature • Start small: MVP • Agile: Keep improving Real-time Account Forecasting 9
  • 10. Mobile interface 10 Main screen Transaction detailsTerms & conditions Info page
  • 13. • Called by Mobile Platform (REST) • Calls backend services (multiple protocols) • Returns future transactions (JSON) • Certain transactions • Predicted transactions Forecasting API 13
  • 14. • Scala • Akka • Git • Sbt • Nolio • Jenkins • Graphite / Grafana • Spark Used Technologies 14
  • 15. • Scala • Interop with JVM • Functional • Akka • Scalability • Domain Why Scala / Akka 15
  • 16. Flow of a request 16 Spray HTTP Service RequestActor FutureActors HistoryActors Historic transactions services Planned transactions services ForecastActor Forecasting Library
  • 17. Flow of a request 17 Spray HTTP Service RequestActor FutureActors HistoryActors Historic transactions services Planned transactions services ForecastActor Forecasting Library
  • 18. Flow of a request 18 Spray HTTP Service RequestActor FutureActors HistoryActors Historic transactions services Planned transactions services ForecastActor Forecasting Library
  • 19. • RequestActor per request • Scalable • Asynchronous • Dedicated service actors • Configurability • Error handling • Separate forecasting library • Separation of concern • Reusable • Parallel development Actor System Architecture 19
  • 20. Dealing with slower processes 20 Real time transactions service Slow (legacy) system Forecasting Library Forecasting APIFront End DB Preprocessing
  • 21. • Move towards streaming solutions • Fast data • Kafka / Flume / Flink • Improve forecasting library Road ahead 21
  • 22. HOW: Way of working
  • 23. ING is an Experimental Enterprise Source: Edd Dumbill, Forbes, 2014
  • 24. Squad Tribes, squads, chapters, guilds, … SquadSquad Chapter Guild DS DA OpsOps CJE DS DA DS CJE DS Ops DS CJE Dev DevDevDevDev
  • 25. A fun place to work! 25
  • 26. 26 Follow us to stay a step ahead ING.com YouTube.com/ING SlideShare.net/ING@ING_News LinkedIn.com/company/ING Flickr.com/INGGroupFacebook.com/ING