- nnenna hacks
- Posts
- What is Viable Coding?
What is Viable Coding?
The Practice That's Saving Enterprise Development Teams From AI Chaos

Dex finds you jobs at the hottest AI startups
Work with the most well-connected recruiter in the world:
Scours 10,000+ jobs
Matches you with top tier companies
No form, no cv required
Totally free
Stop me if this sounds familiar: Your team started using AI for code generation six months ago. Initially, productivity seemed to skyrocket. Developers were shipping features faster than ever. Management was thrilled. Then the bugs started appearing. Security vulnerabilities crept in. Code reviews became nightmares of trying to understand AI-generated logic that nobody on the team actually wrote.
Welcome to the messy reality of "vibe coding" — the chaotic, cross-your-fingers approach to AI development that's plaguing enterprise teams worldwide.
But there's a better way. It's called Viable Coding, and it's the systematic methodology that's transforming how serious development teams integrate AI into their workflows without sacrificing quality, security, or sanity.
The Problem: When AI Becomes Your Biggest Technical Debt
Swizec Teller and many others witnessed my talk at Commit Your Code in Dallas, Texas this past week. The audience resonated with my message. And it’s something that has become incredibly close to my heart this year.
My talk was titled “From AI Chaos to Production Ready: Using AI Agents to Improve Your Code Quality”.
Let's be brutally honest about where most teams stand with AI development today. You're probably experiencing some version of this cycle:
Developer asks an AI code assistant to generate a function
Applies the code without full understanding
Code passes basic tests
Months later, mysterious bugs surface in production
Team spends more time debugging AI-generated code than it saved initially
This is vibe coding in action: making development decisions based on gut feelings rather than systematic processes. It feels productive in the short term but creates compounding problems that teams are only beginning to understand.

When that AI-generated authentication function you merged three months ago becomes the entry point for a security breach, you’ve got a problem. When your "faster" development cycle actually slows down because it’s more difficult to understand the nuances of the codebase anymore, this slows things down.
Enter Viable Coding: AI for Software Developers (That Actually Works)
At its core, “viable coding” is the discipline of integrating AI agents and workflows into software development in a way that:
Enhances rather than replaces your proven development processes
Provides consistent, predictable outcomes instead of probabilistic experiments
Scales across enterprise organizations with proper governance and security
Maintains or improves code quality while accelerating development velocity
Integrates seamlessly with existing team practices rather than disrupting them
An engineering manager at Qodo used this term in an internal meeting and I immediately latched on to it. Since then, I’ve taken it on the road and began battle-testing this phrase as a direct antithesis to vibe coding for software engineers.
The Five Pillars That Make Viable Coding Work

