Article

What happens when you put Claude Code in front of a real team

A coding agent dramatically shortens the path from intent to running code, and shortens the path to technical debt just as much. The difference is not the tool; it is what the team calls done.

By Aviel Shnaider · CTO, JuliusUpdated 8 min read

A coding agent like Claude Code helps most where the intent is clear and the execution is boring, and least where someone still has to decide what to build. That is the whole short answer. The trouble is that most teams measure it by how much code came out, which is exactly the metric that turns it into a liability.

We wrote this after several months of daily work with an agent inside an existing development process, including the site you are reading now. It is built on Next.js with full Hebrew and English support including RTL, a Supabase-backed content layer and an admin panel. A large share of that work was done alongside an agent, and a real share of it was thrown away and rewritten by hand.

What genuinely gets shorter

The saving is not in writing the function. It is in everything around it: reading a thousand-line file nobody has touched in a year, finding the three places the same pattern repeats, adapting an existing test to a new case, translating a whole screen and confirming that no string stayed hard-coded.

  • Survey work: finding where something is defined, where it is consumed, and what breaks if it changes.
  • Repetitive work at scale: the same change across twenty files, where the pattern is fixed and only details vary.
  • Mechanical conversions: types, migrations, fitting old code to a new interface.
  • The first move in unfamiliar code — not to trust it, but to stop staring at an empty file.

In each of those the intent is known in advance and the work is volume. That is where the difference shows immediately, and it is also where the result is cheap to check: either the tests pass or they don't.

Where it breaks

An agent will happily write you code that works and creates a problem. It will add a component nearly identical to one that exists rather than extend it, because it does not know that pattern already lives under another name in another folder. It will route around a type error instead of fixing it, if you asked for it to pass rather than to be right. It will pull in a dependency to save twenty lines.

Every one of those is a mistake a human makes too. The difference is rate. A developer produces one duplication a day and feels the friction; an agent produces six an hour and feels nothing. Debt accumulated at that speed does not surface in one code review. It surfaces three weeks later, when somebody tries to change a single behaviour and finds it defined in four places.

What still needs a person

Three decisions do not transfer to an agent, not for lack of capability but for lack of accountability. What ships and what waits. What the experience is when something fails. And what the system promises the people using it — a promise somebody has to defend in front of a client.

In practice that makes product definition more important, not less. The cheaper execution gets, the more a bad definition costs: it becomes very easy to build the wrong thing quickly. We wrote about that separately in the idea to MVP cluster, because it is the same failure one stage earlier.

60–80%traffic loss reported on page sets built from thin templates after Google's March 2026 core updatedevelopers.google.com

That figure comes from content rather than code, but it describes the same dynamic exactly: when production cost collapses, what separates good work from waste is not volume but the gate that decides what passes.

What a working process looks like

What worked for us is not an elaborate method. It is one fixed gate and two habits.

  1. An automatic gate before every merge: build, type check, lint and unit tests. If the gate is red there is no discussion.
  2. One task at a time, with a stated definition of done. A vague task returns vague code.
  3. Review by a person who knows the system, looking at decisions rather than syntax. The review question is "why is this a new file", not "why is there a space here".
  4. Rewriting by hand when the second attempt still isn't good. Three rounds of prompt correction cost more than ten minutes of writing it yourself.

The fourth is the hardest for teams to adopt, because it feels like the tool failing. It isn't. An agent pays off on average rather than in every case, and insisting on it in the cases where it doesn't is paid for in time.

If you are weighing this for a team, start with the boring work and the automatic gate rather than with the hardest feature. We also have a comparison of Claude Code and Cursor for anyone choosing between the two.

In short

  • A coding agent pays off where intent is clear and the work is volume.
  • The right metric is how much cleared the gate, not how much code was written.
  • Product definition matters more as execution gets cheaper.
  • Rewriting by hand after a second failed attempt is part of the process, not a failure of it.

From our own work

This site was built on Next.js with next-intl, full Hebrew–English support including RTL, a Supabase-backed content layer and an admin panel — a large share of it alongside a coding agent, and a real share of it thrown away and rewritten by hand.

Early in the project several near-identical components accumulated because new ones were created instead of extending what existed, and what actually stopped it was an automatic build and lint gate before merge rather than manual review.

Recurring questions

Does Claude Code replace developers?

No, and teams that try to use it that way get a bad result. It replaces part of a developer's work — mainly the repetitive and survey parts — and shifts weight onto the parts it does not do: defining what gets built, deciding what counts as done, and review by somebody who knows the system and can spot a wrong decision. In practice we have found the need for an experienced developer goes up, because whoever reviews the output has to recognise a structural problem rather than a syntax error.

How long does a team take to adapt to a coding agent?

The first week usually feels very fast, the first month feels disappointing, and it settles after that. The pattern repeats: easy tasks close quickly at first, then the debt created in week one arrives, and only then does the team define a process that prevents it. The real speedup shows up after there is an automatic gate before merge and a clear definition of when a task is closed.

What is the biggest risk?

Technical debt accumulating faster than human review can catch it. An agent producing working but duplicated code does not create an error you can see today — it creates a system where one change requires touching four places, and that only surfaces when somebody tries to change something. The only defence that worked for us is an automatic gate before merge plus a cap on task size.

Is it suitable for a small project?

Yes, sometimes more so than for a large one, because a small project has too little history for the agent to get lost in. The caution runs the other way: on a small project it is easy to accept one more dependency or a duplicate component, and those stay in the system for years. Even on a two-week build, the automatic gate should exist from day one.

Sources

Keep reading

Article

What code review has to catch once an agent is writing the code

Review that hunts for syntax errors is redundant once the compiler has caught them. What has to be hunted is decisions: a new file that should have been an extension, a dependency added quietly, and an edge case that vanished.

8 min read ·

Answer

Claude Code vs Cursor: the real difference and which to pick

The difference is not model quality but where the tool sits: Cursor is an editor with an agent inside it, and Claude Code is a terminal agent that leaves your editor beside it. That determines which tasks each one suits.

5 min read ·

Back to the cluster: Claude Code and AI-assisted development