20170517 codemotion amsterdam applying “web scale” patterns in the bol.com back office
TRANSCRIPT
![Page 1: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/1.jpg)
Applying “web scale” patternsPeter Paul van de Beek
AMSTERDAM 16 - 17 MAY 2017
![Page 2: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/2.jpg)
The shop for everyone
2
![Page 3: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/3.jpg)
Bol.com from online bookshop to portal for specialised online channels serving the entire Dutch-language region
3
Books Entertainment Electronics Toys
Preloved sales eReading
Small Appliances
White Goods
Marketing via bol.com
Baby
Cooking & Tableware
Health & Beauty Home & BedroomPets
Garden & DIY
2004-2007 2010
Sports & Leisure
1999-2003 2010 2011 2012 2013 2014 2015
Jewellery & WatchesBags & Accessories
SECOND-HAND
ePRODUCTS
COMMERCIAL
MARKETING
NEW SPECIALISED CHANNELS
ALSO WORTH KNOWING
Startup in a portacabin Active in Belgium Takeover by Ahold
2008-2009
![Page 4: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/4.jpg)
• Over 7,4 million active customers
• Virtual footprint of almost 2 million per day
• Nearly 15 million products
• More than a 1.200 employees in Utrecht
• 1 in 2 Dutch and Belgian consumers who shop online, do so on bol.com
• Ranked among top 10 businesses for customer satisfaction
4
Where is bol.com now?
> 95% > 75%
Brand awareness
![Page 5: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/5.jpg)
5
![Page 6: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/6.jpg)
Our promises to our customers
CQRSEvent SourcingPolyglot persistenceMicro services
![Page 7: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/7.jpg)
As a proposition managerI need real time stock levels in the web shopSo we can offer al kind of last mile services
![Page 8: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/8.jpg)
Inventory Management
8
CQRS
command query
Received Goods
Stock Corrections
Sales
Shipments
StockLevels
![Page 9: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/9.jpg)
As a buyerI need to calculate the value of allowancesSo I can offer lower prices to our customers
![Page 10: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/10.jpg)
10
Event Sourcing
Event store
Event store
Invoicedpurchases
Consumersales
Condition Calculation
Invo
ices
& A
ccru
als
![Page 11: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/11.jpg)
As a logistics plannerI need to handle different types of warehouse ordersSo I can handle a variety of services
![Page 12: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/12.jpg)
As a retail platform billing managerI need to store and trace different kinds of transactionsSo I can invoice retailers
![Page 13: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/13.jpg)
Polyglot persistence - Schema and schema less data
13
Relational DB
Document DB
Key-Value Store
Column-family DB
![Page 14: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/14.jpg)
As a CIOI need scalable and reliable softwareSo I can run a great web shop and innovate at speed
![Page 15: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/15.jpg)
(micro) services
15
• Smaller functional responsibility.
Or just smaller services;
• Independent deployment. Each
service has continuous
integration (CI) and continuous
deployment (CD);
• Mayfly
![Page 16: 20170517 codemotion Amsterdam applying “web scale” patterns in the bol.com back office](https://reader038.vdocument.in/reader038/viewer/2022100803/5a64ed437f8b9abb218b463d/html5/thumbnails/16.jpg)
Thanks!till next bol.com