Skip to content

Split a giant legacy codebase into modules with an agent doing the grunt work

Nubank used Devin to help migrate an 8-year-old ETL monolith with over 6 million lines into smaller sub-modules, running many sub-tasks in parallel while engineers reviewed. The company reports an 8-12x engineering efficiency gain and over 20x cost savings on that work.

Devin One public report
52
Proof
18/40
Payoff
25/25
Ease
7/20
Cost
2/15
How the score works
Difficulty
Builder
Setup time
Not measured yet
Monthly cost
$500/mo
What it saves
20x cost savings on migration

How to do it

  1. Do a few migrations of the same kind by hand and keep the diffs as examples
  2. Break the big migration into many small, near-identical tasks
  3. Give the agent the examples and one task at a time, in parallel sessions
  4. Have engineers review and merge each pull request
  5. Feed corrections back as examples so later tasks need fewer fixes

The prompt

We are moving classes out of the monolith in /legacy into separate modules. Here are three finished examples of the change: <PR links>. Apply the same pattern to <ClassName>: move it to its own module, update imports everywhere, keep behavior identical, and run the existing tests. Open one pull request per class with a short summary of what moved.

Where this comes from

One person reported it. Promising, not yet confirmed. Original report: Devin (Cognition customer stories).

Tried this? Tell us how it went and help move its proof level up.

Was this useful?