While Roam was helping travelers with visa applications, we noticed something important: many of our visitors weren't native English speakers. Our analytics showed that people from all over the world were trying to use our platform, but the language barrier was getting in their way. We needed to make Roam truly accessible to everyone, regardless of what language they spoke.
Making Roam accessible in multiple languages with an intuitive language selector.
Instead of just translating our website manually (which would have taken forever), we built a smart system that could handle translations automatically. We used AI to help translate content accurately, but always had human experts review the important stuff to make sure everything made perfect sense.
The same visa information, now available in different languages.
We didn't want our international users to have a slower experience, so we built the system to be lightning-fast. We used Next.js to generate static pages in each language, which meant the website loaded quickly no matter where in the world you were accessing it from. We also made sure search engines could easily find our content in every language.
// Example of our translation automation
async function translateContent(text: string, language: string) {
// First, use AI to generate a translation
const aiTranslation = await translateWithAI(text, language);
// Then, send for human review if it's important content
if (isKeyContent(text)) {
return await sendForHumanReview(aiTranslation);
}
return aiTranslation;
}
A glimpse at how we handle automated translations while ensuring accuracy.
The results were amazing. Within months of launching our multilingual platform:
This project taught me invaluable lessons about leading digital transformation in the public sector. I learnt how to balance innovation with security, how to bring stakeholders along on a journey of change, and how to deliver complex technical solutions whilst keeping the focus on improving people's lives.