Why „Engineering with AI“ Matters

Collaboration between Humans and AI in Software Engineering

AI can explain software. AI can generate software. But building software together with AI is becoming a discipline of its own.

Artificial Intelligence is rapidly becoming part of everyday software engineering. Modern AI assistants explain code, generate implementations, review pull requests and even help design software architectures. At the same time, AI IDEs such as Cursor, Claude Code and GitHub Copilot have fundamentally changed how developers interact with their codebases. Much has been written about AI technologies and AI coding assistants. Far less attention has been given to the engineering practices that enable humans and AI to build software together effectively. This article explains why I believe that Human-AI Collaboration in Software Engineering deserves to be treated as a discipline of its own.

Most discussions around AI-assisted software development therefore focus on one of two questions:

How does AI work?

or

How can AI generate better code?

Both are important questions. But while building Charlie, I realized that another question was becoming increasingly important.

How do humans and AI actually engineer software together?


Beyond AI Coding

Much of today’s discussion around AI-assisted development revolves around tools.

  • Which coding assistant is better?
  • Which model generates the highest-quality code?
  • Which agent can complete the largest task autonomously?
  • Which AI IDE is the most productive?

These are valuable questions. But they are not engineering questions. Engineering begins long before code is written and continues long after code has been generated.

Someone still needs to:

  • define the architecture
  • evaluate alternatives
  • plan the roadmap
  • structure the implementation into iterations
  • review trade-offs
  • challenge assumptions
  • preserve engineering knowledge
  • keep the system understandable and maintainable over time

Today’s AI can actively support all of these activities. However, software engineering is still a collaborative process between humans and AI rather than a fully autonomous one. Understanding how this collaboration works is therefore becoming an engineering discipline in its own right.


More Than an AI Assistant

While building Charlie, I noticed that ChatGPT had gradually stopped being „just“ an AI assistant. It had become a long-term engineering partner.

Together we:

  • design software architecture
  • define roadmaps
  • plan sprints
  • discuss implementation strategies
  • evaluate design alternatives
  • document engineering decisions
  • generate architecture diagrams
  • preserve engineering knowledge
  • continuously improve our engineering process

The conversation itself became part of the engineering process. That raised entirely new questions.

How should architectural discussions be conducted?

How should responsibilities be divided between the engineer and the AI?

How do we preserve engineering context across multiple conversations?

How do we create workflows that remain understandable and reproducible over months of development?

How do we continuously improve the collaboration itself?

These questions are neither purely about AI nor purely about software engineering. They are about the interaction between both.


Engineering the Collaboration between Humans and AI

Understanding AI enables better engineering. Software engineering provides the architectural foundation. Engineering the collaboration between humans and AI connects both into a practical, repeatable engineering process. This perspective is not about replacing engineers with AI. Nor is it about finding the most autonomous coding agent. Instead, it focuses on improving the collaboration itself.

What to Expect from the Charlie AI Engineering Lab

Charlie is more than an AI project. It is an engineering laboratory. While building a real production-quality AI platform, I continuously document not only the technologies I use, but also the engineering practices I develop along the way. The objective is not to maximize code generation. The objective is to maximize engineering quality.

Some articles explain AI technologies. Some explain software engineering principles. Others focus on the collaboration between humans and AI and the engineering methods that emerge from that collaboration.

Topics include:

  • Building a Documentation Factory for AI Engineering
  • Engineering Beyond the Context Window
  • Designing AI Engineering Workflows

Every workflow, every architectural decision and every engineering experiment becomes an opportunity to refine how humans and AI can build better software together.


Looking Ahead

Software engineering has continuously evolved.

From individual programming to pair programming. From monolithic systems to distributed architectures. From manual deployments to continuous delivery.

Artificial Intelligence represents another step in that evolution. Today’s AI can already generate code, review implementations and assist with architectural decisions.

Tomorrow’s challenge is no longer whether AI will participate in software engineering. It already does.

The real challenge is learning how humans and AI can collaborate effectively across entire software projects—from the first architectural sketch to long-term maintenance, documentation and continuous evolution. Understanding and improving that collaboration is the purpose of the Charlie AI Engineering Lab.


Final Thoughts

The future of software engineering will not be defined solely by better language models or more capable AI agents. It will also be shaped by better engineering practices for working with them.

The question is no longer whether AI can write software.

The question is how humans and AI can engineer software together.

That is the journey Charlie aims to explore. If you’re curious about modern AI engineering, welcome to the journey 🚀