Ed. 001  ·  Product Management Two case studies

Collaboration is the job.

AI is just the newest collaborator.

Project Dashboard

Harbor

Interactive dashboard with live status pulled from every team's own project management tool.

Taxonomy Cleanup

Coop

AI-assisted taxonomy alignment across ten teams, built to work for humans and machines alike.

Ed. 002  ·  Release coordination dashboard

Harbor

Fictional product org, real mechanics

Harbor pulls every team's project tracking into one dashboard, so where a release stands reads in about 30 seconds. The numbers that decide a release stop living in separate tools.

Readiness, days to release, scope changes, and stalled dependencies in one row.

The model

Each team ships work through whatever project management tool they already use, whether that is Jira, Linear, GitHub Projects, or Asana. Harbor pulls state from each of those sources of truth and aggregates it into a single leadership-facing view. Updates run off Claude CLI automations triggered on repo activity, so status is live rather than manually reported.

It sits outside standard PM tooling on purpose, behind an access-controlled URL, so if you can open a link you can review a release.

Information architecture

  1. Release readiness scoreThe readiness score sits at the top, so leadership can answer "is this shipping" without reading anything else.
  2. Milestones timelineThe milestones timeline shares dates across all workstreams instead of living in six different plans.
  3. Convergence viewThe convergence view tracks every workstream toward the release, with statuses.
  4. DRIsDRIs list the directly responsible individuals with contact information, so escalation paths are one click away.
  5. PRD coveragePRD coverage shows per-requirement ticket counts, surfacing scope-to-execution gaps in real time.
  6. Build and Quality kanbansBuild and Quality run as sibling kanbans, because QA operates on a decoupled cadence and needs its own board.
  7. Blockers logbookThe blockers logbook exists so nothing quietly derails us.
  8. ProvisionsProvisions hold the PRD, design system, staging, retro notes, and ceremonies, so stakeholder onboarding is a link click, not a meeting.
  9. On DeckOn Deck holds PM-vetted product opportunities ready for leadership visibility.
Click into any section for the detail behind it and, where it matters, who to talk to.

Walkthrough

01

Milestone drilldown

Click any waypoint and the sidecar shows what is shipping against that date, why it is on or off course, and who to talk to if it is not.

02

PRD coverage

Every requirement in the Product Requirements Document ties to the tickets covering it, grouped by workstream.

Opening a requirement shows the gap between what was scoped and what a workstream actually has in flight, with a filter action that narrows the kanbans down to just that requirement's tickets.

03

Ticket detail

A ticket's sidecar carries its description, the owner's contact information, the requirement it rolls up to, its dependent tickets, and recent activity, all in one place.

04

DRI detail

A crew card's sidecar shows the owner's active work: assigned tickets with due dates, active alerts, recent activity, and one-click ways to reach them by email or Slack, or filter the dashboard to their surface area.

05

Tag filtering

Filter the kanbans by tag from the Build header, or click any tag on a card to apply it directly. Column counts update as tickets are hidden, so the board narrows to exactly what is relevant to the conversation you are in.

06

On Deck

Each card shows source (retro, CX, data, eng), effort estimate, and impact hypothesis.

Opening a card surfaces the rationale, why now, related in-flight work, and contact information for whoever raised it, plus an upvote or downvote signal to help prioritize.

Ed. 003  ·  Taxonomy cleanup across ten teams

Coop

Fictional grocery client, real work

A cross-functional taxonomy overhaul across ten teams and 100,000 SKUs, rebuilt to serve store associates, shoppers, purchasing, and an LLM from one source of truth.

Coop is a nod to my first job, at a grocery store. Its numbers are averages across the taxonomy projects I've run.

60% less catalog maintenance time
30% better search relevance on the storefront
75% of internal teams onto a unified system

The problem

Coop is a grocery and delivery hybrid with 100,000 SKUs across its catalog, and no unified organization system. Every section of the store has its own way of categorizing products, and those categories overlap, compete, and contradict each other across departments.

