---
title: "AI Commoditizes Features, But Judgment Compounds"
date: 2026-05-27
type: post
tags: [ai, engineering, culture, judgment]
summary: "AI raises the floor dramatically. It does not flatten the ceiling. The profession that survives is the one hardest to demo without, not just hardest to do without."
---

## The Core Argument

Real professional engineers will still be needed for excellence. Not because AI can't write code, but because excellence is qualitatively different from functional. The gap between the two requires judgment, taste, and accountability that no model improvement can close.

AI raises the floor dramatically. It does not flatten the ceiling.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 280" role="img" aria-label="Diagram: AI raises the floor but the ceiling stays. The gap between them is judgment.">
  <rect width="840" height="280" fill="#F5F0E8" rx="4"/>
  <!-- Left: Before AI -->
  <text x="210" y="32" text-anchor="middle" font-family="Inter, sans-serif" font-size="13" font-weight="600" fill="#2B2421" letter-spacing="0.05em">BEFORE AI</text>
  <rect x="60" y="48" width="300" height="196" rx="3" fill="none" stroke="#DDD7CD" stroke-width="1"/>
  <line x1="80" y1="80" x2="340" y2="80" stroke="#A0522D" stroke-width="2"/>
  <text x="350" y="84" font-family="Inter, sans-serif" font-size="11" fill="#A0522D" font-weight="600">EXCELLENCE</text>
  <rect x="80" y="80" width="260" height="100" rx="0" fill="#A0522D" fill-opacity="0.08"/>
  <text x="210" y="136" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="14" fill="#6B5F55" font-style="italic">judgment, taste,</text>
  <text x="210" y="154" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="14" fill="#6B5F55" font-style="italic">accountability</text>
  <line x1="80" y1="180" x2="340" y2="180" stroke="#6B5F55" stroke-width="2"/>
  <text x="350" y="184" font-family="Inter, sans-serif" font-size="11" fill="#6B5F55" font-weight="600">FUNCTIONAL</text>
  <rect x="80" y="180" width="260" height="44" rx="0" fill="#6B5F55" fill-opacity="0.06"/>
  <text x="210" y="206" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="12" fill="#948880">code that runs</text>
  <!-- Right: After AI -->
  <text x="630" y="32" text-anchor="middle" font-family="Inter, sans-serif" font-size="13" font-weight="600" fill="#2B2421" letter-spacing="0.05em">AFTER AI</text>
  <rect x="480" y="48" width="300" height="196" rx="3" fill="none" stroke="#DDD7CD" stroke-width="1"/>
  <line x1="500" y1="80" x2="760" y2="80" stroke="#A0522D" stroke-width="2"/>
  <text x="770" y="84" font-family="Inter, sans-serif" font-size="11" fill="#A0522D" font-weight="600">UNCHANGED</text>
  <rect x="500" y="80" width="260" height="52" rx="0" fill="#A0522D" fill-opacity="0.08"/>
  <text x="630" y="112" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="14" fill="#6B5F55" font-style="italic">still judgment</text>
  <line x1="500" y1="132" x2="760" y2="132" stroke="#6B5F55" stroke-width="2"/>
  <text x="770" y="136" font-family="Inter, sans-serif" font-size="11" fill="#6B5F55" font-weight="600">RAISED</text>
  <rect x="500" y="132" width="260" height="92" rx="0" fill="#6B5F55" fill-opacity="0.06"/>
  <text x="630" y="172" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="12" fill="#948880">AI-assisted code that runs,</text>
  <text x="630" y="188" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="12" fill="#948880">passes tests, looks competent</text>
  <!-- Arrow showing floor rising -->
  <line x1="420" y1="180" x2="420" y2="140" stroke="#A0522D" stroke-width="1.5" marker-end="url(#arrowJ)"/>
  <text x="420" y="198" text-anchor="middle" font-family="Inter, sans-serif" font-size="10" fill="#A0522D">floor rises</text>
  <defs><marker id="arrowJ" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"><path d="M0,0 L6,3 L0,6 Z" fill="#A0522D"/></marker></defs>
</svg>

