SlideShare uma empresa Scribd logo
1 de 57
Baixar para ler offline
Alexandr Vronskiy, OpsWay
Evolution of Ecommerce Application
❖ A.k.a “shandyDev” on Twitter,
Skype, Github, etc
❖ Troubleshooter at OpsWay
❖ Docker & DevOps it-evangelist
❖ Love opensource:
➢ zend community
➢ opsway/doctrine-dbal-post
gresql
➢ opsway/zohobooks-api
About me
Let’s begin..
Let’s begin...
● NO microservice way: what is this?
● NOT about TDD, BDD, DDD, EDD,
EventSourcing, CQRS, каратэ,
кунг-фу и много страшных слов…
● Without code
Let’s begin about...
Let’s begin
actually
about
● Main domains in ecommerce apps
Let’s begin actually
about...
Let’s begin
actually
about
● Main domains in ecommerce apps
● Marketplace 3-years evolution
Let’s begin actually
about...
Let’s begin
actually
about
● Main domains in ecommerce apps
● Marketplace 3-years evolution
● Build architecture of …
Let’s begin actually
about...
Let’s begin
actually
about
● Main domains in ecommerce apps
● Marketplace 3-years evolution
● Build architecture of …
● Monolith!
Let’s begin actually
about...
E-commerce
What case
Ecommerce world
Ecommerce
solutions
● Exists products solution & +
Ecommerce solutions
Ecommerce
solutions
● Exists products solution & +
● Custom + ERP, CRM, etc
Ecommerce solutions
Ecommerce
solutions
● Exists products solution & +
● Custom + ERP, CRM, etc
● SaaS (Shopify, Bigcommerce, ...)
Ecommerce solutions
Ecommerce
solutions
● Exists products solution & +
● Custom + ERP, CRM, etc
● SaaS (Shopify, Bigcommerce, ...)
● MIXED
Ecommerce solutions
solutions
Ecommerce solutions
FrontSite
(ZF2)
Concept idea: Use SOA
● Magento 1.x
● Custom app
● Akeneo
Magento
(ecommerce engine)
Elasticsearch
Akeneo
(PIM)
Customers
Backend
A long time ago in a
galaxy far far away
FrontSite
(ZF2)
● Easy bootstrap
● Fast & scalable storage
● Fulltext search, filters & aggregates built-in
Magento
(ecommerce engine)
Elasticsearch
Akeneo
(PIM)
Customers
Backend
A long time ago in a
galaxy far far away
FrontSite
(ZF2)
● Ready to handle shopping cart
● Checkout processing
● Order Management
● Seamless requests from front
Magento
(ecommerce engine)
Elasticsearch
Akeneo
(PIM)
Customers
Backend
A long time ago in a
galaxy far far away
FrontSite
(ZF2)
● Akeneo - ready PIM system
● PIM - Product Information Management
● Symfony + MongoDB
● Multichannel import / export connectors
Magento
(ecommerce engine)
Elasticsearch
Akeneo
(PIM)
Customers
Backend
A long time ago in a
galaxy far far away
20
Vulpes lagopus (lat.)
FrontSite
(ZF2)
Magento
(ecommerce engine)
Elasticsearch
Akeneo
(PIM)
Customers
Backend
Why it’s fail?
too long
Need
customize
uncomfortable
not work easy
FrontSite
(ZF2)
Elasticsearch
Customers
Backend
How fixed?
FrontSite
API
(ZF2)
Postgresql
Elasticsearch
Backoffice
(Angular)
Customers
Backend
- Products: ~40M
- PriceLists: ~60M
(from 250+ suppliers)
- Postgresql: ~250Gb
- Elasticsearch: ~100Gb
Next level up!
First results
● Try (!not think) ready solutions as MVP
First results
● Try (!not think) ready solutions as MVP
● Not use universal combines for unique
business problems
First results
● Try (!not think) ready solutions as MVP
● Not use universal combines for unique
business problems
● Custom solution - minimize relations
First results
● Try (!not think) ready solutions as MVP
● Not use universal combines for unique
business problems
● Custom solution - minimize relations
Monoliths are different
Zend Framework 2
MVC Factories DI
IoC
Services
Configs
Modularity
Apigility
Doctrine
ZfcUser
ScnSocialAuth
...
Negative moments
Zend Framework 2
MVC Factories DI
IoC
Services
Configs
Modularity
Apigility
Doctrine
ZfcUser
ScnSocialAuth
...
❖ What about update to
ZF3, PHP7, etc??
❖ Dependency HELL!
● No need duplicate clients behavior
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices?
● No need duplicate clients behavior
● Easy upgrade
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices?
● No need duplicate clients behavior
● Easy upgrade
● Develop in parallel
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices?
● No need duplicate clients behavior
● Easy upgrade
● Develop in parallel
● Scalability
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices?
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices? No!
● Increased size code
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices? No!
● Increased size code
● Duplicate infrastructure code
Validate::email()
Validate::email()
Front site
Mobile App
Admin app
GatewayAPI
User
microservice
Catalog
microservice
Order
microservice
Microservices? No!
● Increased size code
● Duplicate infrastructure code
● Communications?
Validate::email()
Validate::email()
How to deal?
How to deal?
Can not update XXX XXX don’t support YYY
● Analysis & search
root causes of problems
Solutions:
● Remove XXX - 15h
● Add support YYY - 24h
Front module
Mobile App
Admin app
Public API
Private API
User domain
Catalog
domain
Order domain
CLI, Crons
Session
Templating
Infrastructure & so on... Business
● Reduce external dependencies
● No re-use cases
● Many internal interfaces
True monolith “Use DDD Luke!” © Obi-Van
Front module
Mobile App
Admin app
Public API
Private API
User domain
Catalog
domain
Order domain
CLI, Crons
Session
Templating
Infrastructure & so on... Business
● Can be anything
● Use business code
● Implement storage/persist/interactive
interfaces
True monolith “Use DDD Luke!” © Obi-Van
True monolith “Use DDD Luke!” © Obi-Van
Bootstrap
(or React + PSR7)
Routing
Action
(or Command)
Business Handler: RegisterCustomer
$eventManager->attach($userListeners);
$user = User::newCustomer($data);
$user->releaseEvents($eventManager);
$userRepo->save($user);
return $user->id(); // UserId class
instead of Uuid
UserDoctrineRepository
implements
UserRepositoryInterface
EventManager
implements ...
Today & next
● ZF3 + Apigility + Doctrine
● AngularJS v1.6 + ReactNative
● PHP7.2, NodeJS, Redis, Postgresql 10,
Elasticsearch 6
● Amazon AWS, Docker, Rancher, Jenkins,
CircleCI
● Websockets (real-time admin)
● Message queue (instead of cron tasks)
What is ecommerce
Five whales:
● PIM
What is ecommerce
Five whales:
● PIM
● Order Management
What is ecommerce
Five whales:
● PIM
● Order Management
● Inventory & stock
What is ecommerce
Five whales:
● PIM
● Order Management
● Inventory & stock
● Fulfilment & Logistics
What is ecommerce
Five whales:
● PIM
● Order Management
● Inventory & stock
● Fulfilment & Logistics
● CRM
What is ecommerce
Five whales:
● PIM
● Order Management
● Inventory & stock
● Fulfilment & Logistics
● CRM
● ERP / Finance
What is ecommerce
Five whales:
● PIM
● Order Management
● Inventory & stock
● Fulfilment & Logistics
● CRM
Others:
● CMS, Import/Export, Notifications
● ERP / Finance
● Ecommerce - this is hard
Final results
● Ecommerce - this is hard
● Monolith - this is not hard (32k LLOC) &
can be fast (4 devs)
Final results
● Ecommerce - this is hard
● Monolith - this is not hard (32k LLOC) &
can be fast (4 devs)
● Firstly - business problem solving
Final results
● Ecommerce - this is hard
● Monolith - this is not hard (32k LLOC) &
can be fast (4 devs)
● Firstly - business problem solving
● Secondly - refactoring
Final results
● Ecommerce - this is hard
● Monolith - this is not hard (32k LLOC) &
can be fast (4 devs)
● Firstly - business problem solving
● Secondly - refactoring
● Include estimates on refactoring
Final results
● Ecommerce - this is hard
● Monolith - this is not hard (32k LLOC) &
can be fast (4 devs)
● Firstly - business problem solving
● Secondly - refactoring
● Include estimates on refactoring
● Ping-Pong with clients
Final results
Questions? Yes!
Answers? May be!
Thank you for
attention!

