Skip to main content

Blog

No fluff. No Jargon.

Just practical information to keep your business moving

Evolve Without Disruption

Book a 30-minute Consultation

What can we help you with?

You are here:

Do no harm

First, Do No Harm: What Software Can Learn from Medical Ethics

Is your current system causing frequent outages or production incidents? Are maintenance costs growing faster than business value? Is your internal team struggling with skills, capacity, or knowledge gaps?

In medicine, the phrase ‘First, do no harm’ is often associated with the Hippocratic Oath and echoed in the Nightingale Pledge. Both remind healthcare providers that their interventions shouldn’t make a patient worse than their original condition. While that phrase isn’t in the ancient oath, verbatim, the principle underpins modern clinical practice: cure, fix, remedy, yes; but never at the cost of worsening health.

Surprisingly, this principle has a lot to teach software developers, especially when we’re brought in to work on someone else’s codebase, apply surgical fixes, or help modernize legacy systems. In those scenarios, software harm takes the form of newly introduced bugs, system outages, security vulnerabilities, cost overruns, and postponed deadlines and features that no longer work. In other words, the software equivalent of a treatment gone wrong.

As a tech leader, reading this while sipping your morning coffee, it’s worth considering: when we change software, do we always ensure it’s better after our intervention than it was before we started?

Why ‘Do No Harm’ Matters in Software

Software isn’t a biological patient, but it is a living system that businesses depend on. For many it is the life blood of their bottom line and poorly managed changes can cause:

  • System instability
  • Security vulnerabilities
  • Data loss
  • Increased technical debt
  • Disrupted customer experiences

These outcomes are the software equivalent of harm and can be expensive. In fact, outdated or poorly maintained systems can cost businesses millions in downtime, delayed projects, and maintenance overhead. According to one industry report, enterprises can lose up to $370 million annually as a result of legacy systems dragging down productivity and stalling innovation.

When the Principle Applies: Codebases That Need a Careful Touch

Let’s explore three common situations where we at STEP most commonly see the vital need to ‘do no harm’ most often:

1. Inherited Codebases

You join a new team or take over a supported product only to find code written by developers long gone from the company or project. Documentation is sparse(often nonexistent), there’s complex logic, and quirky dependencies (oh documentation, how we miss you). A business leader’s instinct is to just ask the team to ‘fix everything fast.’

But just as a doctor doesn’t prescribe medicine without first diagnosing the problem, developers shouldn’t refactor or rewrite without understanding intent, business context, and risk. Poorly scoped changes can introduce bugs that lead to outages impacting customers, internal teams, and the financial health of the company.

2. Fixing Vibe Coded Projects

Remember 2025’s word of the year … ‘vibe coding’? The practice of generating application code from natural-language prompts (often without developer oversight or validation). Remember how it was the laughingstock of the developer community? There are valid reasons its bad rep in the developer community. AI-generated code can be unpredictable and a security vulnerability. One study found that Gen-AI models chose the insecure option 45% of the time, even when functionally correct.

That means code can work and harm at the same time. So when a team (often a third party expert like STEP) is brought in to clean up AI-generated code they must proceed cautiously, with surgical precision, keeping the useful parts and fixing or replacing the risky ones.

3. Legacy Software Modernization (The “Strangler Fig” Pattern)

Last year we wrote about the benefits applying the Strangler Fig pattern when modernizing a legacy system. Simply put, instead of ripping out the old system in one massive rewrite, new functionality is built around, and eventually replaces the old system, in logical, incremental steps.

This approach is the epitome of ‘do no harm’ because it:

  • Preserves existing functionality
  • Reduces risk by deploying fixes in phases
  • Lets you test and validate before replacing complete legacy modules
  • Is a lower cost alternative to a complete re-write

When modernization is done as a disciplined evolution instead of a big-bang rewrite; systems stay stable and healthy while being improved.

A Checklist for Leaders Before Calling in External Help

Here’s a practical list for executives and technical leaders to assess whether it’s time to call in the third-party software surgeons:

  • Is your current system causing frequent outages or production incidents?
  • Are maintenance costs growing faster than business value?
  • Is your internal team struggling with skills, capacity, or knowledge gaps?
  • Is the code undocumented, brittle, or poorly understood?
  • Has the risk of change been evaluated (security, compliance, scalability)?
  • Do you have integration points that are poorly tested or risky?
  • Are business goals being delayed due to technical blockers?
  • Is modernization a priority in your strategic roadmap?
  • Are you measuring technical debt and its financial impact?
  • Do you have clear acceptance criteria for success?

If you answered yes to any of the first three or more than three in total, it may be time for expert help.

Did You Know?

STEP Software offers a free 30-minute consultation with our advisors to help you evaluate if you would benefit from third party support.

The Experience Advantage

Bringing in an experienced third-party team like STEP Software is not just ‘getting help;’ it’s about ensuring safe, predictable, business-aligned outcomes.

Here’s why a seasoned team matters:

  • Deep expertise in diagnosing risk
  • Structured modernization methodologies and development best practices
  • Incremental releases with automated testing
  • Security and compliance baked in
  • Minimized disruption to business operations

Instead of worrying, you get confidence.

Instead of downtime risk, you get stability.

Instead of fragility you getstability.

At STEP, our average client system reaches Time to Stability™ within the first 4 weeks of onboarding.

Final Thoughts

In medicine, the goal isn’t just to treat, but to leave the patient better than you found them. In software, that’s exactly how we should approach every codebase; especially ones we inherit, ones we rescue, and ones we modernize.

When we adopt ‘First, do no harm’ as a development principle, we shift from reactive firefighting to proactive stewardship, building systems that are safe, stable, and strategically aligned.

And that’s the kind of health every business deserves.

If you’d like help applying this principle to your modernization efforts or legacy applications, STEP Software is here to partner with you.

Let’s give your systems the (health)care they deserve.

Need something not listed here?

We’ve probably worked on it. If not, we’re quick learners.
Have a legacy system? We can build future-ready features right on top.