A customer came with a request to improve the existing application and implement new features for the real estate auctions application. The idea of the app is to provide an ability to find an appropriate property and suitable auction. The customer wanted to implement new features and had the following challenges with the performance of Google Maps.
Google Maps API
The main feature of the project is Google Maps, which shows markers with properties of different auctions. After first looking at the project, we decided to rewrite it to native Google Maps API without any third-party library because the library used to increase the development speed at the cost of performance. The application is designed to show a massive amount of markers on a small area with accurate location of properties, and Native Google Maps API is the best choice for these requirements. We have optimized all implemented maps `features and cached all markers` images generated on the fly. These changes made the application work with 5K+ markers at once without any effort.
Dynamic Load Issues Solved
Another challenge was the dynamic load of markers on the map. We had to decrease pressure on the network to make the application work properly on mobile devices. It was achieved by dynamic fetching of properties depending on property coordinates and the user`s map viewport. One of the requirements was to allow the user to see properties on a map immediately after changing location. We applied the complex processing of potential properties nearby and are out of the user`s viewport bounds. After these changes, the application worked properly on mobile devices, even on 3G networks.
SEO-Friendly and Payment Processing Suite Integration
The last thing to implement was an SEO-friendly website that included application subscription management, user profile, and a list of all properties and auctions with a huge amount of filters. The website with filters made user navigation and property search much more comfortable.