Objective: to develop the largest aggregator of holiday homes and apartments which enables searching for an accommodation all over the globe.
Roomlr is a huge project aimed at aggregator of sites creation. The site enables looking for apartments to rent them all over the globe. Our input is the backend development enabling gaining the needed information from various sources and processing it.
Our test task was to create a demo. To our surprise, it took only 2 days to develop a prototype site which, although quite simple, but still functioned. Then, it had only 150 000 accommodations from 3 sources with pictures and commodities. Only text search was available.
lasted already 14 weeks and implied complete rewriting of the site. We needed a framework on which basis we could add new sources including very original ones. Our team integrated an advanced filter, ability to match different details like locations, availability and number of vacant places etc. A revolutionary search has been adjusted as well as periodic updates of places. Download of a large number of images via queues an Amazon S3 was already customized as well. In addition, we already solved the languages problem at this stage – yandex and google translators came in handy. We have also created an API that can be used by mobile apps.
Organized pictures! Each place has some pictures of various formats and sizes. Our task was to adjust them to the site. Thus, we have organized their downloading, resizing and downloading to Amazon S3 which stores the site’s images.
Interpretation of different types of data. The accommodations are shown in quite different ways on the sites. We have dealt with a lot of data formats like xml, json, etc., and data structure variants. A price format (per day or per week, for instance), an estate type, commodities (for example, only some options are additionally marked “gay-friendly”, the list varies) etc. are adjusted as well. Eventually, all the data collected is formatted in the necessary way and displayed on site.
Large data processed. We have more than 1 500 000 apartments listed. Each of them have images. We use Celery to organize periodical download and queue. In such a way, we manage to deal with a large amount of processed data.
Constant “care”. Our site needs constant attention as all the partner’s sites are constantly renewing adding and deleting accommodations, changing the information about them adding commodities and making minor or major repairs, and many other actions. Despite active regime, we keep Roomlr updated.
Fast search. A great number of different filters and locations usually makes search of the needed place extremely difficult and prolonged. However, we have sorted out the problem with usage of sphinxsearch.
"We have started working on Roomlr project together from the very beginning. I remember how these guys have first shown me the prototype handled in just 2 days, and now the site already displays more than 1 500 000 objects. I am impressed how they tackle large amount of data and how they come up with ideas to make it better. It is a pleasure to work with goal-oriented and sophisticated developers, so I advise you to try it out as well!"
We do not intend to create similar travel projects. However, if your project includes data aggregation and lots of data processing, it will be good match.