Case study
Multilingual Search Relevancy for a Learning Platform
How SquareShift tuned OpenSearch for relevant, multilingual content discovery across 14 languages for a global learning experience platform.
A global provider of AI-powered learning experience solutions, serving enterprise and public-sector organizations.
Its platform needed to support multilingual content — including 14 languages and French-language compliance in Canada — across web and mobile.
Languages supported for search relevancy and content discovery. GB of content indexed across the multilingual search stack. Custom plugins built to power multilingual search.
Key servicesHow SquareShift delivered it.
The challenge
The platform’s existing OpenSearch deployment couldn’t deliver relevant results across the 14 languages its content needed to support, and non-contextual search results made content discovery frustrating for users. French-language compliance in Canada and latency across 5 regions added two more constraints the search stack had to meet at once.
What we delivered
SquareShift evaluated and built 20 custom plugins to enable true multilingual search, then developed a scoring methodology using 30 attributes to fine-tune relevance across languages. Older content was hydrated with translations so it could compete on equal footing with newly published material in search results.
Query performance was tuned to return results in milliseconds across all 300GB of indexed content — regardless of which of the 14 supported languages a user searched in.
The payoff
The platform now delivers fast, relevant content discovery across 14 languages from a single OpenSearch stack — including French-language compliance in Canada — with 20 custom plugins and a 30-attribute scoring model doing the work that generic keyword search couldn’t.
Search relevance in one language is solved. The real work is a scoring model that treats every supported language as a first-class citizen, not an afterthought bolted onto English.
Platform & Software Engineering Practice Lead, SquareShift
Where this work sits
