Case Study
Shipped by changing less
Two partners had modified Medeq’s off-the-shelf system so heavily that it could no longer be upgraded, and the product still never reached a customer. The third attempt left that system alone and built only the part that did not exist.

Marnus van Staden
Product & Process
TL;DR
Medeq had been trying to bring its own product to market for years, and two development partners had failed on fixed-price contracts. Both had worked by customising the off-the-shelf system underneath it, so Medeq was pinned to an old version of software it did not control before a single customer had used the product. The third attempt kept every bought thing standard, built the two pieces that did not exist, and was paid out of a share of one revenue line rather than up front. The first customer is live and running on it.
The Starting Point
Medeq is a South African software business serving the medical equipment servicing market. Their customers are hospitals, clinics, and service providers whose technicians log every device they service: ticketing, job cards, checklists, parts, customer sign-off, against an off-the-shelf service management system called iTOP that holds the customer, device, and asset data.
Kevin Joubert, Medeq’s managing director, had been trying to bring this product to market for a long time. Two development partners had taken on the build before us, and neither had delivered a functional platform. Each engagement had been a fixed-price contract; each had ended with money spent and nothing shippable to show for it. A third attempt on the same commercial basis would have meant gambling more cash on the same pattern.
There was a second problem underneath the first, and it is the one that matters. Both attempts had worked by modifying iTOP itself, pushing the new behaviour into the system that was only ever supposed to do the ordinary job. By the time the money ran out, Medeq was pinned to an old version of a product it did not control, and had paid for that twice over: once to build the changes, and again in every upgrade it could no longer take. None of it had reached a customer.
So Medeq took a different route. Instead of a third fixed-price build, the engineering was paid out of the result. The share is 25%, and it is scoped: it applies to field service agent subscriptions, which is the thing the software does, and to nothing else Medeq sells. Medeq’s iTOP training and setup income is Medeq’s. Equity was part of this one as well, which is unusual and not the shape most of these take.
What ReadyRun carries in return is the build, the improvements that keep following it, and the infrastructure underneath, so Kevin has no technical function to run and no second supplier to manage. The structure meant the next attempt did not deplete the cash Medeq needed for everything else, and it meant a shallow read of the problem was not affordable on either side. How that kind of arrangement is scoped is on the pricing page.

What got left alone
The thing that separates this attempt from the two before it is not a method. It is which software got changed.
Every bought part stayed as it comes. Most are open source, hosted on Medeq’s own infrastructure as a GoFast service rather than rented per seat. Two are paid subscriptions, because getting mail into an inbox and knowing how a product is actually used are specialist jobs with no in-house version worth having.
That is the whole rule: open source where it makes sense, a subscription where one is genuinely better, and something built only for the part that is Medeq’s own.
Kept standard
- iTOP. A few added fields and some relabelling. Otherwise out of the box, which is why Medeq is on the current version and can take the next one.
- Documenso, for signing. The legally binding signing process is not something ReadyRun wrote. It is a product that already does this properly, doing it.
- Openinary, for photographs. Storage and serving of every image a technician captures on a job.
- Twenty, for the pipeline. The CRM behind Medeq’s new public site, so an enquiry lands somewhere rather than in an inbox.
- Plane, for onboarding. In build: a project and its work items created for every new Medeq client, with each step visible to that client as it happens.
- Brevo, for transactional email. A paid subscription. Deliverability is somebody’s full-time problem and it should stay theirs.
- PostHog, for analytics. Also a subscription. What people do on the site, rather than how many of them arrived.
Built, because it did not exist
- The Field Service app. It reads customer, device and asset data from iTOP rather than keeping a second copy, and holds the tables iTOP has no support for. This is the part Medeq’s customers pay for.
- The Medeq Hub. The system that manages all of it, and the section below is about what it does.
All of it talks through published APIs, so any single part can be upgraded on its own. If one of those APIs moves, some integration work follows. That is an ordinary maintenance job, and the distance between it and a rebuild is the whole of the difference between this attempt and the last two.
Two things nobody asked for
The problem space had already defeated two teams, so the first job was to understand why. Sitting with the technician’s day, the iTOP integration surface, the signing scenario and the calibration rules turned up more interlocking requirements than a scope document could carry. The full workflow was mapped out step by step, as diagrams, and worked through edge case by edge case.
Two things came out of that which were not in the brief. The first was signing. A customer signature as proof of delivery is easy to meet on the surface, but if a Medeq customer ever disputed a signed job, what was there would not have held. The requirement was the discovery; meeting it was then a matter of putting Documenso behind it rather than writing a signing engine.
The second was where the work actually happens. Mobile readiness was not in the requirements, and a technician’s day is moving between sites, working on hospital floors and in patient rooms. A desktop-first app would have fought its user every hour of every day.
Both came from the same thing, and it is the part that is genuinely hard: reading the problem deeply enough that the platform fits the reality rather than the brief.
“They integrated the new app with the existing ITSM application, written in a different language and running on a different DBMS, effortlessly and securely, and in the process taught me a few things about that system that I have been using for years.”
Kevin Joubert
Managing Director, Medeq
What Medeq now has
Seven capabilities, each closing a specific gap in how the business runs.
- A mobile-ready technician app. Field agents log in on tablet or phone, work only their assigned tickets, and complete the full service workflow in one flow. This is the design decision that has drawn the strongest feedback from technicians in the rollout.
- iTOP integration that holds together. Customer, service, and device details flow from iTOP into each job card. Make, model, and serial number are validated against the equipment register in iTOP, and the workflow continues when a match is not found.
- A court-defensible signing process. Technician and customer signatures are captured on-screen through Documenso and saved as a PDF that cannot be altered. If a Medeq customer ever needs to produce evidence of a signed job, the document will hold up.
- Dynamic checklists that adapt to the equipment. The right checklist appears automatically based on the service type, sub-category, make, and model of the device on the job card. Field agents no longer work from a generic list. Only published templates are selectable, so Medeq controls what "done" looks like for every class of equipment.
- Calibration-aware test equipment tracking. Servicing medical equipment requires test equipment that is itself within valid calibration. A technician cannot complete a job card using test equipment whose calibration has expired, closing a compliance risk that paper workflows leave open.
- Service items with device-level rules. Generic items like cleaning cloths can be added to any job card, while device-specific items like a spring for a particular model are only selectable on jobs for the devices they fit.
- Production infrastructure they don't have to run themselves. Servers, networks, access controls, automated releases and scheduled backups, all co-managed on Medeq’s own infrastructure as GoFast services. One contract, and no operations function to hire.

