Vibe Engineering: When Intuition Meets Discipline in Software Development

In February 2025, Andrej Karpathy, former director of AI at Tesla and a prominent figure in the machine learning community, dropped a bombshell on Twitter that would reshape how millions of developers think about code. “There's a new kind of coding I call 'vibe coding,'” he wrote, “where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” The post ignited a firestorm. Within weeks, vibe coding became a cultural phenomenon, earning recognition on the Merriam-Webster website as a “slang & trending” term. By year's end, Collins Dictionary had named it Word of the Year for 2025.

But here's the twist: whilst tech Twitter debated whether vibe coding represented liberation or chaos, something more interesting was happening in actual development shops. Engineers weren't choosing between intuition and discipline. They were synthesising them. Welcome to vibe engineering, a practice that asks a provocative question: what if the real future of software development isn't about choosing between creative flow and rigorous practices, but about deliberately blending them into something more powerful than either approach alone?

The Vibe Revolution

To understand vibe engineering, we first need to understand what vibe coding actually is. In its purest form, vibe coding describes a chatbot-based approach where the developer describes a project to a large language model, which generates code based on the prompt. The developer doesn't review or edit the code, but solely uses execution results to evaluate it, asking the LLM for improvements in an iterative loop.

This represents a radical departure from traditional development. Unlike AI-assisted coding or pair programming, the human developer avoids examination of the code, accepts AI-suggested completions without human review, and focuses more on iterative experimentation than code correctness or structure. It's programming by outcome rather than by understanding, and it's far more widespread than you might think.

By March 2025, Y Combinator reported that 25% of startup companies in its Winter 2025 batch had codebases that were 95% AI-generated. Jared Friedman, YC's managing partner, emphasised a crucial point: “It's not like we funded a bunch of non-technical founders. Every one of these people is highly technical, completely capable of building their own products from scratch. A year ago, they would have built their product from scratch, but now 95% of it is built by an AI.”

The economic results were staggering. The Winter 2025 batch grew 10% per week in aggregate, making it the fastest-growing cohort in YC history. As CEO Garry Tan explained, “What that means for founders is that you don't need a team of 50 or 100 engineers. You don't have to raise as much. The capital goes much longer.”

Real companies were seeing real results. Red Barn Robotics developed an AI-driven weeding robot called “The Field Hand” that operates 15 times faster than human labour at a fraction of traditional costs, securing £3.9 million in letters of intent for the upcoming growing season. Deepnight utilised AI to develop military-grade night vision software, booking £3.6 million in contracts with clients including the U.S. Army and Air Force within a year of launching. Delve, a San Francisco-based startup using AI agents for compliance evidence collection, launched with a revenue run rate of several million pounds and over 100 customers, all with a modest £2.6 million in funding.

These weren't weekend projects. These were venture-backed companies building production systems that customers were actually paying for, and doing it with codebases they fundamentally didn't understand at a granular level.

The Psychology of Flow

The appeal of vibe coding isn't just about speed or efficiency. It taps into something deeper: the psychological state that makes programming feel magical in the first place. Psychologist Mihaly Csikszentmihalyi spent decades studying what he called “flow,” describing it as “the state in which people are so involved in an activity that nothing else seems to matter.” His research found that flow produces the highest levels of creativity, engagement, and satisfaction. Studies at Harvard later quantified this, finding that people who experience flow regularly report 500% more productivity and three times greater life satisfaction.

Software developers have always had an intimate relationship with flow. Many developers spend a large part of their day in this state, often half-jokingly saying they love their work so much they can't believe they're getting paid for something so fun. The flow state arises when perceived skills match the perceived challenges of the task: too easy and you get bored; too difficult and you become anxious. The “flow channel” is that sweet spot of engagement where hours disappear and elegant solutions emerge seemingly by themselves.

But flow has always been fragile. Research by Gloria Mark shows that it takes an average of 23 minutes and 15 seconds to fully regain focus after an interruption. For developers, this means a single “quick question” from a colleague can destroy nearly half an hour of productive coding time. For complex coding tasks, this recovery time extends to 45 minutes, according to research from Carnegie Mellon. Studies show productivity decreases up to 40% in environments with frequent interruptions, and interrupted work contains 25% more errors than uninterrupted work, according to research from the University of California, Irvine.

