TapMap is a start-up company that needed a solution to synchronize retailers’ Point of Sale systems with online accounts.
The solution had to include a Web system providing information on stock and prices. The information was to be updated on a daily basis and accessible to customers through free iPhone and Android apps. The customers would scan barcodes with their smartphone cameras to compare prices while the Web system gathers statistics and generates reports for retailers. Apart from that, searches and scans were to be displayed on a visual map in real time.
The reports produced by the system had to enable minute-by-minute tracking of shopping trends for particular products and the entire stock, so that a retailer using the product could, for instance, compare the demand for Chardonnay in a number of districts throughout a month and forecast the amount of wine required in stock for the following month. The system was also to help estimate expected sales and analyze, if the demand in a particular area is sufficient to open a new POS.
The system had to feature the highest level of performance and scalability to collect, process, and display statistics in real time. The existing solution was slow and could not satisfy the growing needs of the customer.
Our team of Ruby on Rails developers analyzed the architecture of the solution and found a way to improve it. The connections between the objects were optimized to enhance the structure of the database. This greatly improved the overall performance and provided nearly endless scalability.
The customer was one of the three winners at the International EXPO 2011. The event was held in the heart of the Silicon Valley at the Plug and Play Tech Centre and hosted the world’s leading technology experts. The iEXPO featured a number of promising startups who presented their projects to the audience.
Client platforms/Application servers
Web browser/Nginx + Passenger, Apache + Passenger
Ruby on Rails 2.3.8, Sphinx, MongoDB, MapReduce
MySQL 5.1 (primary), MongoDB 1.8 (for statistics)