Elastic Search Engine and UI Redesign for Telecom Company Portal
The team considered that ELK, AppSearch, Cypress.io and React were the best tech stack to be employed since the company needed to use these modifications on its HomePage and for project listing.
The main challenge was to unify and standardize the indexing of documents from different company websites in a single format and keep it updated when there are changes. In addition to this, it was necessary to parameterize the search engine to meet the client's needs and strategies.
At the UI level, it was essential to integrate different types of results on the same page, using custom cards according to the information that was wanted to be displayed.
To have a unified search engine, ElasticSearch was implemented, defining a blended document schema. Besides, for the intake of sites and the update of changes, crawlers were developed with Python, which run through them and keep them synchronized. As crawling was not optimum for this site, a data-ingest service was designed, using an exposed API.
Concerning the information architecture, an initial discovery process was carried out, which was replicated throughout the project to design and validate ideas before receiving new embedded sites or clients’ requirements.
Results & Feedback
On Tuesday, at 11 pm, all the members of the claro.com.ar team met to monitor, test, and celebrate the release of the new search engine on Claro’s website. They were attentive not only to any problems that may occur during the deployment phase but also to automatic tests that were running at that moment, and the monitoring systems, which were also being established. Obviously, they wanted to be the first ones to try this more sophisticated engine.
The deployment started to run around 11.30 pm, and after midnight, having tested the features, adjusted settings, and written down some things that need to be repaired, the team left the page running correctly.
The client considers we are professional and proactive, and we always delivered on time.