Getting Out of the Box: A Cloud Based Custom Search Tool

ANCILE Solutions is the creator of the popular uPerform digital learning platform. It’s a tool that clients use to develop custom, in-application software training and support. uPerform makes it easy to record tutorials to train employees. A content creator records the steps of the task, and uPerform automatically translates those steps into easily digested materials such as work instructions, simulations, videos, and elearning courses.

ANCILE redesigned its entire system to create the uPerform Cloud on AWS. Every aspect of the platform was updated. Previously, ANCILE had an out of the box solution for search. With the new architecture, ANCILE upgraded to a search engine that uses the AWS OpenSearch product (formerly known as AWS Managed Elasticsearch).

Migrating to the Cloud

ANCILE had two goals for the new cloud based search engine: performance enhancement, and easy implementation of new features:

  • Multi-tenant capability
  • Access control by user role and group
  • Additional document format support, including Microsoft Word and PDF
  • Keyword search for specific metadata fields
  • Full-text search of document content and metadata
  • Improved ranking of search results

ANCILE turned to Chariot for expertise in AWS and Elasticsearch to create the new search engine. As a fully remote project, one of the core challenges was ensuring that the ANCILE development team would always remain in sync with the Chariot team. 

Solution: Teamwork and Transparency

To ensure transparency during the development process, Chariot implemented daily standups, a steady back-and-forth on Slack, and a prototyping account in AWS to which the ANCILE team was granted access. The ANCILE team could see Chariot’s progress as it happened, and they were also able to test the search function before it was released to customers.

Deployment was a consideration from the earliest phase of the project. Knowing that ANCILE used AWS CloudFormation for deployments, Chariot leveraged its library of proven templates, adapting them to meet the requirements of the ANCILE IT team.

Result: Robust, Flexible Customized Features

Chariot’s system for ANCILE, based on AWS Lambda, responds to new documents arriving in S3 by parsing them and uploading them to an AWS OpenSearch. 

Some of the key features of our implementation include support for thousands of customers, each of whom may have thousands of training documents, in up to 24 languages; we also implemented role-based access as part of the search query, rather than a post-query step, and we built in the ability to isolate keywords and boost their scores relative to other search terms. 

Rather than put up with a prefab solution that didn’t accomplish all the tasks ANCILE needed, the company has a search function that’s built exactly to specifications, and can be updated in house. When new content is added into the system, it’s uploaded with ElasticSearch. With Chariot’s help creating the cloud-based search engine, staff was free to focus on all the other product features on their wish list.

Technologies Used

  • Amazon OpenSearch 
  • AWS CloudFormation
  • AWS Lambda
  • AWS S3

How can we help your company with your development needs?

Contact Us