This project is under NDA. Enter the password to view.
Farfetch's legacy CRM tool, Phoenix, ran entirely on Google Sheets. With no interface or approval workflow, the translation team wasted over 50 hours a week copy-pasting content from XTM.
STORM replaced this in 2022. While the MVP worked, scaling globally revealed a major flaw: content couldn't be reused or localized without duplicating entire campaigns.
My role: Lead the UX to transform STORM from a basic campaign creator into a highly composable content platform.
The brief was to entirely rethink STORM's content layer. The goal: empower global CRM teams (EMEA, AMER, APAC) to stop duplicating work and start composing reusable content.
I facilitated a 4-day Design Sprint with Product, Engineering, and CRM to define and validate the right solutions before a single screen was built. These decisions went directly into development.
Adding templates to a rigid system only worsened the issue. Each new template triggered its own translation cycle, pushing duplication rates even higher.
The intervention had to happen at the content layer — using reusable tokens and pre-translated modules — rather than just the campaign layer.
Campaign creation was fast, but cross-market duplication remained a massive bottleneck. Global teams ran isolated copies of the exact same content — updated manually and translated separately.
This framework established a shared language and stopped the "let's just build it" reflex. Every phase required a clear deliverable before moving forward.
I mapped the entire campaign cycle to separate real friction from perceived issues.
"Localization and content reuse were the dominant pain points — not campaign creation itself."— Finding from the journey mapping session with PMs and CRM team
Three sessions to validate the journey map and expose the gap between the system's capabilities and actual user needs.
A 3-part workshop to translate problems into prioritized solutions. I facilitated all sessions and synthesized the outputs into a voting matrix.
● = votes received in workshop
| Goal | User need | Use case |
|---|---|---|
| Dynamic Tokens | Auto-updating content inserted at send time (e.g., {{USER_NAME}}). |
Marketers insert {{USER_NAME}} or {{PROMO_DISCOUNT}} — system resolves at send |
| Static Tokens | Pre-translated, reusable messages across markets. | Create "Enjoy Black Friday here" token once — reuse in any campaign, across markets |
| Generic Modules | Standardized templates for headers, footers, and shared blocks. | Library of generic module templates customisable per campaign |
| Content Modules | Pre-translated, customizable promo blocks ready for reuse. | Create a promotional block once — adapt and reuse across campaigns with minimal adjustments |
| Template Management | A centralized hub for emails, sequences, and campaigns. | Add to sequence, manage sequences, view statistics, edit settings — without leaving the tool |
Identified opportunities that go beyond the scope of this sprint — each one a direct extension of the composability principle the four features established.