blog podcast

Solution Debt

Software engineers lack foresight. We are a breed of people that have been trained to solve problems. With experience and learning we amass a repetoir of solutions. You see it in blogs, books and conferences. Problems and their solutions are legion.

It’s easy to fall for the illusion that our job primarily is to find solutions. I would posit it is not. I would posit it is to use what skills you have to help an organization create the most value possible over time.

The 2d chess of solving the problem infront of you becomes the 3d chess of solving todays problems and the ones of the future. This aspects (in my experience) is often missed. Solution debt.

Every solution require maintenance. The more you solve the more you maintain. It’s not the same as technical debt, which can be see as the inertia because of shortcuts taken in previous solutions. Solution debt is the debt you create because you solved a problem in the first place.

Any wise software engineer must be careful with which problems they chose solve. Less sophisticated system are more robust over time.