This is where vibe coding's appeal becomes clear. By offloading the mechanical aspects of code generation to an AI, developers can stay in a higher-level conceptual space, describing what they want rather than how to implement it. They can maintain flow by avoiding the context switches that come with looking up documentation, debugging syntax errors, or implementing boilerplate code. As one framework describes it, “Think of vibe coding like jazz improvisation: structured knowledge meets spontaneous execution.”

According to Stack Overflow's 2024 Developer Survey, 63% of professional developers were already using AI in their development process, with another 14% planning to start soon. The top three AI tools were ChatGPT (82%), GitHub Copilot (41%), and Google Gemini (24%). More than 97% of respondents to GitHub's AI in software development 2024 survey said they had used AI coding tools at work. By early 2025, over 15 million developers were using GitHub Copilot, representing a 400% increase in just 12 months.

The benefits were tangible. Stack Overflow's survey found that 81% of developers cited increasing productivity as the top benefit of AI tools. Those learning to code listed speeding up their learning as the primary advantage (71%). A 2024 study by GitHub found that developers using AI pair programming tools produced code with 55% fewer bugs than those working without AI assistance.

When Vibes Meet Reality

But by September 2025, the narrative was shifting. Fast Company reported that the “vibe coding hangover” was upon us, with senior software engineers citing “development hell” when working with AI-generated vibe-code. The problems weren't subtle.

A landmark Veracode study in 2025 analysed over 100 large language models across 80 coding tasks and found that 45% of AI-generated code introduces security vulnerabilities. These weren't minor bugs: many were critical flaws, including those in the OWASP Top 10. In March 2025, a vibe-coded payment gateway approved £1.6 million in fraudulent transactions due to inadequate input validation. The AI had copied insecure patterns from its training data, creating a vulnerability that human developers would have caught during code review.

The technical debt problem was even more insidious. Over 40% of junior developers admitted to deploying AI-generated code they didn't fully understand. Research showed that AI-generated code tends to include 2.4 times more abstraction layers than human developers would implement for equivalent tasks, leading to unnecessary complexity. Forrester forecast an “incoming technical debt tsunami over the next 2 years” due to advanced AI coding agents.

AI models also “hallucinate” non-existent software packages and libraries. Commercial models do this 5.2% of the time, whilst open-source models hit 21.7%. Malicious actors began exploiting this through “slopsquatting,” creating fake packages with commonly hallucinated names and hiding malware inside. Common risks included injection vulnerabilities, cross-site scripting, insecure data handling, and broken access control.

The human cost was equally concerning. Companies with high percentages of AI-generated code faced challenges around understanding and accountability. Without rigorous preplanning, architectural oversight, and experienced project management, vibe coding introduced vulnerabilities, compliance gaps, and substantial technical debt. Perhaps most worryingly, the adoption of generative AI had the potential to stunt the growth of both junior and senior developers. Senior developers became more adept at leveraging AI and spent their time training AI instead of training junior developers, potentially creating a future talent gap.

Even Karpathy himself had acknowledged the limitations, noting that vibe coding works well for “throwaway weekend projects.” The challenge for 2025 and beyond was figuring out where that line falls. Cyber insurance companies began adjusting their policies to account for AI-generated code risks, with some insurers requiring disclosure of AI tool usage, implementing higher premiums for companies with high percentages of AI-generated code, and mandating security audits specifically focused on AI-generated vulnerabilities.

The Other Side of the Equation

Whilst vibe coding captured headlines, the foundations of professional software engineering remained remarkably consistent. Code reviews continued to act as quality gates before changes were merged, complementing other practices like testing and pair programming. The objective of code review has always been to enhance the quality, maintainability, stability, and security of software through systematic analysis.

