When scoping a design system's first release for a freelance job marketplace, how do you decide which foundations and components to include?
answer
- foundations before components
- usage times pain, against effort
- what the pilot needs next
- small but complete
- leave the one-offs out
basics
~20 sShip foundations first, then choose components by how widely they are used and how much pain their inconsistency causes, weighed against effort and the pilot's upcoming work. Keep the release small but complete rather than broad and shallow.
solid answer
~50 sI start with **foundations** — color, type, spacing, elevation and a core icon set, as tokens plus guidance — because every component depends on them and they spread consistency cheaply. For components, I score candidates on **usage** (how many screens and teams need them, taken from the interface inventory) and **pain** (visible inconsistency, accessibility defects, how often teams rebuild them), weighed against **effort**. On a freelance job marketplace that usually puts buttons, text fields, selects, the job card and the proposal list row near the top, while the contract milestone timeline — complex and used on one screen — waits. I also include what the pilot team needs for its next features, so the release is used immediately. And I prefer a few components that are finished — documented, accessible, available on web and mobile — over many half-built ones, because one bad early experience costs more trust than a missing component.
go deeper
Recall that a first release usually starts with foundations like color, type and spacing, then adds the most widely used components.
Explain the scoring: usage and pain weighed against effort, with a boost for what the pilot needs, and why a small complete set beats a broad shallow one.
Show how you turn inventory data into a ranked, defensible scope across web and mobile, record what was deferred and why, and protect completeness under pressure.
Treat scope as trust management: the first release's job is proving value to sceptical teams, so the cost of a bad early experience outweighs the cost of a missing component.
## What a first release is for A **design system** is the shared set of foundations, components and guidance that product teams consume instead of building their own. Its **first release** is the first version real teams build with. Its job is not to cover everything; it is to prove that the system saves effort and improves quality, to start a feedback loop with real consumers, and to earn the trust that later releases depend on. Scope decisions follow from that job. ## Foundations first **Foundations** are the shared visual decisions everything else is built from: - **Color** — brand, neutral and status colors, organised as tokens. - **Typography** — the type styles used for headings, body text and labels. - **Spacing and sizing** — the values that control rhythm and density. - **Elevation and shape** — shadows, borders and corner treatment. - **Core icons** — the handful of glyphs almost every screen uses. They come first because every component consumes them, and because a product can adopt them without replacing its structure, which spreads consistency widely at low cost. ## Scoring components For components, a simple scoring pass keeps the choice evidence-based: 1. **List candidates** from the interface inventory, with how many screens and teams use each. 2. **Rate pain**: how inconsistent the current versions are, whether they have accessibility defects, how often teams rebuild them, and how many bugs they generate. 3. **Estimate effort**, including research, documentation and delivery on both web and native mobile. 4. **Add the pilot's roadmap**: components the pilot team needs for its next features get a boost. 5. **Rank and cut**: take the top of the list that fits the release, and write down what was deferred and why. | Candidate on the marketplace | Usage | Pain | Effort | Verdict | |---|---|---|---|---| | Button | Every screen | Six styles, weak focus states | Low | First release | | Text field and select | Search, profile, proposals | Inconsistent error messages | Medium | First release | | Job card | Search, saved jobs, recommendations | Four layouts | Medium | First release | | Proposal list row | Client and freelancer dashboards | Rebuilt per team | Medium | First release, needed by the pilot | | Contract milestone timeline | One screen | Moderate | High | Later | ## Small but complete A component in the first release should be **complete**: documented with usage guidance, meeting the system's accessibility and quality bar, working in every state, and available on the platforms the pilot uses. Five complete components earn more trust than fifteen that each need workarounds, because the first team's experience becomes the story every other team hears. ## What to leave out - **One-off components** used on a single screen, unless the pilot needs them now. - **Highly complex components** — data grids, date-range pickers — that need research before their API can be right. - **Product-specific patterns** that belong in one product rather than in shared code. - **Speculative items** nobody has asked for yet. ## Example: a freelance job marketplace The marketplace's inventory shows buttons on every screen in six styles, a job card in four layouts across search and recommendations, and a proposal list row rebuilt separately by the client and freelancer teams. The pilot team is about to redesign the proposal flow. The first release therefore ships the foundations, buttons, text fields, selects, the job card and the proposal row — each documented, accessible and available on web and mobile — and explicitly defers the milestone timeline and the messaging composer, with the reasons recorded so the next scope discussion starts from evidence.
- Why not ship the most complex components first, since teams struggle with them most?Complex components such as data grids or date-range pickers need more research, API design and accessibility work, so they delay the release and carry more risk of a bad first impression. Starting with widely used, simpler pieces builds trust and a working delivery process; complex components follow once the team has feedback and a proven way of shipping.
- How does the pilot team's roadmap affect a design system's first-release scope?Components the pilot needs for its next features get priority even if they score slightly lower elsewhere, because a release that is used immediately generates feedback and proof. A perfectly prioritised release that the pilot cannot use for months teaches the system team very little.
saying these in an interview costs you the question
- The first release should include every component the product uses.
- Foundations are optional in a first release, since components carry their own styles.
- First-release scope should copy what a well-known public system shipped first.
- The most complex components must come first because they hurt most.
- Many half-finished components beat a few complete ones.