Technical debt

Newsletter

From Andreas' Desk

A bi-weekly letter from our CEO Andreas Creten for SaaS leaders and CTOs: what we see in audits, AI engineering and the companies we work with.

You're in — check your inbox to confirm.

From our SaaS audits

What we find inside SaaS companies

Patterns from the technical due diligences we run for investors and boards.

See the audit findings

Three Codexes walk into a codebase: The two agents

Codex got the same god class Claude had failed to remove, plus one thing Claude never had: a target architecture. An implementing agent and an independent reviewer then took three rounds to converge, because agents renovate around bad architecture rather than delete it.

Three Codexes walk into a codebase: The fellowship of the god class

Handing an AI your engineering conventions cleans up the code without fixing the architecture. A 5,000-line god class shrank to 500 lines across tidy domain files, and an independent reviewing agent still returned FAIL: authority never left the central object.

The learning debt: what happens when delivery always wins over development

Teams accrue learning debt when shipping always beats getting better. It stays invisible on every dashboard, compounds fastest under AI-speed change, and quietly caps the ceiling a buyer is willing to price.

What's in a technical due diligence report?

A good technical due diligence report is smaller than you expect, separates fact-checked observations from labelled judgement, and answers the specific questions your deal depends on. No score. The real test: does it change what you do on Monday morning?

Courage as a service

AI is making the knowledge side of consulting cheaper by the day. Teams still avoid the legacy system. The gap is not expertise. It is the structural courage to act on what everyone already knows.

Your codebase is a palimpsest

Every legacy codebase is a palimpsest: layers of decisions written on top of each other, none fully erased. Geoffrey Dhuyvetters argues that what looks like technical debt is often stratigraphy, and you read it before you rewrite it.

The cost of the quick fix

The quick fix isn't cheaper. It's cheaper today. Bram Devries traces how deferred fixes compound into emergencies, and argues that naming the trade-off out loud is the only way to break the cycle.

The disconnect between management and engineering

A mobile app, past its usefulness, was days from being phased out. One email reversed the decision. No discussion. No input from engineering. This is what happens when decision-making drifts too far from the work.

How we rewrote our tech stack in under a day

Last week, we deleted 16,000 lines of code, rewrote 11,500, migrated frameworks, ripped out React, and swapped our entire CSS setup with AI. It took less than 6 hours.

Technical debt lost its excuse

Technical debt used to justify meetings, trade-offs, and dedicated sprints. AI has changed that. Cleanup is now fast, cheap, and continuous. Teams that stop debating and start fixing unlock faster delivery and better outcomes.

Why AI makes engineering teams smaller, but not simpler

AI is changing what small teams can ship, boilerplate gone, prototypes faster, experimentation cheaper. But lower costs of building don't mean lower costs of building the wrong thing. It just means you can do it faster.

AI didn't change the economics of software engineering

AI made writing code faster, but the real economics of software engineering were never about typing code in the first place.

The unbundling of engineering value (Part 2)

AI won't make software engineers redundant. It will expose what engineering was always supposed to be about: understanding systems, not just writing code.

The unbundling of engineering value (Part 1)

Here's part one of a post I shared with our team on the radical change and evolution of our jobs. AI won't make software engineers redundant. It will expose what engineering was always supposed to be about: understanding systems, not just writing code.

How AI is quietly killing open source

LLMs generate code on demand, but they do not replace maintainers, communities, or years of shared learning. This piece explores how AI-assisted coding risks fragmenting logic, increasing technical debt, and slowly eroding the open source ecosystem.

Subscribe