castomFLOW

Back-office and operations

Work with no owner.Everybody does a bit of it.

Every company has a layer of tasks that nobody was hired to do and everybody ends up doing: the file that has to be moved, the number that has to be checked, the approval that has to be chased, the export that has to happen before the accountant arrives.

The distributor with four systems.

A small distributor. Orders arrive in one system, stock lives in another, the accountant works in a third, and the warehouse runs on a piece of software from 2006 whose only interface is a CSV file dropped on an SFTP server. Nothing is wrong with any of them individually. The problem is entirely in the gaps.

Every morning somebody exports, imports, checks and corrects. It takes fifty minutes on a good day and two hours when the supplier feed has a new column in it. The person doing it is one of the two people who understand the business well enough to notice when a number is wrong — which is exactly why they should not be spending two hours a day on it.

Nightly, four systems04:02
  • ⚡TriggerFile appears on the supplier's SFTP.
  • 2ParsedSemicolons, byte-order mark, Polish headers. 4 118 rows.
  • 3CheckedCurrency and country codes against reference data. Two rows invalid.
  • 4PushedBatches of 200 into the stock system. Rate limit respected.
  • 5Written backAccounting entries created for the delta only.
  • !ExceptionsTwo rows filed with the row number and the reason. The other 4 116 went through.
  • ✉SummaryOne message at 07:00, held by quiet hours until then.

Paid steps: 0Cost of this run: nothing

Exceptions are the product.

The value of a workflow like that one is not that it moves four thousand rows. Any script moves four thousand rows. The value is that it moves 4 116 of them silently and puts the other two in front of a person, with the row number, the value that failed and the reason it failed.

Which turns a fifty-minute job into a two-minute one, and — more usefully — turns an invisible job into a visible one. Before, nobody knew the feed had two bad rows a week. They were quietly fixed by the person doing the import, and the supplier was never told.

Approvals that do not stall.

An approval is a wait. The run sits at that step, holding everything it knows, and costs nothing while it sits. If nobody answers within the period you set, it escalates, or it takes the default path, or it stops and files itself — your choice, and the choice is visible in the workflow rather than in somebody's head.

The common version is: chase after two days, escalate to a second person after four, and never let something sit for three weeks because the one person who could approve it was on holiday.

Someone stayed late for this.

The usual six

What people build here.

The nightly job

Export, transform, import, verify, report. Deterministic from end to end, which means it costs nothing to run and produces the same result every night.

Document routing

An invoice arrives as a PDF attachment. Fields are extracted, checked against the purchase order, and filed in three systems. The one that does not match goes to a person.

Onboarding and offboarding

A new colleague needs accounts in six places, and a departing one needs them removed from all six on the right day. The second is the one that gets forgotten.

Escalation

Anything older than a threshold, sitting with anybody, chased once and then escalated. The workflow is boring; the absence of it is why things sit for three weeks.

Compliance dates

A recurring obligation with a lead time — a renewal, a filing, an inspection — surfaced in advance rather than on the day, and re-surfaced if nothing happened.

Health checks

Poll the things that must be up, and raise one alert when something is not, rather than four hundred alerts when a network blips at 02:41.

Why it stays manual so long.

Because it is never anybody's project. It is too small to justify a developer, too specific to buy off the shelf, and too dull for the person doing it to make a fuss about. So it stays, and it grows, and eventually a company has three people whose real job is moving data between systems that were each sold as complete.

The bar a workflow has to clear is therefore low: it has to be quicker to build than the job takes to do for a couple of months. Describing it in a sentence and spending twenty minutes tidying it clears that bar comfortably for almost anything on this page.

Do not automate a bad process. If two people do the same job differently and both are certain they are right, a workflow will simply make one of them wrong faster and more consistently. Settle the process first; the automation takes an afternoon and the argument takes a fortnight.

Illustrations by GetIllustrations.com (Blues pack).