For 3PLs and shipping platforms

How Many Places Would A Charge Change Have To Be Made?

On one logistics platform the answer was nineteen, and no two of them agreed. Nobody in the building knew that: not the engineers, not the lead, not the tracker. It is why the estimates kept being wrong, and it is a number you can measure rather than argue about.

ShippedBuilt and run in production on a shipping and third-party-logistics platform. This is the segment our measured record comes from.

Read-only. We do not need production access to be useful.

What actually keeps this buyer awake
  • "We fixed that already." A defect returns and nobody can prove whether it is the same one.
  • Billing that is quietly wrong. Charge logic disagrees with itself across code paths, and a customer finds it before a test does.
  • Stock that disagrees with the warehouse. Two systems, two answers, no authority.
  • One person who knows how the deploy works.
  • Estimates that keep being wrong in a way nobody can explain. It reads as a team problem and usually is not.
We are not selling you a rewrite. We are selling the measurement that tells you whether you need one.
Who this is for

Operators Running Their Own Software

Third-party logistics operators and shipping platforms maintaining a platform that quotes, bills, allocates stock and talks to carriers. Not businesses buying an off-the-shelf WMS. Typically five to forty engineers, and a codebase between five and fifteen years old. A business where a software defect is a billing error or a shipment that does not move.

If that is you, the rest of this page is measurements from a platform much like yours, with the date each was taken.

Recurrence

The Thing Your Backlog Cannot Show You

A defect comes back. Somebody says "we fixed that already". Nobody can prove whether it is the same one, because each recurrence was filed as new work.

The same symptom, four times
Fixed four times across 100 days under four different ticket keys, with nothing in the tracker linking them. Each recurrence was, as far as the system was concerned, a new problem.
43% of commits carry a ticket reference
So even a careful trace from code back to tickets sees fewer than half the changes. The history is there; the thread connecting it is not.
A tracker cannot show you a recurring defect when it has no field for recurrence. That is not a process failure by your team. It is a measurement nobody had taken.
Measured, not estimated

The Census Produces A Number

The assessment is a census of your write paths. It runs read-only against your repository, and it answers a question normally settled by opinion. For a given behaviour: how many places implement it, and how many of those disagree with each other.

We publish the commands we ran, so you can re-run any of it later without us. Every figure in the deliverable carries the date it was measured.

How many places implement a behaviour
Charging for a shipment, connecting to the database, sending a notification. Counted, not estimated, so a change can be scoped against a number.
How many of those actually differ
The part that matters. Copies are cheap to maintain. Variants are what make a codebase unsafe to change, because the engineer fixing a behaviour cannot know which other versions differ.
Which duplication is harmless
Reported as prominently as the rest. Families duplicated across many sites without diverging once are a maintenance cost, not a correctness risk. Telling you the difference is most of the value.
What we could not establish
Stated explicitly. A census that reads as complete is misleading you about the one thing you most need to know.
On one logistics platform, that census found the charge calculation implemented in nineteen places, no two of which agreed (measured 2026‑08‑24). Nobody in the building knew, because nothing in the tooling could have told them.
Traced end to end

One Defect, Followed All The Way Through

A weekly billing process recomputed a charge column for the whole table instead of the billed week. Here is what happened next, in order.

1

The fix landed in three files

Correct, reviewed, merged. Nothing about it was careless.

2

A fourth file carried the same defect

Byte-identical to one of the fixed files apart from the missing clause. It was not changed, because nothing pointed at it.

3

The regression test passes

Written to prevent recurrence. It checks a hard-coded list of exactly the three files that were fixed. It is green, and it always will be.

4

Nothing was wrong

Not the fix, not the review, not the test. The defect survived all three. This is what "we keep fixing the same things" looks like from the inside. A codebase where a fix has no mechanical way to find its own siblings.

When stock disagrees with the warehouse

Inventory And Data Drift Detection

Two systems both believe they know a quantity, and they disagree. Anyone can diff two tables. The value is knowing which differences are real, and that comes from calibrating against an export your operators already trust. An uncalibrated reconciliation tool is a source of arguments, not answers.

We have built this. On the engagement we can cite, the calibration step surfaced a second, separate defect in the existing reporting: a ledger-attribution error nobody was looking for. It also found a generated report that contradicted its own totals row, because a row-limit clause interacted with a full-coverage label. That is what looking closely enough to calibrate tends to find.