Six different systems relied on that taxonomy, each needing it to answer a different question:

  • Inventory needed what was on the shelf.
  • Purchasing needed cost and supplier.
  • The storefront needed categories shoppers could browse.
  • Data reporting needed consistent fields to aggregate.
  • The delivery app needed handling details.
  • The meal planning tool needed ingredients.

60% of the catalog was tagged inconsistently, which meant the same product could appear in three different categories depending on each team's system.

Updating a single product's label required buy-in from every department that used that label. Consensus took an average of six weeks per update. At a company that adds and swaps products constantly, that is not a workable pace.

On top of all that, Coop has LLM-powered features, and those needed a clean, machine-readable taxonomy to work.

Before — six versions

PURCHASING Fresh Produce → Tomato (bulk crate) INVENTORY Refrigerated → Tomato (unit) STOREFRONT Vegetables → Tomato (loose) DELIVERY Fragile items → Tomatoes on the vine MEAL PLANNER Sauce ingredients → Roma tomato MARKETING Summer feature → Heirloom tomato

After — one entry

SKU · 001042 Tomato On the vine, organic. Roma variety, 1lb. HARD ATTRIBUTES — shared · Fresh · Refrigerated · Produce · Vegetable · Vegan · Organic · Fragile · Weight-based SOFT ATTRIBUTES — owned · Summer feature · Sauce base · Salad ingredient · Local · Seasonal
Before: six departments, six versions of a tomato, no shared truth.Afterward: one entry per product, hard attributes shared, soft attributes owned.

What I owned

  1. Interviewed partners to map the territory

    Every team believed their categorization was the right one. Before proposing anything new, I needed to understand why each version existed and what it was optimizing for.

  2. Created documentation and training

    A new taxonomy only works if the teams using it actually understand it. I wrote the documentation and led the training that turned an agreed-on structure into something teams could apply independently, correctly, and consistently over time.

  3. Partnered with engineering to make a product usable at scale

    Manual tagging does not hold up across thousands of products and constant catalog churn, so I partnered with engineering to build a tool that suggested taxonomy tags for new and changed products as they entered the catalog. A person still reviewed and approved each suggestion before it went live. The taxonomy stopped being a document people had to remember and became infrastructure the catalog ran on.

READ BY PEOPLE READ BY MACHINES SKU · 001042 Tomato On the vine, organic, 1lb. HARD + SOFT ATTRIBUTES INVENTORY Store associates reads: storage, shelf, weight PURCHASING Category managers reads: supplier, unit cost, seasonality STOREFRONT Shoppers browsing the app reads: category, promotion, badges LLM · SEARCH ASSISTANT “Do you have Roma tomatoes?” reads: all attributes, variety, synonyms LLM · MEAL PLANNER “Plan me a week of dinners” reads: dietary tags, recipe compatibility LLM · DELIVERY INSTRUCTIONS “Pack this order for a runner” reads: fragility, storage, weight
The same entry serving a store associate and a meal-planning LLM. Separating what is stable, a tomato is always fragile, from what is contextual, a tomato is a summer feature this month.

The outcomes

  • Catalog reduced from 100,000 to 85,000 SKUs through deduplication and consolidation of redundant entries.
  • Update time cut from 6 weeks to under 2 weeks, a 70% reduction, by clarifying decision rights and giving each team ownership of the axes they actually cared about through the tool.
  • 30% improvement in successful search results on the storefront, driven by consistent tagging that gave the search engine clean signal to work with.
  • Future AI features unblocked. Clean, machine-readable structure.

What this shows

Taxonomy is how a business answers every question about its products. Get it right and search returns the product, reporting adds up, purchasing and inventory stop contradicting each other, and an LLM can read the catalog without a translator. Get it wrong and every team builds its own workaround, then pays to maintain it forever.