The presentation slide that gets screenshot the most 😀
1. Context-Aware by Design
Typical AI code assistant operate with fragmented knowledge. They don't know your multi-repo structures, your team's coding standards, or the architectural decisions that define your system.
When using AI code tools that are built on the foundation of incredibly strong context engines, they emphasizes deep understanding of organizational context. When you ask an AI system "How should I implement user authentication?", it doesn't return generic OAuth tutorials. It analyzes your existing auth patterns, understands your security requirements, and provides recommendations that actually align with how your org builds software.
2. Workflow-Integrated Intelligence
Instead of standalone AI tools that developers use sporadically, specialized agents are orchestrated across your entire software development lifecycle, from initial planning through deployment.
These are intelligent systems that understand the relationships between different phases of development and can reason about architectural impact before you write a single line of code.
3. Risk-Assessed and Systematic
Every AI integration point is evaluated through systematic frameworks. You're not just asking "Can AI help here?" but "What are the specific risks and benefits, and how do we measure success?"
This means having clear criteria for when to use AI generation versus human-written code, established patterns for code review of AI outputs, and measurable quality gates that prevent problematic code from reaching production.
4. Enterprise-Grade Security and Governance
Viable Coding treats security, compliance, and governance as core requirements from day one, not afterthoughts. This includes:
Context-aware vulnerability detection that understands your specific threat model
Complete audit trails for all AI-generated changes
Compliance validation at every step of the development process
Integration with existing security toolchains
5. Measurable and Accountable
Success is measured by quantifiable metrics: code quality improvements, security vulnerability reduction, development velocity increases, and technical debt management. And qualitative metrics include developer confidence and satisfaction on the job.
The Viable Coding Maturity Spectrum
Most teams don't jump directly from vibe coding to full AI-native development. Viable Coding exists on a maturity spectrum:
Levels 1-2: Foundation Building Transitioning from chaotic AI usage to structured, repeatable practices. Teams establish basic governance, security protocols, and quality gates for AI-generated code.
Levels 3-4: Systematic Integration
Implementing context-aware development workflows and specialized AI agents for different aspects of the development lifecycle. Code reviews become AI-assisted but human-supervised.
Level 5: AI-Native Transformation Achieving full organizational transformation where AI agents handle routine tasks while humans focus on architectural decisions, complex problem-solving, and strategic technical direction.
Why Enterprise Teams Are Making This Transition
The shift from vibe to viable coding is happening out of necessity. Production systems built on vibe coding simply don't scale. Let’s dive into this more:
Short-term speed gains from vibe coding plateau quickly when technical debt accumulates. You spend more time debugging mysterious AI-generated code than you saved initially.
Viable coding compounds its benefits over time because it's built on principled foundations. The systematic approach means AI becomes more helpful as it learns your organization's patterns and preferences.
Security vulnerabilities from ad-hoc AI usage are becoming genuine business risks. Teams need structured approaches to ensure AI-generated code meets their security standards.
Enterprise compliance requirements simply can't be met with "we copied some code from Claude and it seemed to work." Viable Coding provides the audit trails and governance frameworks that enterprises actually need.
The Real Problem is Not AI or Code - It’s Human Impact
The deeper, more human problem is that software development is so much bigger than generating blocks of code and giving the thumbs up to ship it to production. It’s a career encompassing a lot of critical thinking, collaboration across teams and roles in organizations, and long-term reputation.
No one would want to be associated with AI slop on the job. This is a high-stakes environment with real, multi-layered risks.
Yet, we also want to build with speed and quality, two concepts that naturally juxtapose in real-world settings. I do not ignore this in my interpretation of viable coding and what it means on a human, psychological level. That’s why this positioning is important to me.
Now, let’s talk about the practical mindset and workflow shifts for embedding agentic AI code tools into a developer’s typical workflow.
What Viable Coding Looks Like in Practice

Practical mindset shift for AI in each stage
Instead of individual developers randomly asking AI to vomit out code frivolously, viable coding creates systematic workflows:
Before writing code: AI agents analyze architectural impact across multiple repositories, suggest optimal implementation approaches, and identify potential integration challenges.

Chatting with a Plan Agent in my code editor
During development: Context-aware code generation that understands your existing patterns, coding standards, and architectural constraints.

A workflow built in to Qodo that checks for best practices alignment according to existing code standards and architectural patterns in your codebase.
During review: AI-assisted code reviews that catch issues human reviewers consistently miss while maintaining focus on architectural and design decisions.

A /review workflow output on your local machine, prior to making an official pull request for other engineers to review.

Automatic pull request reviews in Github, right where you work and review code.
During testing: Comprehensive test suite generation that understands your existing patterns and edge cases, not just generic testing approaches.

Software test implementation plans
During deployment: Orchestrated workflows that maintain compliance standards while accelerating reliable delivery.
Getting Started: Your First Steps Toward Viable Coding
Start with assessment: Before adding more AI tools, audit how your team currently uses AI. Identify the gaps between vibe and viable coding in your organization.
Establish governance frameworks: Create clear guidelines for when and how AI should be used in your development process. This includes security requirements, quality gates, and review processes.
Implement context-aware tools: Move beyond generic AI assistants to tools that understand your codebase, architectural patterns, and organizational requirements.
Measure systematically: Establish metrics for AI impact on code quality, development velocity, and technical debt. You need data to guide your transition.
Train your team: Viable Coding requires different skills than traditional development. Invest in helping your team understand how to work effectively with AI agents.
Ultimately, I’m seeing the results of my focus and I want to continue honing in on practical optimization of the developer experience with AI. Attending conferences gives me the direct feedback loop I need and cherish in the technical community to figure out what they/we need more of, less of, and the clear paths forward to excel in the industry that often aims to cloud our judgement with hype and marketing.
More content to come on this and adjacent topics regarding AI in the software space, for enterprise engineers and those serious about software craftsmanship. This is foundational information. In-depth, practical and pragmatic implementation details are critical for leveraging AI in the real world.
Reply