Modern code review follows clear principles. Reviews should be focused: a comprehensive Cisco study found that once developers reviewed more than 200 lines of code, their ability to identify defects waned. Most bugs are found in the first 200 lines, and reviewing more than 400 lines can have an adverse impact on bug detection. Assessing the architectural impact of code is critical: code that passes all unit tests and follows style guides can still cause long-term damage if no one evaluated its architectural impact.

Automated checks allow reviewers to focus on more important topics such as software design, architecture, and readability. Checks can include tests, test coverage, code style enforcements, commit message conventions, and static analysis. Commonly used automated code analysis and monitoring tools include SonarQube and New Relic, which inspect code for errors, track error rates and resource usage, and present metrics in clear dashboards.

Organisations with better code reviews have hard rules around no code making it to production without review, just as business logic changes don't make it to production without automated tests. These organisations have learned that the cost of cutting corners isn't worth it, and they have processes for expedited reviews for urgent cases. Code reviews are one of the best ways to improve skills, mentor others, and learn how to be a more efficient communicator.

Testing practices have evolved to become even more rigorous. During test-driven code reviews, the reviewer starts by reviewing the test code before the production code. The rationale behind this approach is to use the test cases as use cases that explain the code. One of the most overlooked yet high-impact parts of code review best practice is assessing the depth and relevance of tests: not just whether they exist, but whether they truly validate the behaviour and edge cases of the code.

Architecture considerations remain paramount. In practice, a combination of both top-down and bottom-up approaches is often used. Starting with a top-down review helps understand the system's architecture and major components, setting the stage for a more detailed, bottom-up review of specific areas. Performance and load testing tools like Apache JMeter, Gatling, and Simulink help detect design problems by simulating system behaviour.

These practices exist for a reason. They represent decades of accumulated wisdom about how to build software that doesn't just work today, but continues to work tomorrow, can be maintained by teams that didn't write it originally, and operates securely in hostile environments.

From Vibe Coding to Context Engineering

By late 2025, a significant shift was occurring in how AI was being used in software engineering. A loose, vibes-based approach was giving way to a systematic approach to managing how AI systems process context. This evolution had a name: context engineering.

As Anthropic described it, “After a few years of prompt engineering being the focus of attention in applied AI, a new term has come to prominence: context engineering. Building with language models is becoming less about finding the right words and phrases for your prompts, and more about answering the broader question of 'what configuration of context is most likely to generate our model's desired behaviour?'”

In simple terms, context engineering is the science and craft of managing everything around the AI prompt to guide intelligent outcomes. This includes managing user metadata, task instructions, data schemas, user intent, role-based behaviours, and environmental cues that influence model behaviour. It represents the natural progression of prompt engineering, referring to the set of strategies for curating and maintaining the optimal set of information during LLM inference.

The shift was driven by practical necessity. As AI agents run longer, the amount of information they need to track explodes: chat history, tool outputs, external documents, intermediate reasoning. The prevailing “solution” had been to lean on ever-larger context windows in foundation models. But simply giving agents more space to paste text couldn't be the single scaling strategy. The limiting factor was no longer the model; it was context: the structure, history, and intent surrounding the code being changed.

MIT Technology Review captured this evolution in a November 2025 article: “2025 has seen a real-time experiment playing out across the technology industry, one in which AI's software engineering capabilities have been put to the test against human technologists. And although 2025 may have started with AI looking strong, the transition from vibe coding to what's being termed context engineering shows that whilst the work of human developers is evolving, they nevertheless remain absolutely critical.”

Context engineering wasn't about rejecting AI or returning to purely manual coding. It was about treating context as an engineering surface that required as much thought and discipline as the code itself. Developer-focused tools embraced this, with platforms like CodeConductor, Windsurf, and Cursor designed to automatically extract and inject relevant code snippets, documentation, or history into the model's input.

The challenge that emerged was “agent drift,” described as the silent killer of AI-accelerated development. It's the agent that brilliantly implements a feature whilst completely ignoring the established database schema, or new code that looks perfect but causes a dozen subtle, unintended regressions. The teams seeing meaningful gains treated context as an engineering surface, determining what should be visible to the agent, when, and in what form.

