From WhatsApp Chaos to Custom Tech: How We Actually Build
Automation, Custom Tech·automation

From WhatsApp Chaos to Custom Tech: How We Actually Build

We've been sharing our build process step by step over the past few weeks — problem discovery, solution derivation, alternatives evaluation, approach selection, implementation, and review. Each phase on its own tells part of the story.

But the whole story is more powerful. So here it is — all six phases, walked through one real scenario, start to finish. By the end, you'll know exactly how Dhron AI turns a messy operational problem into custom tech that actually fits.

75%

of digital transformation projects fail to deliver on expectations, according to Gartner. The #1 reason: the technology chosen doesn't match the actual business process. Not budget. Not talent. Fit.

This is how we fix the fit problem.

The Company We're Building For

Meet SwiftRoute Logistics

SwiftRoute is a mid-sized last-mile delivery company operating across three cities. 60 drivers. 400+ deliveries a day. A operations team of 8 people trying to hold it all together.

On paper, they're growing. In reality, their entire dispatch operation runs on:

  • WhatsApp group chats

  • Excel route sheets

  • Phone calls for updates

  • Manual daily reports

  • Printed delivery manifests

  • Gut feel for ETAs

Missed deliveries. Duplicate routes. No live tracking. No way to know what's happening until a driver calls in or a customer complains. They knew something had to change. They just didn't know what — or how.

The Dhron AI Process

Six Phases. One Outcome.

01

Understanding the Problem

Go beyond the symptom. Find the actual root cause before anything else.

SwiftRoute: "We need better tracking" → Real problem: No single source of truth for dispatch, routes, or delivery status.

02

Deriving the Solution

Listen first. Ask the right questions. Let the solution emerge from the workflow, not from assumptions.

SwiftRoute: Mapped every touchpoint — from dispatch 6am to last delivery 10pm — across all 3 cities.

03

Evaluating Alternatives

Check if an existing tool can do the job before committing to a custom build.

SwiftRoute: Tested 3 off-the-shelf TMS platforms. None could handle their hybrid model of owned + contracted drivers.

04

Selecting the Approach

Lock in speed vs scalability, tech stack, and integration depth before writing a line of code.

SwiftRoute: Web dashboard for ops + mobile app for drivers. Integrated with their existing CRM and WhatsApp Business API.

05

Implementation

Sprint-based builds. Weekly check-ins. Working prototypes early. No surprises at the end.

SwiftRoute: Live prototype by Week 3. Ops team using it alongside WhatsApp by Week 6. Full cutover by Week 10.

06

Review & Iterate

Launch is not the finish line. Measure, learn, tune.

SwiftRoute: Post-launch data revealed peak delay window (11am–1pm). Automated re-routing added in Sprint 8.

Phase 01 Understanding the Problem

Nobody Comes to Us With the Real Problem

SwiftRoute's operations head came to us with a clear ask: "We need a tracking system." Simple enough. Except when we sat with their team for two days and mapped their actual workflow, we found the tracking was just the surface.

The deeper problem: their dispatch process had no single source of truth. A driver could be reassigned in a WhatsApp message, noted on a printed sheet, confirmed over a phone call — and none of those three would match each other by end of day. By the time anyone knew a delivery had failed, it was too late to recover it.

On Day 1, we asked their senior dispatcher to walk us through a normal morning. Within 20 minutes, we'd found seven separate tools being used simultaneously to manage a single shift. None of them talked to each other.

A tracking system wouldn't fix that. A unified dispatch system might. This is why we never skip Phase 1 — the stated problem is rarely the real one.

Phase 02 Deriving the Solution

Before We Write a Single Line of Code — We Listen

Once we understood the real problem, we spent time with every person in the chain — dispatchers, drivers, warehouse staff, the customer service team. We asked three questions to everyone:

  • What does your day actually look like, step by step?

  • Where do things slow down or fall apart most often?

  • If one thing changed tomorrow, what would make the biggest difference?

The drivers didn't want a complex app. They wanted to confirm a delivery in two taps and move on. The ops team didn't want dashboards — they wanted alerts. That nuance changed everything about what we built.

"The solution isn't our idea — it's yours, engineered by us."

By the end of Phase 2, we had a complete picture of the ideal system — not from assumptions, but from the people living inside the problem every day.

Phase 03 Evaluating Alternatives

We Always Ask: Do We Actually Need to Build This?

Before recommending a custom build, we tested three established Transport Management Systems against SwiftRoute's requirements. Each one failed the same test: none could handle a hybrid driver model — where some drivers are full-time employees and others are contracted daily from a pool, with different payment structures, zones, and vehicle types.

We also explored a no-code route — patching together Airtable, Zapier, and a GPS tracking API. It worked in theory. In practice, it broke under the volume SwiftRoute needed to handle within 60 days of our conversation.

The alternatives check took four days. It saved SwiftRoute from spending months on a tool that would have failed at scale — and gave us clear justification for why a custom build was the right call.

This phase is what makes our recommendations credible. We don't build because it's the exciting option. We build because it's the right one.

Phase 04 Selecting the Approach

The Wrong Architecture Decision Here Costs Months

With a custom build confirmed, we locked in three decisions before touching any code:

Speed vs. Scalability

SwiftRoute needed something usable in 10 weeks. We scoped Phase 1 features tightly, leaving room to scale after validation.

Tech Stack Fit

Their internal team had one part-time IT person. We chose a stack he could maintain — no exotic frameworks, no steep learning curve.

Integration Depth

The system needed to talk to their existing CRM, WhatsApp Business API, and a third-party GPS provider. Mapped all three before Sprint 1.

We chose a web dashboard for the ops team and a lightweight PWA for drivers — so drivers didn't need to download anything. One decision. Saved weeks of onboarding friction.

Phase 05 Implementation

We Don't Disappear for Three Months

The build ran in two-week sprints. SwiftRoute's ops head was in every sprint review — not to approve designs, but to test the actual working system against real scenarios from their daily workflow.

  • Week 3:Working prototype of the dispatch dashboard. Ops team tested it live alongside their existing WhatsApp process.

  • Week 6:Driver-facing PWA deployed. 12 drivers onboarded in a pilot. First real delivery confirmed through the system.

  • Week 8:CRM and GPS integration live. Route optimisation engine connected.

  • Week 10:Full cutover. All 60 drivers. All 3 cities. WhatsApp group archived.

"A build that surprises you at the end isn't a build. It's a gamble."

At Week 6, we hit a scope change — the contracted driver payment logic was more complex than originally scoped. We flagged it immediately, adjusted the timeline by 4 days, and kept moving. No drama, because everyone was already in the loop.

Phase 06 Review & Iterate

Launch Day Is Just Day One

Thirty days after go-live, we ran a structured review with the SwiftRoute team. The data showed something we hadn't anticipated: delivery delays spiked consistently between 11am and 1pm — a window that hadn't shown up in any of our pre-build research.

Turns out, the 11am–1pm window was when contracted drivers finished their morning shifts and handed routes to afternoon drivers — a transition that had always been managed over WhatsApp and was now visible in the data for the first time.

We built an automated re-routing logic for that window in Sprint 8. The system now handles that transition without any manual intervention. SwiftRoute didn't know this problem existed until the custom system made it visible.

43%

reduction in failed deliveries in 60 days

2.5 hrs

saved per dispatcher per day

0

WhatsApp groups still in use for dispatch

The first version is never the last version. That's not a flaw — that's the process working exactly as it should.