Case Study — 02
- Company
- Yara International
- Title
- Senior Product Designer
- Team
- 5 DS Designers · 2 DS Engineers
- Period
- Nov 2021 – Jul 2023
- Stack
- Figma · React Native · React · Storybook · Zeroheight
Ahua Design System
From two regional systems into Yara's global system of systems. Ahua unified a fragmented design landscape across platforms, regions, and teams — becoming the single source of truth for all of Yara's digital products worldwide.
Components released for global web and mobile use
Design system adoption following migration and onboarding
Contribution rate after standardised workflows launched
Time to unblock designers and developers
Two systems.
No common
language.
By late 2021, Yara had two independent design systems serving different ends of the business: Ahua for mobile-first products in Asia and Africa, and Fertilise for web-based products in Europe and the Americas. Each system had unique components, token structures, and conventions, with no bridge between them.
This led to a company with a unified brand but fractured product experience. Teams duplicated and diverged on identical UI patterns, lacking a governance model, a contribution framework, or a single accountable team. Design decisions remained local and opaque, hindering cross-system visibility.
Map the chaos
before you
resolve it.
Before unification, we needed a clear view of what existed. I led an audit of both systems, cataloguing components, mapping overlaps, and identifying gaps. The audit exposed significant duplication—same patterns implemented differently, with varied naming, token usage, and edge-case assumptions. Neither system was wrong; they simply weren’t designed to coexist.
A key structural constraint was the platform. Ahua was built mobile-first for Asian and African markets; Europe's products ran primarily on the web. A simple merge wasn't possible — the unified system needed to support both platforms natively from the ground up. I worked closely with Philip (engineer) to assess gaps in the web environment and plan the platform expansion alongside the migration work, rather than treating it as a second phase.
One token layer.
All platforms.
The architectural foundation for Ahua's expansion was a unified token model that could serve both mobile and web without maintaining two parallel structures. The token architecture was redesigned to be platform-agnostic at the semantic layer — the same colour.interactive.primary token resolved to the correct platform value, whether rendered in a React Native app in Kenya or a web dashboard in Norway. The token layer became the single contract that both platforms consumed.
Component architecture followed similar principles. Ahua's slot-based system ensured consistent component composition across platforms, enabling product teams to assemble complex UI patterns from shared primitives without duplicating logic. Navigational components — among the most platform-specific patterns in any system — required the most architectural investment, demanding custom slot structures that honoured each platform's conventions while remaining part of one unified system.
Retiring one
system. Absorbing
the best of it.
With architecture defined, migration began. Fertilise components weren't simply copied—they were rebuilt to fit the new token structure and model. Each component was kept, consolidated, or deprecated based on evaluation. Overlapping components were merged into a single, better-documented version; unique Fertilise components were included only if they had clear, broad usage.
Once all viable Fertilise components had been migrated and validated, we unpublished the legacy system and enforced exclusive use of Ahua across all product teams. This was a deliberate inflexion point — it removed the option of returning to old habits. Product teams that had relied on Fertilise now had a clear, supported path to Ahua, with migration guides and onboarding sessions to smooth the transition.
Fragmented
Two parallel systems, no shared model
- Duplicate components across Fertilise and Ahua
- Separate token architectures per platform
- No governance or contribution framework
- Opaque decision-making across teams
- Web platform largely unsupported in Ahua
Unified
Single system, all platforms
- One component library serving web and mobile
- Platform-agnostic semantic token layer
- Contribution framework with clear ownership
- Transparent decision-making protocols
- Full web environment support shipped
Standards that
travel without
me.
A design system used across countless product teams in multiple regions and time zones can't scale through central gatekeeping. I built a contribution and collaboration framework that defined how designers across the organisation could propose components, submit changes, and participate in system decisions — with oversight from the DS team, but without requiring sign-off on every individual commit.
Decision-making protocols defined clear ownership boundaries: system-level decisions vs product-level decisions, architectural changes vs local adaptations. This transparency eliminated the opacity that had made the old systems frustrating to work with. Contribution rates increased not because designers were pressured to contribute more, but because the path to contribution was finally clear and the outcome of each request was predictable.
Building the
team that builds
the system.
I hired and managed the team's first intern — my first direct report — deliberately delegating component execution work to free my own capacity for complex architectural problems: navigational components, the slot system architecture, and the cross-platform token model. We introduced 2-week sprints with defined rituals, providing the team with a predictable structure without sacrificing the flexibility design system work requires.
Figma branching was implemented to enable isolated component development — parallel work on the library without polluting the main file. In-tool review processes meant changes could be evaluated and approved before merging, creating a quality gate that didn't rely on verbal agreements. The intern grew into a full-time Junior Designer — a deliberate outcome built through structured delegation and mentorship, not a coincidence.
What actually
changed.
Two independent systems with separate architectures, conventions, and teams were consolidated into a single, globally adopted design system. Ahua became the source of truth for all Yara digital products — web and mobile, Europe and international markets — with a governance model that enabled the system to grow without centralised bottlenecks.
- →
80+ components released for global use across both web and mobile platforms
80+components - →
Design system adoption rose following structured migration and cross-team onboarding
+25%adoption - →
Contribution rate increased after standardised workflows replaced informal, ad-hoc requests
+60%contributions - →
Designers and developers unblocked faster through an accelerated and predictable release cadence
−30%blocked time - →
Ahua established as the sole design system across all Yara digital products globally
1global system
Lessons that
cost something.
Ahua was the most complex system I've worked on. The scale, cross-functional dependencies, and team responsibilities proved unexpectedly demanding. The toughest lessons weren't technical—they were about self-management.
I didn't protect my own capacity
I took on work that should have been delegated and absorbed scope without pushing back. Building a system at this scale while managing team growth, stakeholder alignment, and cross-functional dependencies required more sustained energy than I had budgeted for. The system shipped. I burned out.
I didn't draw clear boundaries
Stakeholders and product designers consistently brought requests that fell outside the system team's scope. I absorbed them rather than redirecting them. The skill of clearly distinguishing a system decision from a product decision — and communicating that distinction without friction — is something I've since built. But it came too late for this project.