
10 years in product design and UX. Built and scaled design systems at Aegon NL (5M+ customers), unifying 60+ products under one shared component library.
Indonesian by birth, Dutch because worstenbroodjes.




Three case studies.
22,000 advisors.
One interface for all of them.
Multi-BU portal redesign for independent insurance advisors.
Built for everyone. Designed for no one.
AIP exposed every business unit to every advisor, regardless of WFT license(!)WFT is the Dutch financial advisory qualification. It determines which product categories an advisor is legally allowed to advise on., active portfolio, or daily workflow.
The portal was role-blind.
Three months of analytics, session recordings and advisor interviews all pointed at the navigation structure.
One portal. Three ways it failed advisors.
Analytics, heatmaps and the portal audit showed the same pattern.
Three design decisions, mapped to three advisor pain points.
What shipped. What I killed in testing.
18-month deadline. Four validation gates.
Each phase shipped only after the previous one validated against advisors and stakeholders.
Gate passed
Gate passed
Shipped
Load time down 46%.
Advisors on task up 60%.
What worked. What I noticed too late.
Aeon Design System.
60+ products, one system.
Shared component architecture across Aegon NL products.
Every team had a button. None of them had the same button.
Each platform built independently. No shared components, no token language, no documentation. Every team solving the same problems in isolation.


| Polisnummer | Product | Status |
|---|---|---|
| P-00234718 | Pensioen | Actief |
| P-00198443 | Lijfrente | In behandeling |
| P-00312050 | ORV | Wachten |
Three platforms. One component.
Platform-specific Field variants were replaced with a single component driven by context flags. Reduced build surface, eliminated drift, and cut load times by 25%.



Docs nobody read. Then docs they pointed to.
Scattered, inconsistent, rarely referenced. I restructured the system documentation: usage guidelines, do/don't examples, token mapping, team contribution notes.
89% of adopting teams pointed to documentation as the reason they could switch without slowing down.
Dev time down 40%.
Component adoption above 90%.
The Data Table they wouldn’t adopt.
Shared structure, local complexity.
Turning a resistant revenue team into design-system partners without flattening their domain complexity.
Largest revenue team. Openly resistant.


70–80% of what they needed already existed.

Clear ownership. Neither team steps on the other's toes.
layer
boundary
System
Shared core, team-owned cells.
I designed the composable model and its components. Structure, behaviour, and accessibility shared; cell rendering, expansion slots, and conditional columns owned by Hypotheek.
Their edge cases stayed. No fork required.




Right: rebuilt on Aeon components.
The same contract. On a 390-pixel screen.
The extension points travel. Mortgage logic keeps rendering its own cells; the design system keeps owning sorting, selection, and keyboard behaviour.





Their biggest fear was waiting on us.
A11y defects down 62%.
Data Table coverage 90%.
What earned trust. What I should have prevented.
Things I build when nobody asked.
The craft side matters to me: I still want to be close to the work, doing the research, making the calls, pushing the visual quality. What also genuinely excites me is directing LLM agents as part of that workflow. I set the brief, the system executes, I review and steer. That's the kind of leverage I'm after.