Importantly, context engineering recognised that more information wasn't always better. As research showed, AI can be more effective when it's further abstracted from the underlying system because the solution space becomes much wider, allowing better leverage of the generative and creative capabilities of AI models. The goal wasn't to feed the model more tokens; it was to provide the right context at the right time.

Vibe Engineering in Practice

This is where vibe engineering emerges as a distinct practice. It's not vibe coding with a code review tacked on at the end. It's not traditional engineering that occasionally uses AI autocomplete. It's a deliberate synthesis that borrows from both approaches, creating something genuinely new.

In vibe engineering, the intuition and flow of vibe coding are preserved, but within a structured framework that maintains the essential benefits of engineering discipline. The developer still operates at a high conceptual level, describing intent and iterating rapidly. The AI still generates substantial amounts of code. But the process is fundamentally different from pure vibe coding in several crucial ways.

First, vibe engineering treats AI-generated code as untrusted by default. Just because it runs doesn't mean it's safe, correct, or maintainable. Every piece of generated code passes through the same quality gates as human-written code: automated testing, security scanning, code review, and architectural assessment. The difference is that these gates are designed to work with the reality of AI-generated code, catching the specific patterns of errors that AI systems make.

Second, vibe engineering emphasises spec-driven development. As described in research on improving AI coding quality, “Spec coding puts specifications first. It's like drafting a detailed blueprint before building, ensuring every component aligns perfectly. Here, humans define the 'what' (the functional goals of the code) and the 'how' (rules like standards, architecture, and best practices), whilst the AI handles the heavy lifting (code generation).”

This approach preserves flow by keeping the developer in a high-level conceptual space, but ensures that the generated code aligns with team standards, architectural patterns, and security requirements. According to research, 65% of developers using AI say the assistant “misses relevant context,” and nearly two out of five developers who rarely see style-aligned suggestions cite this as a major blocker. Spec-driven development addresses this by making context explicit upfront.

Third, vibe engineering recognises that different kinds of code require different approaches. As one expert put it, “Don't use AI to generate a whole app. Avoid letting it write anything critical like auth, crypto or system-level code; build those parts yourself.” Vibe engineering creates clear boundaries: AI is ideal for testing new ideas, creating proof-of-concept applications, generating boilerplate code, and implementing well-understood patterns. But authentication, cryptography, security-critical paths, and core architectural components remain human responsibilities.

Fourth, vibe engineering embeds governance and quality control throughout the development process. Sonar's AI Code Assurance, for example, measures quality by scanning for bugs, code smells, vulnerabilities, and adherence to established coding standards. It provides developers with actionable feedback and scores on various metrics, highlighting areas that need attention to meet best practice guidelines. The solution also tracks trends in code quality over time, making it possible for teams to monitor improvements or spot potential regressions.

Research shows that teams with strong code review processes experience quality improvements when using AI tools, whilst those without see a decline in quality. This amplification effect makes thoughtful implementation essential. Metrics like CodeBLEU and CodeBERTScore surpass linters by analysing structure, intent, and functionality, allowing teams to achieve scalable, repeatable, and nuanced assessment pipelines for AI-generated code.

Fifth, vibe engineering prioritises developer understanding over raw productivity. Whilst AI can generate code faster than humans can type, vibe engineering insists that developers understand the generated code before it ships to production. This doesn't mean reading every line character by character, but it does mean understanding the architectural decisions, the security implications, and the maintenance requirements. Tools and practices are designed to facilitate this understanding: clear documentation generation, architectural decision records, and pair review sessions where junior and senior developers examine AI-generated code together.

Preserving What Makes Development Human

Perhaps the most important aspect of vibe engineering is how it handles the human dimension of software development. Developer joy, satisfaction, and creative flow aren't nice-to-haves; they're fundamental to building great software. Research consistently shows that happiness, joy, and satisfaction all lead to better productivity. When companies chase productivity without considering joy, the result is often burnout and lower output.

