Case Study Automotive · Sales operations

Keep the sales channel alive, then make it smarter.

For this vehicle-buying business, SMS was the sales and dispatch pipeline. Mark Philippe Mirasol became the returning developer across five contracts and nearly seven years, stabilizing a different failure mode each time before extending the platform from a message handler into address, VIN, quote, dispatch and AI-assisted workflows.

Client
Anonymized vehicle-buying business
Engagement
April 2019 – March 2026
Scope
Messaging, CRM, dispatch & AI
Contracts
5
Tracked time
554h 10m
A vehicle dispatch operator managing inbound sales leads beside a tow truck
Vehicle Lead & Dispatch Platform: A fragile SMS sales channel became a durable quote-to-dispatch platform across five contracts.
By the numbers
<10% → >20%Outbound SMS response
5Contracts over one platform
554h 10mTracked delivery time
5.0Every ended contract

When text messages failed, revenue stopped with them.

Inbound replies silently disappeared. Outbound response fell below ten percent. A number was reported as spam. An expired certificate broke the webhook. One apostrophe crashed a database write. Shared hosting later made a per-minute send queue impossible.

Each symptom had a different root cause, and the system had passed through other hands before Mark took it on. Because every lead and deal moved by SMS, a patch that merely hid the current error was not enough.

The number pool became the foundation for an automated dispatch flow.

Mark rewrote the inbound handler, then designed a managed number pool: rate-limited sends, daily caps and a sticky sender that kept each customer on a consistent number. Response rose from under ten percent to above twenty percent.

Over later contracts he traced carrier filtering, repaired TLS, escaped unsafe message content and moved the services to AWS Lightsail when the host could no longer sustain the queue cadence.

From reply to dispatch

  • Google Maps address validation and CRM field population
  • VIN validation through an external API
  • After-hours replies with scheduled business-hours follow-up
  • Stage changes from offer through dispatch confirmation
  • OpenAI intent detection, later upgraded with RoBERTa confidence scoring and Redis conversation history
Timeline of five contracts and five distinct platform failures resolved between 2019 and 2026
Seven years of work followed one rule: diagnose the actual failure before building the next layer.

The operational system beneath the messages: response, stage progression and sender health.

Engineering note

A sticky, rate-managed sender pool solved two problems at once: it distributed volume without making the conversation feel random, and it gave later automation a stable messaging foundation. Every subsequent feature depended on preserving that reliability.

Mark Philippe Mirasol Project partner · the build

The sending pool built in 2019 is still load-bearing.

A troubleshooting contract became five engagements and 554 hours and ten minutes of tracked work on the same operating system.

Every completed contract ended at 5.0, and the original number-pool structure continued running after the infrastructure migration. The business gained one reliable path from inbound lead to validated address, offer, deal stage and dispatch.

Published Upwork review

“I've worked with Mark for years, and I'm going to be hiring him again for another project. He's helped dial in our systems with incredible code that always just works.”

PHP Twilio Zoho CRM AWS Lightsail OpenAI RoBERTa Redis
Role
Diagnostics, automation, infrastructure & AI
Partner
Mark Philippe Mirasol
Model
Returning engineering partner
Status
Handed over March 2026
Project partner Mark Philippe Mirasol

Next / Your build

Taking on new builds

Have something in mind?

Tell us what you're making. We reply within one business day, and you get a fixed price and a date in writing before any code.