Successfully reported this slideshow.
Your SlideShare is downloading. ×

MediaMarkt Saturn: Enabling a resilient Order Management System

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 15 Ad

More Related Content

Slideshows for you (20)

Similar to MediaMarkt Saturn: Enabling a resilient Order Management System (20)

Advertisement

More from confluent (20)

Recently uploaded (20)

Advertisement

MediaMarkt Saturn: Enabling a resilient Order Management System

  1. 1. ENABLING A RESILIENT ORDER MANAGEMENT Jochen Bürkle, 20.10.2022
  2. 2. MediaMarktSaturn - Data In Motion Tour About me 2 Jochen Bürkle 6 years of experience in automotive and telecom, 12 years in retail Focus: Java, Kotlin, Microservices, Cloud based architectures Voluntary secretary in the Java User Group Ingolstadt e.V. https://jug-in.bayern linkedin.com/in/jochen-bürkle-ab694720 buerkle@mediamarktsaturn.com Principal Engineer in Order Management domain at MediaMarktSaturn Technology
  3. 3. MediaMarktSaturn - Data In Motion Tour Numbers and Figures MediaMarktSaturn 3 • Fiscal year 2020/21 3 THERE OF 21.4 BN. EUROS REVENUE 6.9 BN. EUROS ONLINE WE ARE THE #1 IN EUROPE > 52,000 EMPLOYEES 2.4 BN. CUSTOMER CONTACTS PER YEAR ONLINE % >1,000 STORES 13 COUNTRIES IN REVENUE 13.7% 20.2% 32.5% 2020/21 2019/20 2018/19 https://www.ceconomy.de/en/company/facts-and-figures/
  4. 4. MediaMarktSaturn - Data In Motion Tour Origins and Structures › MediaMarktSaturn has more than 40 years of history › MediaMarktSaturn is currently present in 13 countries › Software stack historically country specific, rate of individuality is varying › Since the 1990s: Self developed GMS as Order Management System › Entering seriously online business in 2011 › First reusing GMS system › Then introduction of dedicated Order Management systems 4
  5. 5. MediaMarktSaturn - Data In Motion Tour Order Management History › Dedicated instances of in-house developed Goods Management System for Online › A standard Order Management system with a „flavor“ › A country developed and introduced another in-house Order Management system Now: › A big blue standard Order Management system to replace them all (yet not at a time) Common features of these: › Systems mostly monolithic, scaling mostly vertical › Big Integration efforts › Different integration styles › Different APIs › No unified way to expose order data 5
  6. 6. MediaMarktSaturn - Data In Motion Tour IT Strategy Change 2018 – One IT › Cloud Strategy – Google Cloud › Move everything to the cloud or build it cloud native › Usage of managed services – „Use managed things, don‘t manage things“ › Transforming into a product organization › Each product exposes a Restful API, API first › New Checkout process › New web, crosschannel checkout, order create service 6 Web Shop Shopping Basket Order Creation Service OMS B OMS C REST/https REST/https REST/https JMS Order Management Domain
  7. 7. MediaMarktSaturn - Data In Motion Tour Resilience in IT 7 „Capability of IT systems to react robustly on interruption or outage of particular components and to continue providing the required services to the customer / consumer / client.“
  8. 8. MediaMarktSaturn - Data In Motion Tour Building a Resilient Order API Service › Requirements › High availabilty and resilience › Creating an Order Management API Service as master system, exposing Data in unified schema › Integration of all Backend Order Management Systems as „Order Engines“ › Cloud Native › Built in Google Cloud Kubernetes Engine › Terraform Modules defined infrastructure › GitOps based deployment approach › Managed Services › Safe and lean software stack for the JVM 8
  9. 9. MediaMarktSaturn - Data In Motion Tour Lean Service Stack › JVM based – Kotlin › Less but more concise code › Much better nullpointer safety › Full Java (library) compatibility › Library based – no heavyweight frameworks › We are not shipping nor starting what we do not need › Microservices in the true sense of the word › One concern per service Startup times below 5 seconds Initial memory footprints below 150 MiB 9
  10. 10. MediaMarktSaturn - Data In Motion Tour Event based architecture with a Kafka managed service Get all together: Event based cloud service mesh „Customer Order Services (COS)“ in Kubernetes › Resilience through decoupling: Confluent Kafka managed service › Kafka buffers the events while keeping the message ordering › Possibility of replays › Exactly once semantics › Event based architecture as basis for Multi-OMS integration › Common event schema used for all front- and backends › Efforts mainly data structure mapping › Events and internal COS APIs built on Protobuf › Advantages in message structuring over Avro 10
  11. 11. MediaMarktSaturn - Data In Motion Tour COS Event based architecture 11 API Consumers (search&load) API Consumers (search&load) O Confluent Kafka Order Master DB <MongoDB> Customer Order API Service ERP Client Svc OMS B Export Svc Invoicing Client Svc Customer Notification Client FSP via ERP OMS C API Consumers (search&load) ERP OMS C Invoicing Customer Comm. Order Creation Service OMS B Digital Article (POSA) Client POSA Service XCCB Create Fulfillment Modify SO Digital Fulfilment Sales Order OMS A Export Svc APIX <Tibco EMS> Despatch Advice Reserv. SO Fulfillments Customer Not. Order Creation OrderShipment Activation COS Platform Order Publish/Storage Svc OrderCreated OrderCreated OrderCreated DigitalArticle Activated FulfillmentCreated FulfillmentCreated ShipmentCreated ShipmentCreated ItemReplaced FulfillmentCreated <All Events> FulfillmentCreated FulfillmentCreated 11
  12. 12. MediaMarktSaturn - Data In Motion Tour Creating visibility - COSMOS › Binary Protobuf messages have a limited visibilty as consequence › Solution: Streams application with generic record transformation, saved to MongoDB 12 MongoDB Atlas DynamicMessage JsonFormat Web formatting COSMOS Service …
  13. 13. MediaMarktSaturn - Data In Motion Tour Outlook – Enterprise scale domain events › Need to overcome synchronous blocking issue and P2P integrations in pure Restful API approach › MediaMarktSaturn started to introduce domain events › Introduction of 2 flavors of event communication › Notifications – No data payload, just event typ and key/reference information › Data Streaming – Message contains complete data objects › Events based on CNCF‘s Cloud Events: https://cloudevents.io/ › Messaging infrastructure is Google Pub/Sub › Vendor limitation and proprietary implementation › Peer to peer connecting and decentralized access grant › Very limited retention: 7 days 13
  14. 14. MediaMarktSaturn - Data In Motion Tour Why Confluent? › We don‘t want to manage a Kafka, we want to build and run an order management platform › It was available on the GCP marketplace (back in 2018) › Additional features like Schema Registry, Connectors, … › We need to have most professional support and quick solutions when necessary 14
  15. 15. Vielen Dank https://www.mediamarktsaturn.com

×