Design a Cross-Product Tagging System

Medium · Low-Level Design · about 45 minutes

Asked at Atlassian.

Design a tagging service shared by several products (for example an issue tracker, a wiki and a code host). Users add and remove tags on any item in any product, list an item's tags, find all items with a tag across products, and see the most popular tags. A tag renamed or deleted in one place is renamed or deleted everywhere.

Related guides