Stack Overflow's research on what makes developers happy found that salary (60%), work-life balance (58%), flexibility (52%), productivity (52%), and growth opportunities (49%) were the top five factors. Crucially, feeling unproductive at work was the number one factor (45%) causing unhappiness, even above salary concerns (37%). As one developer explained, “When I code, I don't like disruptions in my flow state. Constantly stopping and starting makes me feel unproductive. We all want to feel like we're making a difference, and hitting roadblocks at work just because you're not sure where to find answers is incredibly frustrating.”

Vibe engineering addresses this by removing friction without removing challenge. The AI handles the tedious parts: boilerplate code, repetitive patterns, looking up documentation for APIs used infrequently. This allows developers to stay in flow whilst working on genuinely interesting problems: architectural decisions, user experience design, performance optimisation, security considerations. The AI becomes what one researcher described as “a third collaborator,” supporting idea generation, debugging, and documentation, whilst human-to-human collaboration remains central.

Atlassian demonstrated this approach by asking developers to allocate 10% of their time for reducing barriers to happier, more productive workdays. Engineering leadership recognised that developers are the experts on what's holding them back. Identifying and eliminating sources of friction such as flaky tests, redundant meetings, and inefficient tools helped protect developer flow and maximise productivity. The results were dramatic: Atlassian “sparked developer joy” and set productivity records.

Vibe engineering also addresses the challenge of maintaining developer growth and mentorship. The concern that senior developers will spend their time training AI instead of training junior developers is real and significant. Vibe engineering deliberately structures development practices to preserve learning opportunities: pair programming sessions that include AI as a third participant rather than a replacement for human pairing; code review processes that use AI-generated code as teaching opportunities; architectural discussions that explicitly evaluate AI suggestions against alternatives.

Research on pair programming shows that two sets of eyes catch mistakes early, with studies showing pair-programmed code has up to 15% fewer defects. A meta-analysis found pairs typically consider more design alternatives than programmers working alone, arrive at simpler, more maintainable designs, and catch design defects earlier. Vibe engineering adapts this practice: one developer interacts with the AI whilst another reviews the generated code and guides the conversation, creating a three-way collaboration that preserves the learning benefits of traditional pair programming.

Does Vibe Engineering Scale?

The economic case for vibe engineering is compelling but nuanced. Pure vibe coding promises dramatic cost reductions: fewer engineers, faster development, lower capital requirements. The Y Combinator results demonstrate this isn't just theory. But the hidden costs of technical debt, security vulnerabilities, and maintenance burden can dwarf the initial savings.

Vibe engineering accepts higher upfront costs in exchange for sustainable long-term economics. Automated security scanning, comprehensive testing infrastructure, and robust code review processes all require investment. Tools for AI code assurance, quality metrics, and context engineering aren't free. But these costs are predictable and manageable, unlike the potentially catastrophic costs of security breaches, compliance failures, or systems that become unmaintainable.

The evidence suggests this trade-off is worthwhile. Research from Carnegie Mellon shows developers juggling five projects spend just 20% of their cognitive energy on real work. Context switching costs IT companies an average of £39,000 per developer each year. By reducing friction and enabling flow, vibe engineering can recapture substantial amounts of this lost productivity without sacrificing code quality or security.

The tooling ecosystem is evolving rapidly to support vibe engineering practices. In industries with stringent regulations such as finance, automotive, or healthcare, specialised AI agents are emerging to transform software efficiently, aligning it precisely with complex regulatory standards and requirements. Code quality has evolved from informal practices into formalised standards, with clear guidelines distinguishing best practices from mandatory regulatory requirements.

AI adoption among software development professionals has surged to 90%, marking a 14% increase from the previous year. AI now generates 41% of all code, with 256 billion lines written in 2024 alone. However, a randomised controlled trial found that experienced developers take 19% longer when using AI tools without proper process and governance. This underscores the importance of vibe engineering's structured approach: the tools alone aren't enough; it's how they're integrated into development practices that matters.

The Future of High-Quality Software Development

If vibe engineering represents a synthesis of intuition and discipline, what does the future hold? Multiple signals suggest this approach isn't a temporary compromise but a genuine glimpse of how high-quality software will be built in the coming decade.