Mais conteúdo relacionado

Semelhante a Alexandr Vronskiy "Evolution of Ecommerce Application"

vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationDivante
 
When e-commerce meets Symfony
When e-commerce meets SymfonyWhen e-commerce meets Symfony
When e-commerce meets SymfonyMarc Morera
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest FeaturesChris Schalk
 
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"LogeekNightUkraine
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraLINAGORA
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest FeaturesChris Schalk
 
Google App Engine Overview and Update
Google App Engine Overview and UpdateGoogle App Engine Overview and Update
Google App Engine Overview and UpdateChris Schalk
 
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.Globant
 
Magento Headless Commerce with Vue Storefront - Piyush Lathiya
Magento Headless Commerce with Vue Storefront - Piyush LathiyaMagento Headless Commerce with Vue Storefront - Piyush Lathiya
Magento Headless Commerce with Vue Storefront - Piyush LathiyaAureate Labs
 
Google Cloud: Next'19 Extended Hanoi
Google Cloud: Next'19 Extended HanoiGoogle Cloud: Next'19 Extended Hanoi
Google Cloud: Next'19 Extended HanoiGCPUserGroupVietnam
 
Dubbo and Weidian's practice on micro-service architecture
Dubbo and Weidian's practice on micro-service architectureDubbo and Weidian's practice on micro-service architecture
Dubbo and Weidian's practice on micro-service architectureHuxing Zhang
 
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
"Role of a CTO in software outsourcing company", Yuriy NakonechnyyFwdays
 
SEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideSEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideDominic Woodman
 
Никита Галкин "Technical backlog: инструкция к применению"
Никита Галкин "Technical backlog: инструкция к применению"Никита Галкин "Technical backlog: инструкция к применению"
Никита Галкин "Technical backlog: инструкция к применению"Fwdays
 
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Chris Schalk
 
Django on app engine
Django on app engineDjango on app engine
Django on app enginebenpotato
 
The Modern Web with Microfrontends
The Modern Web with MicrofrontendsThe Modern Web with Microfrontends
The Modern Web with MicrofrontendsNikki Dingding
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneursRodrigo Gil
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsGiulio Roggero
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Codemotion
 

Semelhante a Alexandr Vronskiy "Evolution of Ecommerce Application" (20)

vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
 
When e-commerce meets Symfony
When e-commerce meets SymfonyWhen e-commerce meets Symfony
When e-commerce meets Symfony
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest Features
 
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
Kostiantyn Yelisavenko "Mastering Macro Benchmarking in .NET"
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest Features
 
Google App Engine Overview and Update
Google App Engine Overview and UpdateGoogle App Engine Overview and Update
Google App Engine Overview and Update
 
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.
Globant Week Cali - Entendiendo el desarrollo Front-end del mundo moderno.
 
Magento Headless Commerce with Vue Storefront - Piyush Lathiya
Magento Headless Commerce with Vue Storefront - Piyush LathiyaMagento Headless Commerce with Vue Storefront - Piyush Lathiya
Magento Headless Commerce with Vue Storefront - Piyush Lathiya
 
Google Cloud: Next'19 Extended Hanoi
Google Cloud: Next'19 Extended HanoiGoogle Cloud: Next'19 Extended Hanoi
Google Cloud: Next'19 Extended Hanoi
 
Dubbo and Weidian's practice on micro-service architecture
Dubbo and Weidian's practice on micro-service architectureDubbo and Weidian's practice on micro-service architecture
Dubbo and Weidian's practice on micro-service architecture
 
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
"Role of a CTO in software outsourcing company", Yuriy Nakonechnyy
 
SEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech SideSEO for Large/Enterprise Websites - Data & Tech Side
SEO for Large/Enterprise Websites - Data & Tech Side
 
Никита Галкин "Technical backlog: инструкция к применению"
Никита Галкин "Technical backlog: инструкция к применению"Никита Галкин "Technical backlog: инструкция к применению"
Никита Галкин "Technical backlog: инструкция к применению"
 
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
 
Django on app engine
Django on app engineDjango on app engine
Django on app engine
 
The Modern Web with Microfrontends
The Modern Web with MicrofrontendsThe Modern Web with Microfrontends
The Modern Web with Microfrontends
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneurs
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature Teams
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
 

Mais de Fwdays

"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y..."How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...Fwdays
 
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil TopchiiFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro SpodaretsFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua", Maksym KindritskyiFwdays
 
"Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl..."Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl...Fwdays
 
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T..."How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...Fwdays
 
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ..."The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...Fwdays
 
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu..."[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...Fwdays
 
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care..."[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...Fwdays
 
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"..."4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...Fwdays
 
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast..."Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...Fwdays
 
"Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others..."Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others...Fwdays
 
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?", Oleksandra MyronovaFwdays
 
"Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv..."Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv...Fwdays
 
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin..."How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...Fwdays
 

Mais de Fwdays (20)

"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y..."How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
 
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
 
"Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl..."Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl...
 
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T..."How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
 
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ..."The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
 
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu..."[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
 
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care..."[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
 
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"..."4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
 
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast..."Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
 
"Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others..."Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others...
 
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
 
"Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv..."Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv...
 
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin..."How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
 

Último

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Alexandr Vronskiy "Evolution of Ecommerce Application"

  • 1. Alexandr Vronskiy, OpsWay Evolution of Ecommerce Application
  • 2. ❖ A.k.a “shandyDev” on Twitter, Skype, Github, etc ❖ Troubleshooter at OpsWay ❖ Docker & DevOps it-evangelist ❖ Love opensource: ➢ zend community ➢ opsway/doctrine-dbal-post gresql ➢ opsway/zohobooks-api About me
  • 4. ● NO microservice way: what is this? ● NOT about TDD, BDD, DDD, EDD, EventSourcing, CQRS, каратэ, кунг-фу и много страшных слов… ● Without code Let’s begin about...
  • 5. Let’s begin actually about ● Main domains in ecommerce apps Let’s begin actually about...
  • 6. Let’s begin actually about ● Main domains in ecommerce apps ● Marketplace 3-years evolution Let’s begin actually about...
  • 7. Let’s begin actually about ● Main domains in ecommerce apps ● Marketplace 3-years evolution ● Build architecture of … Let’s begin actually about...
  • 8. Let’s begin actually about ● Main domains in ecommerce apps ● Marketplace 3-years evolution ● Build architecture of … ● Monolith! Let’s begin actually about...
  • 11. Ecommerce solutions ● Exists products solution & + Ecommerce solutions
  • 12. Ecommerce solutions ● Exists products solution & + ● Custom + ERP, CRM, etc Ecommerce solutions
  • 13. Ecommerce solutions ● Exists products solution & + ● Custom + ERP, CRM, etc ● SaaS (Shopify, Bigcommerce, ...) Ecommerce solutions
  • 14. Ecommerce solutions ● Exists products solution & + ● Custom + ERP, CRM, etc ● SaaS (Shopify, Bigcommerce, ...) ● MIXED Ecommerce solutions
  • 16. FrontSite (ZF2) Concept idea: Use SOA ● Magento 1.x ● Custom app ● Akeneo Magento (ecommerce engine) Elasticsearch Akeneo (PIM) Customers Backend A long time ago in a galaxy far far away
  • 17. FrontSite (ZF2) ● Easy bootstrap ● Fast & scalable storage ● Fulltext search, filters & aggregates built-in Magento (ecommerce engine) Elasticsearch Akeneo (PIM) Customers Backend A long time ago in a galaxy far far away
  • 18. FrontSite (ZF2) ● Ready to handle shopping cart ● Checkout processing ● Order Management ● Seamless requests from front Magento (ecommerce engine) Elasticsearch Akeneo (PIM) Customers Backend A long time ago in a galaxy far far away
  • 19. FrontSite (ZF2) ● Akeneo - ready PIM system ● PIM - Product Information Management ● Symfony + MongoDB ● Multichannel import / export connectors Magento (ecommerce engine) Elasticsearch Akeneo (PIM) Customers Backend A long time ago in a galaxy far far away
  • 23. FrontSite API (ZF2) Postgresql Elasticsearch Backoffice (Angular) Customers Backend - Products: ~40M - PriceLists: ~60M (from 250+ suppliers) - Postgresql: ~250Gb - Elasticsearch: ~100Gb Next level up!
  • 24. First results ● Try (!not think) ready solutions as MVP
  • 25. First results ● Try (!not think) ready solutions as MVP ● Not use universal combines for unique business problems
  • 26. First results ● Try (!not think) ready solutions as MVP ● Not use universal combines for unique business problems ● Custom solution - minimize relations
  • 27. First results ● Try (!not think) ready solutions as MVP ● Not use universal combines for unique business problems ● Custom solution - minimize relations
  • 28. Monoliths are different Zend Framework 2 MVC Factories DI IoC Services Configs Modularity Apigility Doctrine ZfcUser ScnSocialAuth ...
  • 29. Negative moments Zend Framework 2 MVC Factories DI IoC Services Configs Modularity Apigility Doctrine ZfcUser ScnSocialAuth ... ❖ What about update to ZF3, PHP7, etc?? ❖ Dependency HELL!
  • 30.
  • 31. ● No need duplicate clients behavior Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices?
  • 32. ● No need duplicate clients behavior ● Easy upgrade Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices?
  • 33. ● No need duplicate clients behavior ● Easy upgrade ● Develop in parallel Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices?
  • 34. ● No need duplicate clients behavior ● Easy upgrade ● Develop in parallel ● Scalability Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices?
  • 35. Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices? No! ● Increased size code
  • 36. Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices? No! ● Increased size code ● Duplicate infrastructure code Validate::email() Validate::email()
  • 37. Front site Mobile App Admin app GatewayAPI User microservice Catalog microservice Order microservice Microservices? No! ● Increased size code ● Duplicate infrastructure code ● Communications? Validate::email() Validate::email()
  • 39. How to deal? Can not update XXX XXX don’t support YYY ● Analysis & search root causes of problems Solutions: ● Remove XXX - 15h ● Add support YYY - 24h
  • 40. Front module Mobile App Admin app Public API Private API User domain Catalog domain Order domain CLI, Crons Session Templating Infrastructure & so on... Business ● Reduce external dependencies ● No re-use cases ● Many internal interfaces True monolith “Use DDD Luke!” © Obi-Van
  • 41. Front module Mobile App Admin app Public API Private API User domain Catalog domain Order domain CLI, Crons Session Templating Infrastructure & so on... Business ● Can be anything ● Use business code ● Implement storage/persist/interactive interfaces True monolith “Use DDD Luke!” © Obi-Van
  • 42. True monolith “Use DDD Luke!” © Obi-Van Bootstrap (or React + PSR7) Routing Action (or Command) Business Handler: RegisterCustomer $eventManager->attach($userListeners); $user = User::newCustomer($data); $user->releaseEvents($eventManager); $userRepo->save($user); return $user->id(); // UserId class instead of Uuid UserDoctrineRepository implements UserRepositoryInterface EventManager implements ...
  • 43. Today & next ● ZF3 + Apigility + Doctrine ● AngularJS v1.6 + ReactNative ● PHP7.2, NodeJS, Redis, Postgresql 10, Elasticsearch 6 ● Amazon AWS, Docker, Rancher, Jenkins, CircleCI ● Websockets (real-time admin) ● Message queue (instead of cron tasks)
  • 44. What is ecommerce Five whales: ● PIM
  • 45. What is ecommerce Five whales: ● PIM ● Order Management
  • 46. What is ecommerce Five whales: ● PIM ● Order Management ● Inventory & stock
  • 47. What is ecommerce Five whales: ● PIM ● Order Management ● Inventory & stock ● Fulfilment & Logistics
  • 48. What is ecommerce Five whales: ● PIM ● Order Management ● Inventory & stock ● Fulfilment & Logistics ● CRM
  • 49. What is ecommerce Five whales: ● PIM ● Order Management ● Inventory & stock ● Fulfilment & Logistics ● CRM ● ERP / Finance
  • 50. What is ecommerce Five whales: ● PIM ● Order Management ● Inventory & stock ● Fulfilment & Logistics ● CRM Others: ● CMS, Import/Export, Notifications ● ERP / Finance
  • 51. ● Ecommerce - this is hard Final results
  • 52. ● Ecommerce - this is hard ● Monolith - this is not hard (32k LLOC) & can be fast (4 devs) Final results
  • 53. ● Ecommerce - this is hard ● Monolith - this is not hard (32k LLOC) & can be fast (4 devs) ● Firstly - business problem solving Final results
  • 54. ● Ecommerce - this is hard ● Monolith - this is not hard (32k LLOC) & can be fast (4 devs) ● Firstly - business problem solving ● Secondly - refactoring Final results
  • 55. ● Ecommerce - this is hard ● Monolith - this is not hard (32k LLOC) & can be fast (4 devs) ● Firstly - business problem solving ● Secondly - refactoring ● Include estimates on refactoring Final results
  • 56. ● Ecommerce - this is hard ● Monolith - this is not hard (32k LLOC) & can be fast (4 devs) ● Firstly - business problem solving ● Secondly - refactoring ● Include estimates on refactoring ● Ping-Pong with clients Final results
  • 57. Questions? Yes! Answers? May be! Thank you for attention!