Home / Blog / Building Software That Survives an Industry Downturn
Industry

Building Software That Survives an Industry Downturn

Downturns do not kill good software, they kill software that was too expensive, too fragile, or too locked in to survive scrutiny.

Every industry has cycles. The good years hide a lot of sloppy engineering, because when revenue is climbing, nobody audits the cloud bill or asks whether a system could survive a rough quarter. Then the market turns, budgets tighten, and suddenly every piece of software has to justify its existence. The systems that get cut first are not the least important ones. They are the ones that are too expensive to run, too fragile to trust, or too locked in to move.

Building software that survives a downturn is not about predicting the future. It is about not making decisions in good times that become fatal in bad ones. Three properties matter most: reliability, cost discipline, and portability.

Reliability is what earns you the right to survive

When budgets get scrutinized, reliability becomes political. A system that quietly does its job for years is easy to defend. A system that pages someone every week, needs constant babysitting, or breaks in ways nobody understands is an easy target for the cut list, regardless of how important it theoretically is.

Durable reliability is not about heroics or elaborate high-availability setups. It comes from boring, disciplined choices:

  • Failures are visible, logged, and understood, not mysteries someone reboots away.
  • The system degrades gracefully instead of collapsing when a dependency misbehaves.
  • Recovery is automated and rehearsed, not a scramble through someone's memory.
  • The on-call burden is low enough that the team is not quietly dreading the pager.

A reliable system buys goodwill. In a downturn, goodwill is what keeps your software funded while flashier projects get canceled.

Cost discipline is a design property, not a spreadsheet exercise

In good times, cost is an afterthought. Teams over-provision because it is easier, run idle infrastructure because nobody notices, and pick expensive managed services for convenience. When the market turns, every one of those choices gets a hard look, and systems whose cost scales badly become liabilities overnight.

The durable move is to make cost a visible property of the system from the start. You should be able to answer, without a two week investigation, what a given system costs to run and what drives that cost.

Know your cost per unit of value

Tie infrastructure spend to something the business understands: cost per transaction, per user, per order. When you can express cost in those terms, you can defend it or improve it. When you cannot, you are defenseless in a budget review, because all anyone sees is a big number with no story attached.

Software does not get cut because it is expensive. It gets cut because nobody can explain why it is expensive or how to make it cheaper.

Portability is your insurance against being trapped

The most dangerous decisions are the ones that lock you in. Deep dependence on a single vendor's proprietary services feels productive when times are good and pricing is friendly. When the downturn arrives and you need to cut costs or renegotiate, you discover how expensive it is to leave, and the answer is often that you cannot afford to.

Portability does not mean avoiding managed services or building everything yourself. That would be its own kind of waste. It means being deliberate about where you accept lock-in and keeping an honest exit path for the parts that matter.

  • Keep your core business logic independent of any specific vendor's runtime.
  • Prefer open standards and mainstream technology where the switching cost of proprietary options is high.
  • Store data in formats and systems you could migrate out of without a rewrite.
  • Know, at least roughly, what it would cost to move each critical system elsewhere.

The goal is not to move constantly. It is to preserve the option, so that when a vendor raises prices or your budget shrinks, you are negotiating from a position of choice rather than dependence.

Durability is a series of unglamorous choices

None of this is exciting. There is no conference talk in choosing boring technology, tracking cost per transaction, or keeping your logic portable. That is precisely why it survives downturns. The flashy, over-engineered, deeply locked-in systems are the ones built for a world where money is always cheap and growth is always up. That world does not last.

Software that outlives the cycle is built by teams who assumed, from day one, that lean years were coming. They kept systems reliable enough to trust, cheap enough to defend, and portable enough to move. When the downturn hits, their software is not on the cut list. It is the stable foundation everything else depends on, and that is the whole point of building it to last.

Have a system that has to last?