Home/Foundations/What is Agentic Coding?

Section 1.2.5

What Agentic Coding Is NOT

What is Agentic Coding?

Before going further, let's clear up common misconceptions. Setting accurate expectations is crucial—overhyped expectations lead to disappointment and underuse, while too-low expectations lead to missing opportunities.

Not Magic

AI doesn't read your mind or solve ambiguous problems. It's powerful but not sentient.

You must still:

Define clear requirements - "Make the app better" produces generic improvements. "Add pagination to the user list with 25 items per page, prev/next buttons, and a page size selector" produces exactly what you need. Specificity matters enormously.

Make architectural decisions - Should this be a microservice or a module? REST or GraphQL? SQL or NoSQL? These decisions require understanding your system's constraints, team capabilities, and product roadmap—context the AI doesn't have.

Review and validate output - AI-generated code can be wrong, insecure, or inefficient. Always review. Always test. Never merge blindly. The AI is proposing implementations, not guaranteeing correctness.

Understand what you're building - You can't effectively review code you don't understand. You can't validate that it meets requirements without knowing what those requirements mean. Agentic coding accelerates execution, but it doesn't eliminate the need for understanding.

The "magic" feeling comes from the speed and fluency, not from bypassing fundamental software engineering discipline.

Not Autonomous (Yet)

Current agentic tools need guidance and oversight. They're powerful assistants, not replacement developers.

They don't:

Replace product thinking - AI can't decide what features to build, who your users are, or what problems are worth solving. Product strategy requires understanding markets, users, and business objectives in ways current AI can't replicate.

Make strategic decisions autonomously - Technical decisions are often product decisions in disguise. Choosing between approaches requires weighing tradeoffs specific to your situation—current growth, team skills, timeline constraints, user needs. AI can present options but can't choose for you.

Understand business context without your input - Why are you building this? What's the competitive landscape? What did you already try? What failed? This context shapes every technical decision but rarely appears in code or specifications.

Ship code without human review - Would you trust a junior developer to merge directly to production without review? That's the current state of AI agents—highly capable, occasionally brilliant, but requiring oversight.

The dream of "describe your product and get working software" remains elusive. We're not there yet, and won't be soon. Current tools require active partnership, not passive delegation.

Not Perfect

AI-generated code has the same potential flaws as human-written code, sometimes in different patterns.

You still need to:

Review code critically - Ask questions like:

  • Does this actually solve the problem?
  • Are there edge cases this misses?
  • Is this maintainable? Will someone understand it in six months?
  • Does it follow our architectural patterns?

Test thoroughly - AI-generated code can have subtle bugs, especially in:

  • Error handling paths (the code works for happy paths but fails on errors)
  • Edge cases (boundary conditions, empty inputs, unexpected combinations)
  • Security (authentication bypass, injection vulnerabilities, data leaks)
  • Performance (N+1 queries, inefficient algorithms, memory leaks)

Validate against requirements - Generated code might technically work but miss your intent. Always verify it solves the actual problem, not just a related problem.

Apply engineering judgment - Sometimes the "correct" implementation isn't the right choice. Maybe it's too complex for your team to maintain. Maybe it over-engineers a simple problem. Maybe it introduces dependencies you want to avoid. Technical correctness doesn't equal good engineering.

Think of AI as an incredibly productive but junior team member. High output, occasional brilliance, but requiring mentorship and review. Your job is to provide the judgment and oversight that ensures quality.