Back to projects

Programming Analyst · 2019 — 2023

Oracle ↔ NCR compatibility

Making two systems work together that the vendor never intended to

Context

In restaurants, point-of-sale hardware and the software that drives it usually come from the same vendor — which is exactly why changing one forces you to change the other. One client had Oracle hardware and needed to run NCR software.

The problem

That combination did not exist. NCR did not support Oracle hardware and Oracle did not support NCR software: as far as the vendors were concerned, the answer was to buy everything again. The client's only alternative was replacing equipment that already worked.

What I did

  • Analysing how the software actually communicates with peripherals, below what either vendor documents
  • A Windows service that sits between the two and translates that communication, presenting Oracle hardware as compatible
  • Testing across the full sales flow, which is where a failure costs real money
  • Deployment at the client site and documentation of the procedure so it could be repeated

Outcome

Compatibility no vendor offered, running in production, with the client keeping its hardware. Still to be published: estimated saving versus full equipment replacement, and number of installations.

Stack

Windows services Node.js Aloha POS Oracle hardware Protocol debugging