Why AI hasn't replaced software engineers, and won't
Capabilities and Limits of LLM Coding
- LLMs can now scaffold full apps (web, mobile, infra-as-code) and handle non-trivial tasks (reverse engineering firmware, security scripts, Terraform/Ansible, Frida, etc.).
- They excel at boilerplate, wiring, and “text-shaped” backend problems; much weaker on nuanced UX, visual taste, and edge cases.
- Models still make basic logical mistakes (e.g., string-sorting dates) and will confidently pursue wrong paths without realizing it.
- Effective use requires strong human guidance, testing, and review; unguided “vibecoding” produces large volumes of brittle, low-quality code.
Greenfield vs Maintenance and Complexity
- For solo devs and tiny teams, LLMs make previously impossible 50–100k LOC projects feasible; time shifts from typing to planning, reading, and QA.
- In larger systems (many engineers, hundreds of features), complexity, coupling, and invisible constraints dominate. LLMs don’t manage this well yet.
- Greenfield prototypes are largely automatable; long-term maintenance, integration with legacy systems, and security remain hard and human-intensive.
Replacement vs Augmentation
- Some report concrete replacement of “several developers” for small startups and pet projects; others argue these are net-new projects that would never have hired engineers.
- Many see AI as a force multiplier: one good engineer + agents can replace a much larger mediocre team, especially on new projects.
- Consensus: weak/“ticket shuffler” devs are most at risk; strong engineers who can specify, review, debug, and architect around agents gain leverage.
Decision, Domain Knowledge, and Accountability
- Core value shifts toward:
- Deciding what to build (product thinking, domain knowledge).
- Verifying and being accountable for what ships (tests, security, compliance).
- Understanding the codebase and business context deeply enough to navigate trade-offs.
- Non-technical staff are already building internal tools with AI, but quickly hit complexity walls and become de facto undertrained developers.
- Organizations still need a human “fall guy” and cannot yet offload legal/operational responsibility to AI; vendors offer no liability guarantees.
Economic and Labor-Market Effects
- Some expect “3D printer/CNC moment”: far more small bespoke tools, fewer traditional dev roles, lower average pay, higher pay for top performers.
- Others note historical patterns: automation tends to expand total software demand, not shrink it, though specific roles and titles shift.
- Concern that AI will commoditize coding, hollow out mid-skill roles, and concentrate rewards among a smaller set of high-skill “AI shepherds.”