logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·30.10.26
← Back to news

The problem is not AI code, but not knowing about system architecture or intent

Original article
ssp.sh|257 points|170 comments|by zazuke|Sep 28, 2026

The Crisis of Intent: Why AI Code Isn't the Real Issue

The prevailing debate often centers on whether writing code is dead because AI can now generate entire codebases. However, the more pressing danger isn't the code itself, but the systemic erosion of system architecture knowledge and the underlying intent behind technical decisions.

The "Average" Baseline

In my view, AI typically produces average code—the quality varies based on the scale and complexity of the task. This creates a specific dynamic:

If Codeexisting<CodeAI, then AI improves it to Average\text{If } \text{Code}_{\text{existing}} < \text{Code}_{\text{AI}}, \text{ then AI improves it to } \text{Average}If Codeexisting​<CodeAI​, then AI improves it to Average

The real risk is not the output, but the process: people have stopped thinking and started simply asking Claude for the answer.


🚩 The State of Modern Fast-Paced Development

In many high-growth startups or corporate environments where middle management aggressively pushes AI adoption, we are seeing a worrying trend. Consider this scenario (summarized from a recent industry observation):

"I've been at a major company for two weeks. Everything—the specs, the tests, the PRDs, the tickets—is generated by Claude Code. Management claims that pushing code is no longer the bottleneck, yet we are still slow. Everyone from L1 to L7 is just prompting. No one is taking the time to actually understand where the code is going."

The Knowledge Gap

This creates a dangerous loop where the "how" is automated, but the "why" is forgotten.

The Data Engineering (DE) Exception

Historically, Data Engineers had to be deeply embedded in the business logic from day one.

What pre-AI Data Engineers had to master:

  • Deep domain expertise
  • Collaboration with business stakeholders
  • Understanding of raw data lineage
  • Manual mapping of complex business rules

For those entering the field today, if they rely solely on prompting, this critical foundational knowledge is simply missing.


🛠️ The "Empowered" Product Manager

There is a school of thought—notably mentioned by Sean Behan—that non-coding PMs who can lead teams are highly valuable. With AI, a PM could theoretically build an entire product, find a market, and polish the UI without writing a line of manual code.

However, there is a catch. Without a grasp of the fundamentals, you are likely to build on a rock-solid foundation fragile architecture.

RoleWith AI OnlyWith AI + Fundamentals
Product ManagerBuilds a "working" prototype that is impossible to maintain.Builds a scalable product with a sustainable mental model.
EngineerCopies inline_code snippets without knowing the complexity.Orchestrates AI to implement a specific, intentional design.

If you choose the wrong language or a flawed mental model at the start, AI can iterate quickly, but it cannot easily fix a fundamentally broken architectural choice.


👾 The Final Boss: Maintenance

The ability to generate a pipeline, a dashboard, or an app is now trivial. But the "Final Boss" of software engineering is Maintenance.

Thinking in systems and designing with intent are what separate a coder from an engineer. While manual coding might be declining, "Having Taste" is now a premium skill.

The Maintenance Paradox:

The easier it is to generate a feature →\rightarrow→ the more features are created →\rightarrow→ the higher the maintenance burden →\rightarrow→ the more critical architecture becomes.

Example of Intent vs. Generation

If you ask an AI to "make it work," you get a script. If you design it, you get a system.

# AI-generated "Just make it work" approach
def process_data(data):
    # Giant block of nested loops and hardcoded logic
    # No error handling, no scalability
    return result 

# Intent-driven architectural approach
class DataProcessor:
    """
    Intent: Decouple ingestion from transformation 
    to allow for future schema changes.
    """
    def __init__(self, strategy):
        self.strategy = strategy

    def execute(self, data):
        return self.strategy.transform(data)

🕹️ Who is Driving the AI?

AI cannot prompt itself. It requires a human to direct, orchestrate, and refine. This makes intent, taste, and architecture the "killer features" of a modern professional.

When these elements vanish, we enter a dangerous territory. Some argue this is a self-inflicted wound caused by the industry's failure to hire and mentor junior developers.

The Path Forward:

  • Re-prioritize the hiring of junior talent.
  • Focus on system design over syntax.
  • Encourage "slow" reading of AI-generated code.

📚 Further Exploration

For those interested in the intersection of AI and cognition, consider these perspectives:

  • Middle Management Anxiety: Kris Jenkins on the pressures of AI oversight.
  • The Human Element: The philosophy that if a human consumes the content, a human should have written it.
  • LLM Constraints: Understanding the inherent limitations of Large Language Models.

This synthesis is inspired by the "Second Brain" notes of Simon Späti, focusing on the intersection of Data Engineering and the evolution of software development.