What you receive
The detector, in your repository, on your infrastructure. Output is suspect records with a reason, not an alert count.
Operator documentation
What each detector means, which numbers are safe to act on, and the data-model rules that produce wrong figures when broken.
A stated calibration basis and date
Recalibration is a scheduled task, not an assumption. A figure we cannot explain is marked unexplained, never smoothed.
We do not correct stock
The detector surfaces; a human decides. Anything on a manually-counted or do-not-change list is never adjusted automatically.
A report is regenerated, never re-sent
A later calibration invalidates an earlier file retroactively, so re-sending yesterday's workbook can be worse than sending nothing. That goes in the operator documentation as a standing instruction.
What we sell, in order

Start With The Measurement, Not The Rebuild

Each step is worth buying on its own, and each one makes the next easier to scope. Most engagements stop after the first because the document answered the question.

Step 1

Change-Cost Assessment

Two to three weeks, fixed price. The duplication and write-path census, the recurrence trace, and a ranked list of what makes change expensive.

  • Every figure dated and sourced
  • The commands, so you can re-run them
  • Everything we could not establish, marked as such
  • You keep the document either way
Step 2

Correctness On The Money Path

Charge and billing reconciliation first, because that is where the cost is legible to the business and where a defect is a customer conversation.

Step 3

Drift Detection

Reconcile platform stock against the fulfilment system, calibrated against an operator-supplied export as ground truth. Project to build, optional retainer to operate.

Step 4

Platform And Deploy Hardening

Pipelines, environments and release process on retainer. We watch every gate fail on a planted defect. More on that here.

Why us rather than a bigger consultancy

Three Things You Can Check

We publish our counter-evidence
On one review of 104 tickets, 52 were instances of the pattern and 32 were counter-examples. Those were duplication that had not diverged, or a fix that did reach every sibling. Both counts ship in the same document. A review that only confirms its own thesis tells you about the reviewer, not the codebase.
We publish our own errors
Our first pass at the duplication count reported 4.37 million lines. It had walked fourteen local copies of the tree. The figure was wrong by a factor of eleven, and the correction shipped in the client's deliverable rather than being quietly fixed.
We hand work back deliberately
An engagement closes with a written packet, held to automated content gates on every build. One of those gates re-reads the rendered document rather than trusting the tool that produced it. A disclosure error in a delivered PDF cannot be recalled. On one engagement it caught a reference that a plain text search had missed, because the phrase was wrapped across a line break.
What we won't tell you

Two Claims You Should Take Apart

If a supplier offers you either of these without a baseline, two questions will usually dismantle it. We would rather not be that supplier.

That we made anyone 30% faster

We did not measure delivery speed before and after on that engagement, so we have no such number and will not invent one. What we can show you is the finding and the deliverable.

That this caused a specific outage

We never traced one, and the client's own deliverable says so in those words. What we can show you is how many places a change has to touch. What that has cost you is yours to judge. You have the incident history and we do not.

That you need a rewrite

You have probably been quoted one before, and it is a fair reason to distrust consultancies. The assessment is how you find out whether you need one. On this platform, fifteen function families were duplicated without diverging at all.

That your engineers are the problem

The finding is structural. On the platform above, a change to charge behaviour had nineteen implementations to consider and no mechanical way to find them. Those engineers were not slow. They were working without a map.

Also from TechJoy

The Rest Of The Stack

Talk to us

Ask The Uncomfortable Question

How many places would a change to how you charge for a shipment have to be made? If the honest answer is "nobody knows", that is the finding. It is what the assessment exists to turn into a number.

  • Read-only, no production access needed
  • 2–3 weeks, fixed price
  • You keep the document either way
  • We publish the commands we ran
  • Counter-evidence included, not omitted

Ask About an Assessment

We reply within one business day.

No spam. TechJoy will never share your information. We use your phone number only to reply.

Figures on this page come from a 2025–2026 engagement on an enterprise shipping and third-party-logistics platform. We measured them read-only against the production repository's main branch, on the dates shown. The client is not named. Every figure and its measurement basis are recorded in our internal evidence file. Ask and we will show you the working, including the counter-examples. We publish no improvement percentage for delivery speed, defect rate or cost, because we did not measure a controlled before-and-after and will not invent one.