Working with businesses in Dubai that have outgrown spreadsheets or off-the-shelf software, I build applications in Laravel and React — CRMs, inventory dashboards, booking systems — designed around the specific workflow, not a generic template.

Day-to-day work covers back-end architecture, database design, front-end interfaces, and the integrations that connect a new application to whatever systems the business already relies on.

A tool nobody on the team actually uses is a failed project, regardless of how well it's built. I involve the people who'll use it daily before writing the first line of code, not just at the handoff.

routes/api.php
Route::middleware('auth:sanctum')->group(function () { Route::apiResource('orders', OrderController::class); Route::post('orders/{order}/fulfill', [ OrderController::class, 'fulfill' ]); });
CRMs Internal Dashboards Booking Systems Inventory Tools API Integrations Workflow Automation CRMs Internal Dashboards Booking Systems Inventory Tools API Integrations Workflow Automation

What this covers.

01

Application architecture

Structuring the back end so the application stays maintainable as features get added over time.

02

Database design

Modeling data around the actual business process, not a generic schema that fights the workflow.

03

Front-end interfaces (React)

Building interfaces the team will actually want to use daily, not just functional screens.

04

API development & integrations

Connecting the application to existing tools — accounting software, marketplaces, payment systems.

05

User roles & permissions

Structuring access so the right people see the right data, without over-engineering it.

06

Automation & workflow logic

Building the business rules that turn a database into an actual tool, not just a data entry form.

What I work with.

Laravel React MySQL / PostgreSQL Laravel Sanctum GitHub Postman

The kinds of tools
I build.

CRM

CRM systems

Customer and lead tracking built around the actual sales process, not a generic pipeline that doesn't fit.

Lead tracking Sales pipeline Custom fields
DASH

Internal dashboards

Real-time views into the metrics a team actually checks daily, pulled from wherever the data actually lives.

Real-time data Reporting Custom views
BOOK

Booking & scheduling

Custom booking flows and calendar logic that off-the-shelf scheduling tools don't quite handle.

Calendar logic Availability rules Notifications
STOCK

Inventory & ERP tools

Stock, order, and warehouse tracking tools built around a specific operational process.

Stock tracking Order management Reporting
PORTAL

Customer portals

Self-service areas where customers can check order status, account details, or submit requests directly.

Self-service Account access Notifications
API

API integrations

Connecting the application to accounting software, marketplaces, or any system the business already runs on.

Third-party APIs Webhooks Data sync
AUTO

Workflow automation

Automating the repetitive steps between systems that currently rely on someone doing it manually.

Automation Business rules Task triggers

Common mistakes —
and the fix.

Mistake

Building the application without involving the people who'll actually use it.

Fix

Sit with the team doing the work today — the workflow they describe and the workflow they actually follow are often different.

Mistake

Trying to build every feature in the first version.

Fix

Ship a working core first, then add features based on what's actually needed once people are using it.

Mistake

No plan for who maintains the application after launch.

Fix

Decide upfront who owns bug fixes and updates — an internal tool with no owner slowly stops getting used.

Mistake

Skipping proper user permissions early on.

Fix

Structure roles and access control from the start — retrofitting permissions after launch is messier and riskier.

Mistake

Treating the handoff as the finish line.

Fix

Plan for a support period after launch — the first few weeks of real use always surface things testing didn't catch.

From discovery to
ongoing support.

01

Discovery with the actual users

Understand the real workflow from the people doing it, not just the person requesting the tool.

02

Architecture & data modeling

Plan the database and application structure around that actual workflow, not a generic template.

03

Build the core first

Develop the essential features before anything nice-to-have.

04

Test with real users

Get the team using it before full launch, and fix what doesn't work in practice, not just in theory.

05

Launch & support

Go live with a defined support period, adjusting based on real usage.

FAQ

How is this different from just buying software?

Off-the-shelf software makes you adapt to it; a custom application gets built around your actual process — worth it once a generic tool starts costing more in workarounds than a custom build would cost.

How long does a custom application take?

Depends heavily on scope — a focused internal tool can ship in a few weeks; something with complex integrations takes longer.

Who maintains it after launch?

That's part of the initial conversation — I can stay on for ongoing support, or hand off with documentation if you have internal capacity.

Can it integrate with tools we already use?

Usually, yes — most systems have an API or a way to connect, and that's typically scoped early in the project.

GOT A WORKFLOW THAT
NEEDS SOFTWARE?

Tell me what the team is doing manually today — I'll tell you whether it's actually worth automating.

Start a conversation ↗