Lead PM owning the digital roadmap for two national retail brands across web and native app — from search & discovery to checkout to personalization. I run a test-and-learn practice where every experience I ship is measured, and the lift is the point.
The problem: Shoppers on mobile listing pages struggled to narrow large catalogs and dropped before they ever reached a product. The existing filter set was buried behind an extra tap and ignored.
Designed a one-tap quick-filter surface placed directly in the listing flow and shipped it across 12 product listing pages as a controlled test. I scoped the surface against the highest-traffic categories first so the read would be fast and decisive.
Clear conversion and revenue-per-session lift on the primary brand and on mobile for the second brand. The one exception was a desktop regression on one brand — which I treated as a signal to segment, not as a reason to hold the wins.
Built the business case to graduate this from the personalization-tool implementation onto native search infrastructure, so the surface is owned in-platform rather than maintained as a campaign — durable, not a one-off.
The headline isn't the lift. Exposed users converted +59% higher — but the real finding was that almost no one was getting exposed. The win was diagnosing a 1%-open front door hiding behind a great experience.
Ran a conversational shopping agent at a 50/50 traffic split to 5M+ sessions to prove value before further investment. I synthesized the experience data for both internal leadership and an external partner audience, and analyzed over 1,200 individual conversational sessions to understand intent.
Engagement was excellent where it happened — strong conversion and add-to-bag lift among users who opened it. But banner visibility sat at ~28% and modal open rate near 1%. The experience wasn't the constraint; discoverability of the entry point was.
Reframed the roadmap around the front door — entry-point placement, visibility, and trigger logic — rather than further investment in the agent itself. The lesson I carry: a great feature behind a closed door is a distribution problem, not a product one.
The problem: Search was hidden behind a tap in the mobile nav. I tested surfacing it directly — and the right call was to read the two brands separately and split the decision rather than ship or kill across the board.
A/B tested an always-visible search field in the mobile nav across both brands, with two variants. I read results per-brand and per-variant rather than in aggregate, because aggregate would have masked a real divergence.
One brand showed a statistically significant unique-conversion lift — clear ship. The second brand showed an add-to-bag decline at high significance, which I would not ignore for the sake of a clean launch. Variant 2 showed no lift on either brand.
Shipped the winner, killed variant 2, and held the second brand pending a session-replay investigation into why the add-to-bag metric moved. Holding to diagnose is a decision, not indecision.
The problem: Our personalization tool was rendering directly on transaction-critical surfaces — including checkout — putting marketer velocity and revenue-path stability in tension. I redesigned the model to resolve that tension instead of trading one for the other.
Designed a model where engineering owns the actual rendering on critical surfaces and the personalization platform operates only as a server-side allocation and measurement relay, passing results to analytics. Documented it as a PRD with a bow-tie process diagram so engineering, marketing, and analytics shared one source of truth.
Removes the third-party tool from the transaction-critical render path while preserving the ability to allocate and measure tests — marketers keep their experimentation surface, engineering keeps control of checkout stability.
Rolling the model out MVP-first, proving it on a contained surface before generalizing. The principle: experimentation infrastructure should never be a single point of failure on the path to revenue.
I run product like an experimentation program — but what I ship are experiences. Every initiative starts with a hypothesis tied to a behavioral signal, gets sized against revenue impact and build effort, and ships as the smallest version that can prove or kill the idea.
I read results per-segment and per-brand — not in aggregate — because that's where the real decision lives. A win on one brand and a regression on another isn't a wash; it's two different ships. I'm comfortable killing my own ideas when the data says so, and equally comfortable holding a launch to diagnose why a metric moved before reacting.
I work close to the stack. I write the PRD, scope the Jira ticket, design the measurement framework, and sit with engineering on the architecture — so the test that ships is the test we can actually trust.
The loop
Search, personalization & experimentation
Commerce & content
Data & analytics
Lifecycle



