vacation rentals

AltexSoft Rebuilt a Booking System for a Multisite Vacation Rental Business

Business domain
Travel
Technology
DockerPHPReactAmazon Web Services

Background

Our client, a US property management service provider, used an aggressive acquisition strategy to expand into new territories. The company bought up small vacation rental websites, preserving their old domain names as well as their look and feel, even retaining local management to help hold onto loyal customers. But under the hood, the provider’s main website and acquired minisites were supposed to distribute inventory using a new booking engine.

Challenges

To handle rapid growth, the client needed an advanced system that would deal with high traffic volumes and enable inventory distribution across multiple sites. The initial version of the software appeared to be poorly designed and didn’t function properly. The company reached out to AltexSoft when facing the following business challenges.

Address legacy software issues and go live with a stable booking solution as soon as possible

Improve user experience and conversion rate

Lay the technical foundations for a robust, flexible, and scalable platform that would support the client’s business strategy

Value Delivered

AltexSoft took on the task of auditing the legacy software, fixing critical issues, and launching it into production. As a result, the client received a stable online booking tool that speeds up acquisitions and facilitates business growth.

Improved security and efficiency of the online booking process

First of all, we reviewed and optimized the booking engine code. To make it work properly, we did an almost complete rewrite of the frontend while the backend was changed by almost 50 percent. For fault tolerance and higher security, we migrated the product to the Amazon Virtual Private Cloud, which restricts access to data and resources for unauthorized users

A better user experience through enhanced navigation and website speed

On the frontend, we redesigned the search filters of the main website to guide users only to those locations where the client’s services were available and let them find exactly what they were looking for. For an even better experience, we embedded search autocomplete functionality. We also implemented server-side rendering that resulted in improved search performance, better SEO, and faster page loading.

Faster inventory updates

We integrated a new, more performant Track PMS API and took a different approach to the synchronization of the booking system database with the PMS. Instead of updating all the inventory content once a day as done previously, we started requesting only those properties whose prices or availability had changed during a certain period of time. This dramatically sped up the update process.

A shorter time to market for each acquisition and destination added

Since all the websites in the client’s system had the same settings, we automated the building and deployment of their infrastructure using IaC (infrastructure as code) tools. This step reduced manual work and supported the growth-through-acquisition strategy simplifying and speeding up launches of new websites. Besides that, we implemented a multi-PMS solution with automapping to fix content inconsistencies. When buying companies in the future, it will help add new destinations and properties from different sources smoothly, avoiding duplications and mistakes.

Approach and Technical Info

The project lasted for almost a year and a half, involving three frontend engineers, a backend engineer, three QA engineers, a solution architect, a DevOps engineer, a project manager, a business analyst, and a UX designer. Some of the specialists worked part-time. The total scope exceeded 9 man-years.

The technology stack included React, WordPress (for microsites), Next.JS, Laravel (for backend), Elasticsearch, AWS, EC2 Cluster, Docker, Pulumi (IaC), GitLab CI/CD.

DockerPHPReactAmazon Web Services