Harness Engineering

An industry with an identity crisis

It appears that the software industry is in one of the largest times of change since the rise of the web or mobile. Coding agents like Codex and Claude are good. So good that they can crank out code better than 90% of human software engineers, in maybe 10% of the time. I know this can seem terrifying, especially for software engineers who are scared they will be out of a job, but we can see it as an opportunity as well.

From MVP to V1: Shifting gears in software development

How should software be built?

It depends.

There isn’t a single “correct” way to build software. An early stage startup might focus on speed over maintainability, because they’re looking to find Product-Market Fit (PMF). A scale-up which has found PMF might focus instead on maintaining engineering velocity. Both are solutions to two completely different equations.

If we broadly group development “modes” into two buckets, we get the following:

  • MVP
  • V1

MVP is everything before Product-Market Fit. V1 is after Product-Market Fit. Let’s define what Product-Market Fit is.

Start with Three

Engineering projects that require maintainable code should always start with a team of 3 or more engineers.

Why such an arbitrary number, you might ask? Why can’t a single engineer write maintainable code? Perhaps your thoughts might lean towards peer-review for PRs and arrive at the number 2. Two engineers should be enough to properly review.

So why is it important for software to be maintainable?

Software in the real world is only written to solve a problem for someone. But it doesn’t solve that problem fully (that’s a discussion for another post). It only represents a solution to a problem at that point in time. Unfortunately, we don’t live in a static world, so problems are always evolving. As the problem changes and new problems arise, the software must be modified or updated to meet these altered conditions. Or else they must be retired and decommissioned, as they are no longer fit for purpose.