Retail Food Giant Achieves Epic Growth by Modernizing Legacy App with Micro Frontends
Overview_
Partnering with Euvic, our client revolutionized the restaurant industry’s online ordering practices with a scalable, efficient mobile food ordering application and B2B admin panel by:
- Moving from a monolith to a microservice-based architecture.
- Enhancing operational efficiency for some of the largest retail restaurant groups in the world, such as Burger King, Arby’s, Subway, Popeyes, and Sbarro.
- Enabling the client to onboard new restaurants, expand their customer base, and provide greater value to end-users.
Additionally, Euvic’s solution architecture expertise:
- Improved the client’s engineering practices.
- Elevated code quality and development standards.
- Solidified the client’s position in the retail technology sector.
Client_
This client offers a mobile food ordering ordering platform for the global restaurant industry, used by the largest retail restaurant groups in the world. The company enables customers to order from chains like Burger King, Arby's, Subway, Popeyes, and Sbarro using their mobile devices. The platform makes it easy to invite friends, browse menus, place orders, make payments, coordinate delivery, and more.The food ordering platform also allows customers to combine multiple products thanks to an integrated order management system and a product management system. It comprises integrated systems including a mobile application, web application, and third-party applications.
Industry
Retail
Flexibility was a big selling point for us. We are collaborative, and prefer to be flexible. Euvic demonstrated time and again that they could adapt to our working norms, collaborate across cultures, and give us exactly the engineering talent that we needed.
Company CTO.
Background_
This client offers an online hub and mobile food ordering platform for the global restaurant industry, used by some of the largest retail restaurant groups in the world. The company enables customers to order from popular restaurant chains like Burger King, Arby’s, Subway, Popeyes, and Sbarro using their mobile devices. The food ordering platform makes it easy for customers to invite friends, browse menus, place orders, make payments, coordinate delivery, and more.
Unlike most mobile food ordering platforms, the custom-built platform allows customers to combine multiple products thanks to an integrated order management system and a product management system (among others). The retail platform comprises several integrated systems including a mobile application, web application, and third-party applications to manage the underlying restaurant ordering infrastructure.
Challenge_
Scale the food ordering solution from thousands to tens of thousands of restaurants
Scale: Our client had acquired a legacy mobile food ordering application that was capable of hosting approximately 1500 restaurants, and now wanted to expand the offering to serve tens of thousands of restaurants.
Speed: The project leadership needed to aggressively accelerate the timeline to modernize the legacy retail application.
Integration: Real-time visibility of orders and integration with existing microservice system architecture, web, and mobile applications was critical. Each restaurant brand has its own system requirements, and the platform needed to accommodate variables like location, pricing, product, and categorization from one restaurant client to the next. Additionally, the admin panel needed to be customized to match restaurant organization structures based on user responsibilities.
Focus: Our client is a technology-first organization with a solid engineering team, expert in mobile application development, but less familiar with the nuances of micro frontend programming. They preferred to focus its engineers on feature development than diluting its focus by skilling up on micro frontend architecture. To preserve the team’s focus and efficiency, they needed an external partner for infrastructure improvements and the admin panel.
![food on the table](/_next/image/?url=https%3A%2F%2Fd3dbg39zl8ph6r.cloudfront.net%2Fuploads%2F2024%2F07%2Fpexels-she-eats-663643-13788767-1-1.jpg&w=1200&q=75)
![people in the kitchen](/_next/image/?url=https%3A%2F%2Fd3dbg39zl8ph6r.cloudfront.net%2Fuploads%2F2024%2F07%2Fpexels-photo-12673644-1.png&w=1920&q=75)
![young woman](/_next/image/?url=https%3A%2F%2Fd3dbg39zl8ph6r.cloudfront.net%2Fuploads%2F2024%2F07%2Fpexels-mizunokozuki-13431996-1.jpg&w=1200&q=75)
Solution_
Shoulder-to-shoulder Partnership with Euvic
The legacy application was built using monolithic-based architecture. After analyzing the solution, Euvic architects proposed a strategy that would include micro frontends and microservices. This strategy allows the company to deploy separate parts of the application independently so that, for example, the order management module would not be impacted by changes to the invoice feature. While they are gaining in popularity, micro frontends are less common than monolith applications. The company needed to augment their inhouse expertise with a team experienced with these technologies.
They chose Euvic as its development partner because of the team’s deep experience engineering similar solutions combined with the respected reputation of Polish technology talent. It was clear that Euvic’s team was prepared to work shoulder-to-shoulder with their in-house engineers, and share accountability for outcomes and app performance.
Euvic kicked off the modernization project by conducting in-depth needs analysis, followed by design, development, testing, and implementation, all working in close partnership with their inhouse engineers. The project was delivered using Scrum in two-week sprints, which allowed for speed and adaptability, with an iterative delivery of functionalities.
The new and improved admin panel features large forms, tables, dashboards, and implements fine-grained attribute-based access control. It supports translations and internationalization, offering a seamless user experience across different regions. Features of the updated admin panel include:
- A unified food order processing system that optimizes the work of restaurants and employees responsible for supporting their customer.
- A single source of truth web platform and mobile app data aimed at end-users
- Hierarchical organizational structure that allows the client to authorize users according to their role, with access only to necessary functionalities.
- The ability to create marketing campaigns with insight into sales effectiveness and accounting data.
- Rigorous security measures were embedded in the project strategy, including authentication and authorization services designed in .NET.
I love frontend and new technologies, so I was deeply involved in the architecture. I’m most excited about collaborating with retail clients to set the vision for architecture, standards, processes, and code optimization.
Euvic designed a seamless front-end experience where users enter the website or shell application, sign-in, and order through three distinct applications. The infrastructure integrates these distinct services with a frictionless experience for the customer.
Technology Overview_
Managing the multiple modules and combining them into a coherent app for the end user was a fascinating effort because of the uniqueness of this micro frontend approach.
This project was extremely fun.
Tools & technologies
Frontend
React
Vite
TypeScript
Material-UI
React Hook Form
Tanstack React Query
Zustand
I18next
NX
Storybook
Backend
.NET (Core)
PostgreSQL
Redis cache
Testing
Playwright
DevOps
Kubernetes
Azure DevOps
The Dream Team_
Euvic provided between 6 and 9 front-end developers, QA, Devops, and a scrum master, along with 3 backend developers.
As the project progressed, Euvic worked with the company’s leadership to fine-tune the team composition and provide them with exactly the resources it needed.
The Euvic and client teams worked shoulder-to-shoulder, sharing ideas, best practices, and innovations.The Euvic team included:
- Bartosz – Scrum Master – >10 years
- Michał – Technical Team Leader – >7 years
- Dariusz – Frontend Developer – ~12 years
- Wojciech – Frontend Developer – ~5 years
- Daria – Frontend Developer – ~6 years
- Marcin – Frontend Developer – ~5 years
- Monika – QA Engineer – 3 years
- Bartosz – Backend Developer – ~7 years
- Martyna – Backend Developer – 3 years
- Michał – Backend Developer – ~5 years
- Piotr – DevOps Engineer – 2 years
Result_
Euvic designed a seamless front-end food ordering experience where users enter the website or shell application, sign-in, and order through three distinct applications. The infrastructure integrates these distinct services with a frictionless experience for the customer. Meanwhile, Euvic also transformed the solution architecture and reimagined the platform infrastructure, successfully moving from a monolithic-based to microservice-based architecture, which was an innovation win for the brand.
Impact on the Industry:
By developing a scalable, efficient B2B admin panel, Euvic laid the groundwork for our client to revolutionize the restaurant industry’s online ordering practices. The platform enhances operational efficiency for restaurant owners and sets a new standard in the use of micro frontend architecture in enterprise retail applications.
Impact on the company:
The project was completed within 12 months, and thanks to the stability and scalability of the solution, the company has been able to begin onboarding new restaurants. This strengthens their customer base and extends more value to end-users.
The company took a significant leap forward in its ability to manage and support thousands of restaurants, and consolidated its position in the market thanks to this unique and user-friendly system.
Impact on the Engineering Team:
By including Euvic in the code review process, the company was able to deepen its practices for code quality and mature its standards.
The collaboration was central to the project’s success. There was an active exchange of ideas, and Euvic demonstrated new ways to architect solutions such as a new approach to dividing and managing the code repository that was more efficient and effective.