## The Dignity Problem (Most Underappreciated)

The threat to engineers isn't only economic. When expert judgment stops being consulted, something human is lost: the social recognition that hard-won expertise deserves. A doctor who loses clinical judgment to AI loses the acknowledgment that fifteen years of intuition was worth something. The income is secondary.

This is a different kind of harm than job displacement and deserves its own conversation.

## "Judgment + AI > Professionals" Is Weaponized Dunning-Kruger

Non-engineers with AI tools get just enough coherent output to *look* competent. This is more dangerous than obvious incompetence. It fools everyone longer, including the person doing it.

The professional sees second-order failures coming. The amateur with AI doesn't know there is a second order.

## The Tradesman Analogy: Where It Holds and Where It Breaks

**What actually protects trades:** physical reality checks (the fridge either gets cold or it doesn't), special tool access, licensing for hazardous materials, liability, code inspections.

**The problem with software:** its output is pure information. A non-plumber's solder joint actually leaks. A non-engineer's AI-generated app can genuinely run. There is no physical reality to resist.

**What the equivalent protection might look like in software:**
- Complex systems integration (AI-assisted apps work at 1,000 users; fail catastrophically at 100,000)
- Security and adversarial reasoning (not "write code that works" but "what does a motivated attacker do with this?")
- Production debugging of distributed systems (race conditions, cascading failures)
- Professional accountability: someone has to sign off, and their reputation is on the line

The protection isn't tool access. It's *complexity that bites back*. Systems that reward deep knowledge by visibly punishing its absence.

## Excellence vs. Functional: A Qualitative Distinction

A better model raises the ceiling on "good enough." It doesn't touch excellence. Excellence requires:

- **Knowing when requirements are wrong.** AI executes on requirements. It doesn't challenge them.
- **Taste about what not to build.** Knowing which feature request is a symptom of a deeper problem.
- **Conceptual integrity over time.** Holding the whole system in your head and noticing when new pieces violate its coherence.
- **The 3am judgment call.** Partial information, pressure, three competing hypotheses. You pick which risk to take and you own it.
- **Scar tissue.** AI has no memory of the deployment that took down prod because of a race condition that looked fine in testing. The professional does.

## The CEO Incentive Problem

CEOs optimize for what they can measure: headcount costs, features shipped, time to market. AI makes the visible part of engineering look cheap.

What isn't on any dashboard: the judgment call that prevented a disaster nobody even knows about. An architectural decision from three years ago that's the reason the system still works at scale. Taste. The product feels like one thing instead of six things glued together, and nobody can point to a line item that made it so.

The failure mode of cutting engineering judgment is **lagged**. It takes 12-18 months to show up, and by then it's attributed to market conditions or leadership changes, not the original decision.

This is structurally identical to cutting cybersecurity. You don't see the attacks that didn't happen.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 840 160" role="img" aria-label="Diagram: The lagged failure timeline. Decision to cut engineering judgment leads to invisible degradation, then visible failure 12-18 months later, attributed to the wrong cause.">
  <rect width="840" height="160" fill="#F5F0E8" rx="4"/>
  <!-- Timeline line -->
  <line x1="40" y1="80" x2="800" y2="80" stroke="#DDD7CD" stroke-width="1.5"/>
  <!-- Event 1: Decision -->
  <circle cx="100" cy="80" r="8" fill="#A0522D"/>
  <text x="100" y="56" text-anchor="middle" font-family="Inter, sans-serif" font-size="11" font-weight="600" fill="#2B2421">DECISION</text>
  <text x="100" y="110" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">Cut engineering</text>
  <text x="100" y="123" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">judgment</text>
  <!-- Event 2: Invisible degradation -->
  <circle cx="340" cy="80" r="8" fill="#DDD7CD" stroke="#6B5F55" stroke-width="1.5" stroke-dasharray="3,2"/>
  <text x="340" y="56" text-anchor="middle" font-family="Inter, sans-serif" font-size="11" font-weight="600" fill="#948880">INVISIBLE</text>
  <text x="340" y="110" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#948880">Coherence degrades.</text>
  <text x="340" y="123" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#948880">Nobody notices.</text>
  <!-- Time label -->
  <text x="220" y="75" text-anchor="middle" font-family="Inter, sans-serif" font-size="9" fill="#948880">12-18 months</text>
  <!-- Event 3: Visible failure -->
  <circle cx="560" cy="80" r="8" fill="#8B3A2A"/>
  <text x="560" y="56" text-anchor="middle" font-family="Inter, sans-serif" font-size="11" font-weight="600" fill="#8B3A2A">FAILURE</text>
  <text x="560" y="110" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">System breaks at scale.</text>
  <text x="560" y="123" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">Outage. Data loss. Breach.</text>
  <!-- Event 4: Misattribution -->
  <circle cx="740" cy="80" r="8" fill="#6B5F55"/>
  <text x="740" y="56" text-anchor="middle" font-family="Inter, sans-serif" font-size="11" font-weight="600" fill="#6B5F55">BLAMED ON</text>
  <text x="740" y="110" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">"Market conditions."</text>
  <text x="740" y="123" text-anchor="middle" font-family="Source Serif 4, Georgia, serif" font-size="10" fill="#6B5F55">"Leadership changes."</text>
  <!-- Arrows -->
  <line x1="108" y1="80" x2="330" y2="80" stroke="#948880" stroke-width="1" stroke-dasharray="4,3"/>
  <line x1="350" y1="80" x2="550" y2="80" stroke="#6B5F55" stroke-width="1.5" marker-end="url(#arrowL)"/>
  <line x1="570" y1="80" x2="730" y2="80" stroke="#6B5F55" stroke-width="1" marker-end="url(#arrowL)"/>
  <defs><marker id="arrowL" markerWidth="6" markerHeight="6" refX="5" refY="3" orient="auto"><path d="M0,0 L6,3 L0,6 Z" fill="#6B5F55"/></marker></defs>
</svg>

**What could change the incentive structure:**
- Liability: if organizations faced professional accountability for AI-generated software failures the way they face accountability for accounting fraud, you'd need engineers the way you need licensed accountants
- Attributed failures: high-profile disasters clearly traced to "they fired engineers and replaced with AI"
- Credentialing and certification in safety-critical domains (medical, aviation, finance)

Arguments don't change incentive structures. Consequences do.

## The Pricing Gatekeeping Layer

Model providers have inserted themselves as a new kind of gatekeeper. The non-engineer thinks they've broken free from professional gatekeeping. They haven't. They've changed gatekeepers to ones who charge by the token, can change pricing overnight, can deprecate models, and have no professional obligation to anyone.

**The sustainability tension:**
- Major labs (Anthropic, OpenAI) are burning enormous capital; pricing reflects "keep the lights on while we figure this out"
- Inference costs have dropped ~[100x](https://epochai.org/data/notable-ai-models) in under three years; open source is closing the capability gap
- If prices collapse and open source wins → AI becomes nearly free, *strengthening* the "judgment + AI beats professionals" narrative
- If prices stay high or providers fail → workflows built on top become hostages

The accountability that can't be priced by the token: when the AI-assisted decision fails, someone professional has to answer for it.

## How to Actually Help

Start with the conversation you're already in. Make the specific argument, not the vague one. Not "we need engineers" but "here's the failure that happened because judgment was absent." Concrete and attributed. Name what the human contributed when AI does something well. Normalize crediting judgment, not just output.

In mentorship, the skills most worth transferring aren't coding skills. They're judgment skills: how to challenge a requirement, how to read a system for hidden brittleness, how to develop taste. These were assumed to come with seniority and were never made explicit. Make them explicit now.

At the organizational level, push to measure what actually matters: system health, architectural coherence, incident prevention. If these aren't measured, they'll keep being cut because they're invisible.

The counter-narrative that's true and needs more voices: *AI commoditizes features, but judgment compounds.* People who understand this need to say it plainly, with examples, to audiences who influence the decisions.

The structural work (liability frameworks, credentialing, regulation in safety-critical domains) is slow and requires collective action. But the individual can support and accelerate those conversations.
