FoodExpress is an online food delivery platform that connects customers with restaurants. Initially, it was developed using a monolithic architecture, where all functionalities—such as user authentication, restaurant management, order processing, payments, delivery tracking, and customer reviews—were combined in a single application.
As FoodExpress expanded to new cities, it faced serious challenges:
- Scaling Issues - A surge in orders during peak meal times slowed down the entire application.
- Deployment Bottlenecks - A minor change in the restaurant menu system required redeploying the entire application.
- Team Dependencies - Different teams working on unrelated functionalities had to coordinate their code changes.
- Performance Degradation - Certain features (like reviews and recommendations) were overwhelming the database, impacting critical services like