---
title: "Design-First Collaboration"
url: https://daily.dev/posts/design-first-collaboration-wqf2bwpxe
source_url: https://martinfowler.com/articles/reduce-friction-ai/design-first-collaboration.html
type: article
source: "Martin Fowler"
published: 2026-03-03T04:11:04.958Z
updated: 2026-03-15T03:36:12.492Z
tags: ["ai-coding", "general-programming", "tdd"]
reading_time: 12
upvotes: 0
comments: 0
language: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Design-First Collaboration

**[Martin Fowler](https://daily.dev/sources/mafo)** · 12 min read · 0 upvotes · 0 comments

## Summary

AI coding assistants skip the design phase and jump straight to implementation, embedding invisible design decisions in generated code. This creates an 'Implementation Trap' where developers must reverse-engineer architecture, scope, and contracts from hundreds of lines of code simultaneously. A structured five-level conversation pattern — Capabilities, Components, Interactions, Contracts, Implementation — reconstructs the whiteboarding process that human pairs do naturally. No code is written until Level 5 is approved. A real-world notification service example shows how this caught an unnecessary abstraction over BullMQ at the Components level, and how agreed contracts enabled TDD before any implementation. The framework scales to task complexity and compounds with upfront knowledge priming about the project's tech stack and conventions.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://martinfowler.com/articles/reduce-friction-ai/design-first-collaboration.html>

## Similar posts on daily.dev

- [Design Patterns Were Always Second Priority. AI Just Removed the Excuse](https://daily.dev/posts/design-patterns-were-always-second-priority-ai-just-removed-the-excuse-6v0y9objf) · Medium · 0 upvotes · 0 comments
- [How I Use AI Before the First Line of Code](https://daily.dev/posts/how-i-use-ai-before-the-first-line-of-code-bizabx3ot) · Atomic Spin · 0 upvotes · 0 comments
- [From LLM-First to Code-First: Lessons From Building Enterprise AI Systems](https://daily.dev/posts/from-llm-first-to-code-first-lessons-from-building-enterprise-ai-systems-ubac32c6o) · SD Times · 1 upvotes · 0 comments
- [AI Can Build the Interface Now. That Means Design Matters More, Not Less.](https://daily.dev/posts/ai-can-build-the-interface-now-that-means-design-matters-more-not-less--0rroywjcs) · Medium · 1 upvotes · 0 comments

---

Tags: [#ai-coding](https://daily.dev/tags/ai-coding), [#general-programming](https://daily.dev/tags/general-programming), [#tdd](https://daily.dev/tags/tdd)

[View this post on daily.dev](https://daily.dev/posts/design-first-collaboration-wqf2bwpxe)
