Please, change device orientation to portrait

Case Study | Agriculture

PoC—Realm Integration with Mobile Application

Our client develops data driven technologies that help farmers run efficient operations to produce more food. The company—servicing millions of acres worldwide—uses innovative digital agronomic tools to focus on the sustainable production of high-yield, high-quality crops. The solutions are designed to optimize inputs, minimize environmental impact, and protect the farm’s economic viability.

Business Challenge

The client’s main business challenge was improving user experience for its mobile application by reducing data update time. In order to accomplish this, our client decided to investigate feasibility and implementation options of the Realm.io platform.

Project Description

The client consulted with SoftServe to analyze its mobile application and the possibility of integrating it with the Realm.io platform. The SoftServe team started with a proof of concept (PoC) to investigate whether the integration was possible in general and to clarify the algorithm. At the time, information was only available through a REST request while the Realm integration would provide automatic data synchronization.

The SoftServe team was represented by the solution architect during the stage of gathering high level requirements and building service architecture. The JS tech lead executed the PoC and communicated with client’s team.

The users of the PoC results were the client’s mobile team and the end users of the new service are farmers—our clients' customers—and they are able to receive data on their mobile devices faster.

The novelty of Realm was a challenge that created difficulties with the integration implementation. The team communicated directly with Realm developers to indicate and then remove bugs within the platform.

Technology Stack

JavaScript Node JS
React Native Notepad++
NPM Confluence
Realm-object-server

Value Delivered

The results of the PoC showed it was possible to upload only delta data without extracting all server data, that sped up the process of DB-device synchronization. Realm did not decrease the application initial load time; however, it allowed better synchronization so the data did not need to be reloaded when something changed. Realm would also provide more enhanced ways of receiving data compared with REST requests. The PoC results were successful and further implementation and support was transferred to the mobile team.