How an Excel Hack Solved a Tough QA Problem
// Published On: Aug 26, 2026
One project from late 2017 still sticks with me as one of the more satisfying things I built in QA, mostly because of how little we had to work with.
This was well before AI code generators were part of anyone’s toolkit. If you hit a hard testing problem back then, you built the logic, the tooling, and the math yourself, from scratch. No prompting your way out of it.
I was working as a Senior QA Engineer on Oracle Field Service Cloud (OFSC), a platform that handles routing and scheduling for field technicians, ahead of its 18A release in early 2018. My colleague Maneesh M S, also a Senior QA Engineer, and I ran into a validation problem that took us a while to crack.
The problem: verifying an adaptive algorithm
Every activity in the system, installing a modem, repairing equipment, whatever it was, carried an estimated target duration. To keep scheduling accurate, the platform used an adaptive feedback loop that tracked each technician’s own performance on each type of activity. If a technician consistently finished a one-hour task in fifty minutes, the system would gradually recalibrate that technician’s personal average for that specific activity toward fifty minutes. If tasks kept running long, the estimate crept up instead.
That kind of continuous adjustment is great for routing, but a pain to verify. If we wanted to check how the algorithm behaved after a thousand completed activities, the “normal” way to test it meant calculating and checking every single iteration by hand, one after another. Nobody wants to do that a thousand times, let alone across every combination of edge cases we needed to cover.
Maneesh’s idea
The breakthrough came from Maneesh, who knew VBA inside and out. Instead of grinding through the math manually, he pitched a simple idea: model the algorithm in Excel, using VBA, with each row representing one completed job.
Feed the input parameters into row one, let the script carry the updated personal average down into row two, then row three, and so on. What would have taken days of manual calculation became something you could watch happen in front of you, row by row. It was a genuinely clever way to turn a math-heavy problem into something visual and easy to reason about.
Building it out together
Once Maneesh had the core idea working, we sat down and built it into something we actually relied on day to day. Between the two of us, we extended it to:
- Connect to the test environment database and pull the system’s real computed outputs across hundreds of test runs.
- Run our own independent calculations inside the VBA sheet based on the algorithm’s rules.
- Diff the database values against our expected results automatically, with color-coded cells flagging anything that didn’t match.
Catching problems before they shipped
This adaptive algorithm was a brand new addition to the system, so we relied on the tool heavily during the feature’s development. Because it could simulate and check calculations across a huge range of baseline values and technician histories almost instantly, it caught logic bugs well before they had a chance to reach production.
What started as Maneesh’s idea for handling one annoying calculation turned, through the two of us just building on it together, into a tool that saved us a lot of repetitive manual work and gave us real confidence in the algorithm’s behavior. The feature shipped, and the tool kept earning its keep afterward too, since the algorithm went through a few more rounds of improvement later on.
Why this stuck with me
It’s easy to think of QA as just running through test plans. But some of the best work happens when you stop doing that and build something instead: a small, purpose-built tool that makes an otherwise brutal validation problem tractable. We didn’t have AI to lean on, so we leaned on each other. Maneesh had the idea, and we built the rest of it side by side.
Have you ever teamed up with someone to build an improvised, unconventional tool to get through a hard testing problem? I’d be curious to hear how it went.