The Hub, which serves two companies at once
The second thing that got built sits between the software running on a client’s infrastructure and the question of who is allowed to use it. When somebody signs in to a Medeq Field Service app, they are checked twice: against that client’s own iTOP instance, and against the Hub as a user Medeq has actually provisioned.
Medeq’s clients add and remove their own people. The Hub works out the pro-rata and the cancellation periods that follow, and then does something unusual with the result: it raises the invoice from ReadyRun to Medeq, and the invoices from Medeq to its clients, inside Medeq’s own accounting system. It is wired into two companies’ books at the same time.
It also serves Medeq’s new public site, with Twenty behind it catching enquiries. That site is live at medeq.readyrun.tech and moves to the main domain when it suits Medeq, not when it suits us. Nothing about this has been a switchover; the pieces move into place one at a time, disturbing as little of the working business as possible.
The Hub is where a detail worth naming lives. ReadyRun does not charge Medeq per user. Medeq does charge its own clients per user, because that is how its market works, and the software supports that without a fight. Not charging per person is a position ReadyRun holds about its own pricing, not a rule imposed on the businesses it builds for.
The Hub was designed and built by Daniel Pieterse, end to end.
The results
- A product Medeq can sell. After two partners could not deliver one, the first customer is live and running on it. Medeq is now positioning for the second rather than explaining why the product is not ready.
- Evidence that holds up. Every job card carries its evidence from ticket to signed closure: the device verified against the register, the exact checklist version used, every reading with its limits, and the calibration certificates bound into the signed report. It is the kind of document a lawyer would be happy to work with.
- Service quality built into the workflow. Dynamic checklists, calibration checks, and device-aware service items mean the right procedure, equipment, and parts are applied every time. Consistency no longer depends on what a field agent remembers.
- A build that did not have to be paid for up front. The share of one revenue line made the third attempt possible at a moment when another fixed-price contract would not have been. Neither side gets paid unless the software earns.
- Software that can still be upgraded. Medeq is on the current version of iTOP and can take the next one. That was not true after either of the first two attempts, and it was not true before a single customer had used the product.
“I had a legacy app that required a customer signature as proof of delivery. The team not only got this right in the new app, but also added a professional, legally binding signing process that will stand up in court if needed. I never even considered that aspect when I gave them the brief.”
Kevin Joubert
Managing Director, Medeq
What Medeq changed about how ReadyRun works
Software teams normally split a build down the middle: one developer works the screens, another works the rules and the data, and every feature crosses that seam twice. This build did not run that way. With AI in the toolkit at every layer, each engineer carried their piece end to end, from the screen a technician touches down to the rules and the integration underneath it.
The reason that belongs in Medeq’s study is what it meant for the engagement: fewer people on the build, no feature waiting for the other half of itself, and one person answerable for the whole of a thing rather than half of it. Medeq is where the old split got retired, and everything since has been built this way.
“They have solid skills and leading edge technology coupled with best practice processes. If you want a high quality application that integrates seamlessly with your other systems, looks good and works out of the box, these guys can deliver. No more struggling with the cumbersome communication and language barriers of the offshore teams, or trying to get legacy programmers out of their comfort zones to use the ‘new’ stuff.”
Kevin Joubert
Managing Director, Medeq
Recognise the situation?
Every business has a version of the Medeq story: a product that should be shippable but is not, previous attempts that did not get there, and a market waiting for the version that works. If that sounds familiar, we would like to hear from you.