BarqFix
A bilingual Arabic/English marketplace where customers book verified repair and home-maintenance companies — and where those companies get the tooling to manage availability, quotes, promotions and their own finances.
Home maintenance runs on word of mouth and unanswered phones.
Booking a plumber or an AC technician in Abu Dhabi means asking a neighbour for a number and hoping somebody picks up. The companies on the other end have no scheduling system, no quote history and no clear picture of what they are owed at the end of the month.
BarqFix verifies the companies, puts their availability online, and gives them an operations console for bookings, quotes, promotions and finances. Admins approve companies and hold the launch flags.
Every surface, by us.
One application, three domains, and a live re-platform.
BarqFix was moved off its original serverless host onto AWS without a rewrite and without losing a booking.
Host-based routing, not three deployments
A single Next.js application serves the branding site, the web app and the admin panel, routed by host header. Three deployments would have meant three things to keep in sync and three chances to ship a mismatched schema.
A re-platform, not a rewrite
The product moved from an edge-serverless stack to EC2 and Docker behind an ALB, with private S3 replacing the old object store and a systemd timer replacing the platform cron that drained the outbox. All of it is Terraform, with its own state.
The money columns were wrong, so we converted them
Amounts had been stored as real — a float. During the port every money column was converted to numeric(12,2), because a marketplace that rounds differently on two code paths eventually owes somebody an explanation.
Backups are tested, not assumed
PostgreSQL is self-hosted on the instance, so there is no managed failover and no point-in-time recovery. A pg_dump to S3 on a systemd timer is the only thing standing between the business and data loss, which is exactly why the restore path is exercised rather than trusted.
Verification documents never leak
Provider identity documents sit in a private bucket and are served only through authorised admin APIs. Object keys are never returned in an API response, so there is no URL to guess or forward.
What it runs on.
We build these for ourselves. We build them for clients too.
Everything on this page was designed, built, deployed and is operated by the same small senior team. If you have a product that needs the same treatment, start with a conversation.