Microsoft's chief product officer for AI, Aparna Chennapragada, sees 2026 as a new era for alliances between technology and people: “If recent years were about AI answering questions and reasoning through problems, the next wave will be about true collaboration. The future isn't about replacing humans. It's about amplifying them.” GitHub's chief product officer, Mario Rodriguez, predicts 2026 will bring “repository intelligence”: AI that understands not just lines of code but the relationships and history behind them.

By 2030, all IT work is forecast to involve AI, with CIOs predicting 75% will be human-AI collaboration and 25% fully autonomous AI tasks. A survey conducted in July 2025, involving over 700 CIOs, indicates that by 2030, none of the IT workload will be performed solely by humans. Software engineering will be less about writing code and more about orchestrating intelligent systems. Engineers who adapt to these changes (embracing AI collaboration, focusing on design thinking, and staying curious about emerging technologies) will thrive.

Natural language programming will go mainstream. Engineers will describe features in plain English, and AI will generate production-ready code that other humans can easily understand and modify. According to the World Economic Forum, AI will create 170 million new jobs whilst displacing 92 million by 2030: a net creation of 78 million positions. However, the transition requires massive reskilling efforts, as workers with AI skills command a 43% wage premium.

The key insight is that the most effective developers of 2025 are still those who write great code, but they are increasingly augmenting that skill by mastering the art of providing persistent, high-quality context. This signals a change in what high-level development skills look like. The developer role is evolving from manual coder to orchestrator of AI-driven development ecosystems.

Vibe engineering positions developers for this future by treating AI as a powerful but imperfect collaborator rather than a replacement or a simple tool. It acknowledges that intuition and creative flow are essential to great software, but so are architecture, testing, and review. It recognises that AI can dramatically accelerate development, but only when embedded within practices that ensure quality, security, and maintainability.

Not Whether, But How

The question posed at the beginning (can intuition-led development coexist with rigorous practices without diminishing either?) turns out to have a clear answer: not only can they coexist, but their synthesis produces something more powerful than either approach alone.

Pure vibe coding, for all its appeal and early success stories, doesn't scale to production systems that must be secure, maintainable, and reliable. The security vulnerabilities, technical debt, and accountability gaps are too severe. Traditional engineering, whilst proven and reliable, leaves significant productivity gains on the table and risks losing developers to the tedium and friction that AI tools can eliminate.

Vibe engineering offers a third way. It preserves the flow state and rapid iteration that makes vibe coding appealing whilst maintaining the quality gates and architectural rigour that make traditional engineering reliable. It treats AI as a powerful collaborator that amplifies human capabilities rather than replacing human judgment. It acknowledges that different kinds of code require different approaches, and creates clear boundaries for where AI excels and where humans must remain in control.

The evidence from Y Combinator startups, Microsoft's AI research, Stack Overflow's developer surveys, and countless development teams suggests that this synthesis isn't just possible; it's already happening. The companies seeing the best results from AI-assisted development aren't those using it most aggressively or most conservatively. They're the ones who've figured out how to blend intuition with discipline, speed with safety, and automation with understanding.

As we project forward to 2030, when 75% of IT work will involve human-AI collaboration, vibe engineering provides a framework for making that collaboration productive rather than chaotic. It offers a path where developers can experience the joy and flow that drew many of them to programming in the first place, whilst building systems that are secure, maintainable, and architecturally sound.

The future of high-quality software development isn't about choosing between the creative chaos of vibe coding and the methodical rigour of traditional engineering. It's about deliberately synthesising them into practices that capture the best of both worlds. That synthesis, more than any specific tool or technique, may be the real innovation that defines how software is built in the coming decade.

References & Sources


Tim Green

Tim Green UK-based Systems Theorist & Independent Technology Writer

Tim explores the intersections of artificial intelligence, decentralised cognition, and posthuman ethics. His work, published at smarterarticles.co.uk, challenges dominant narratives of technological progress while proposing interdisciplinary frameworks for collective intelligence and digital stewardship.

His writing has been featured on Ground News and shared by independent researchers across both academic and technological communities.

ORCID: 0009-0002-0156-9795 Email: tim@smarterarticles.co.uk

Discuss...