Vibe Coding Principal Consultant @ Thinktecture AG Focus Developer Productivity & Gen AI MVP Developer & Web Technologies Socials linktr.ee/daniel_sogl
Limitations Of AI Coding Agents Context Management "Lost in the middle" despite 200K+ token windows Multi-File Coordination No real-time dependency graphs, missed instructions Silent Failures Removes safety checks, generates fake data silently Architecture Decisions Sees structure but doesn't understand trade-offs Enterprise Context Missing implicit business logic and unwritten rules
End Of Vibe Coding Spec Driven Development SDD is a development methodology where detailed specifications drive the entire development process — especially the collaboration with AI coding agents. Spec First Write the specification before any code AI-Optimized Specs give AI agents full context upfront Iterative Specs evolve alongside the project Consistency Uniform architecture across all features 1 2 3 4
Relates to TDD and BDD SDD What & Why Intent Level Human writes intent BDD System Behavior Feature Level Given / When / Then TDD Code Correctness Unit Level Red / Green / Refactor
5 (lightweight) 8 (comprehensive) Workflow proposal → apply → archive specify → plan → task → implement GitHub Stars 21k 66k Best For Brownfield (1 → n) Greenfield (0 → 1) Spec Driven Development The End Of Vibe Coding OpenSpec vs. GitHub Spec Kit Hybrid Approach: Use Spec Kit for greenfield, then switch to OpenSpec for maintenance
Practical Implementation 250k Developers in 3 Months AWS Kiro - The New Stack 94% Satisfaction Score Delta Airlines (re:Invent) 16k+ Spec Kit Stars in Week 1 GitHub (Sept 2025) Specs are the new code. 80-90% of our work as programmers is structured communication Sean Grove, OpenAI Sources: AWS Kiro, AWS re:invent (2025), The New Code – AI Engineer (2025)
tech stack, conventions, boundaries • Lives in repo root: CONSTITUTION.md or .openspec/constitution.md 2. Specs Directory • .specs/ or .openspec/specs/ — one Markdown file per feature • Plans & tasks generated alongside each spec 3. AI Agent Config • CLAUDE.md, .github/copilot-instructions.md, .cursorrules • Points agent to constitution & spec workflow Spec Driven Development The End Of Vibe Coding Setting Up SDD
Of Vibe Coding Anatomy of a Spec A spec is a structured Markdown document that captures the three pillars every AI agent needs to succeed. Intent What should be built and why? Describes the goal, user story, and motivation behind the feature. Constraints Tech stack, patterns, and boundaries the agent must follow. Prevents architectural drift. Acceptance Criteria Concrete, testable conditions that define done. The agent validates its own output against these. 1 2 3
building and why? Business context for the AI agent Requirements & User Stories • Functional requirements, user flows, edge cases — be explicit Technical Constraints • APIs, libraries, patterns to use (and to avoid!) Acceptance Criteria • Testable conditions that define "done" — the AI's exit criteria Non-Functional Requirements • Performance, security, accessibility — the implicit rules made explicit Spec Driven Development The End Of Vibe Coding Spec Structure
Coding Writing Good Specs ✓ Do ✗ Don't • Be specific about behavior and edge cases • Define explicit acceptance criteria • List constraints: what NOT to do • Reference existing code patterns • Include error handling expectations • Describe implementation details • Write vague requirements ("make it fast") • Assume the agent knows your codebase • Mix multiple features in one spec • Skip non-functional requirements
Coding Constitution Design & Development I. Test-First with BDD / Gherkin II. Domain-Driven Design III. SOLID Principles IV. Mobile-First & Responsive V. API-First Design VI. Ubiquitous Language Architecture & Quality VII. Vertical Slice Architecture VIII. Definition of Done IX. No Magic Numbers & No Primitives X. Observability by Default XI. Security by Design XII. Dependency Management Mandatory Workflow Specify → Contract → Plan → Tasks → Red → Green → Refactor → Review
I want a SPA to search and explore Pokémon.” Search & Discovery • Debounced search bar, responsive grid (5/3/2 cols), infinite scroll Pokémon Cards • Image, name, base stats (HP, Attack, Defense, Sp. Atk, Sp. Def, Speed) Detail View • Full profile: types, abilities, height, weight, stats as bar chart Loading & Error Handling • Skeleton placeholders while loading; user-friendly error messages Spec Driven Development The End Of Vibe Coding The Spec
stack & architecture from the prompt • Next.js 16 + pnpm, Tailwind CSS v4 + shadcn/ui • TanStack Query for data fetching, caching & infinite scroll • Vitest (unit) + Playwright (e2e), Biome (lint & format) • Lefthook pre-commit hooks, GitHub Actions CI pipeline What the AI generates from this • Component tree, data flow & PokéAPI integration strategy • File structure, module boundaries & edge case handling • CI jobs: format check, lint, build, unit tests, e2e tests You review and approve the plan before any code is written. Spec Driven Development The End Of Vibe Coding The Plan
work units • Each task is a single, focused unit of work (one file, one concern) • Dependencies between tasks are explicit (task 3 needs task 1 + 2) • Independent tasks can run in parallel across agents Each task includes • Clear description of what to implement • Affected files and acceptance criteria • Test commands the agent runs to self-validate Spec Driven Development The End Of Vibe Coding The Tasks
spec • Works through tasks sequentially, respecting dependencies • Runs test commands after each task to self-validate • Checks off acceptance criteria as it goes The result • All tests green — spec fully validated • Working feature, consistent architecture, no drift • Ready for human code review Spec Driven Development The End Of Vibe Coding Implementation
Development The End Of Vibe Coding Live Coding Feed Spec Hand Pokémon spec to the AI agent Watch Execution Agent plans, creates tasks, implements Review Output Review generated code against the spec All Green Tests pass, working Pokémon app LIVE DEMO 1 2 3 4
Excels Greenfield Projects Spec becomes single source of truth Complex Features Agents need structure to avoid breaking contracts Multi-Agent Coordination Specs prevent conflicting implementations Compliance & Audit Specs as traceable control surfaces Rule of thumb: If it takes 2+ prompts to explain, write a spec.
Coding When NOT to Use SDD Small Bug Fixes Spec overhead exceeds the change Rapid Prototyping Uncertain requirements — specs need clarity UI-Heavy / Creative Work Visual design needs iteration, not specs One-Off Scripts Throwaway code — just vibe code it Rule of thumb: If you can explain the task in one sentence, skip the spec.
rate on realistic tasks • SDD shifts from 'code as truth' to 'intent as truth' • Specifications become executable through AI • Choose your tool: OpenSpec (brownfield) vs Spec Kit (greenfield) • Industry convergence: structured intent is becoming standard practice Key Takeaways The End Of Vibe Coding Spec Driven Development