DEADLINE: May 2017 – August 2019
PROJECT STAFF (OUTSTAFFING): 2 developers
TECHNOLOGIES: PHP, Yii2, PostgreSQL, GraphQL, ElasticSearch, HTML5, CSS, JavaScript, Vue.js, jQuery, Prisma, Docker, Docker Compose
PROJECT COST: 3,5 million rubles
TARGET
Ensure the smooth operation of the cinema chain website with branches throughout the Russian Federation, as well as develop a new structure and add functionality for a more understandable, faster and well-built user experience.
MAIN GOALS
- Maintenance of the old version of the site.
- Development of a new site architecture and internal microservices.
- Creation of a central API for all departments of cinemas and integration with third-party resources.
SOLUTIONS
For two years we were successfully cooperating in the outsourcing format with a large network of Russian cinemas. It was a big project with many modules. To make it this way, we redesigned the entire site structure and split it into separate blocks. We created 17 microservices and made them work as a whole.
TECH SUPPORT
Our initial task was to finalize the old version of the site. We found bugs and improved functionality. At the same time, a prototype of an updated web product was being prepared, for which we had to develop the backend logic on a modern stack.
NEW ARCHITECTURE AND API
We rewrote all the code and created a modular structure. We developed an online booking widget, an authorization service, a session management system, and implemented more than ten more microservices. Thanks to this, it’s possible to view the schedule of shows in a city, book only free seats, pay for tickets online, etc.
DIFFICULTIES WE ENCOUNTERED
A huge number of microservices that need to be integrated with external third-party resources and software.
WHAT WE LEARNED
We gained huge experience in building a modular architecture. We got rid of the monolith and divided the responsibility into modules. Each of our services performs its assigned task.
RESULTS
- Completely updated site and cinema management architecture.
- A session management system, an online booking and sales widget, as well as a number of other functional modules were developed to simplify the work of cinema employees and improve user experience.