Back to blog

Vibe Coders and Industry Engineers

A note on why vibe coders and industry engineers often talk past each other, and what they can learn from each other.

Tags: agentic-engineering , ai , workflow

The divide between vibe coders and industry-grade engineers is partly a divide between environments.

They care about different things because they are often responsible for different kinds of risk.

Vibe coders are usually working on smaller projects, prototypes, tools, experiments, and products that can change shape quickly. The cost of trying something is low. The feedback loop is fast. That maps well to the Lean Startup build-measure-learn loop: build the smallest useful thing, measure what happens, and learn before overcommitting.

That speed matters. A lot of good software starts as something that would have looked irresponsible inside a larger organization.

Industry engineers often live in a different world.

They deal with legacy systems, legacy code, old decisions, fragile integrations, compliance requirements, production incidents, and users who already depend on the system. Martin Fowler’s patterns of legacy displacement are useful here because they treat modernization as incremental risk management, not a heroic rewrite. A small change can have a large blast radius. The code is not just code. It is attached to payroll, revenue, patient records, logistics, legal obligations, or institutional trust.

That caution matters too.

Different Defaults

The vibe coder default is experimentation.

Try the tool. Ship the sketch. See if anyone cares. Rewrite it if the idea survives.

The industry engineer default is stewardship.

Understand the dependency. Read the migration path. Add the test. Think about rollback. Ask what breaks when this works halfway. Google’s SRE writing on embracing risk is a good version of this posture: reliability work is about making risk explicit enough to balance against the pace of change.

Neither default is wrong. They are responses to different environments.

The problem starts when each side treats its environment as universal.

Vibe coders can mistake caution for fear. Industry engineers can mistake experimentation for carelessness. Both readings are too simple.

A Better Conversation

There should be more space for conversation between these groups.

Vibe coders can remind industry engineers that experimentation is not the enemy of quality. Fast prototypes can expose possibilities that a committee would never approve on paper. They can show new workflows, new interfaces, and new ways to use agents as creative leverage.

Industry engineers can remind vibe coders that software becomes different when people depend on it. Logging matters. Security matters. Tests matter. Data migrations matter. Accessibility matters. Documentation matters. Operational habits are not bureaucracy when the stakes are real.

The useful exchange is not one side winning.

It is experimentation borrowing discipline, and discipline borrowing speed.

The Middle Ground

AI tools make this conversation more important.

Agents make it easier to build something quickly. They also make it easier to build something quickly without understanding the edges. That is a powerful combination and a dangerous one. Simon Willison’s framing of agentic engineering is helpful because it separates unreviewed prototype-quality code from code a professional has verified and brought up to a production-ready standard.

The right lesson is not “stop vibe coding.” The right lesson is to know when the mode should change.

Prototype freely when the cost of failure is low. Slow down when the project starts collecting users, data, money, or trust. Bring in tests, reviews, monitoring, security checks, and boring documentation before the experiment becomes infrastructure.

Good engineering has room for both impulses.

The best work will probably come from people who can move between them.