Reflections on software engineering in the age of AI

AI-Accelerated Workflows and Productivity

  • Several developers describe end-to-end workflows where LLMs help with requirements drafting, design choices, schemas, mockups, tests, coding, and refactoring.
  • Reported benefits: solo-building products that would previously require a team, compressing weeks of work into days, and using AI for large-scale refactors and bug-hunting in huge codebases.
  • Others limit AI to prototyping, bug detection, or documentation, then rewrite by hand for quality and maintainability.

Quality of AI-Generated Code

  • Strong disagreement: some say LLMs are “terrible programmers” and should be used mainly as analyzers or rubber ducks; others claim AI-written code is fast, solid, and already dominates their production code with human review.
  • Many note AI gets ~90–95% to their quality bar; polishing the last 5–10% (edge cases, style, coherence) is mentally taxing and can negate speed gains.
  • There is consensus that AI output must be reviewed and that models forget constraints, misinterpret feedback, and can propose dangerous fixes.

Scope Limits and Hard Problems

  • Several comments highlight domains where current LLMs struggle: game engines (e.g., advanced occlusion mapping), complex simulations, cutting-edge algorithms, and architecture choices not well represented in training data.
  • AI tends to pick “average” or popular stacks and patterns (e.g., common web frameworks) even when suboptimal.

Roles, Careers, and Skill Erosion

  • One view: most traditional “feature-implementing” software engineers become obsolete; remaining roles cluster into:
    • A small elite creating libraries, tools, and open source that feed training data.
    • Practitioners who “channel” and constrain AI-generated code within organizations.
    • QA-like roles verifying and probing AI output.
  • Others argue good architecture, maintainability, and design remain essential in commercial software and can’t be replaced by code generators.
  • Ongoing concern about junior developers losing implementation “reps” and long-term skill atrophy.

Experience, Enjoyment, and Craft

  • Some find working with LLMs frustrating: models hallucinate, ignore instructions, and behave like forgetful, overconfident collaborators.
  • Others feel liberated from boring tasks and enjoy focusing on architecture, problem definition, and higher-level design.
  • Multiple commenters emphasize programming as personal mental-model construction and a craft, predicting a future where humans increasingly “shape” vast streams of AI code—more like bonsai cultivation than from-scratch construction.

Economic and Societal Debates

  • Disagreement over whether we’re truly in an “Age of AI”:
    • Pro-AI side: huge productivity gains, analogy to tractors and assembly lines.
    • Skeptical side: hype, limited societal benefit so far, ethical issues with training data, and a shift from open, democratized learning to paywalled, centralized AI tooling.