Wasay.

Full Stack Engineer

Abdul Wasay

I build SaaS and CRM platforms end to end, from Postgres and Node.js APIs through to the interfaces on top.

Available for remote work

Correct under load beats clever.

Data migrations that don't lose rows. Pipelines that resume where they failed. Interfaces that stay fast at a hundred thousand records.

Work

Systems running in production.

  • Salesforce → DealerIQ migration

    Serverless ETL that moved a dealership’s entire Salesforce estate

    350k+
    records migrated
    500+
    field mappings
    44s
    regression suite, 850 records
    AWS Step FunctionsSalesforcesource01Extract + joincheckpointed02Transformcomposite schema03Loadsigned webhookIQ350k+ records500+ field mappingsS3 checkpoint storelast good offsetresume from last checkpointRegression suite850 records · 44sAWS Step FunctionsSalesforcesource01Extract + joincheckpointed02Transformcomposite schema03Loadsigned webhookDealerIQtarget350k+ records500+ field mappingsS3 checkpointlast good offsetresume pointRegression850 records · 44s
    Three decoupled stages. A failed run resumes from the last checkpoint rather than restarting a multi-gigabyte job.

    Problem

    Multi-gigabyte migrations fail partway through, and restarting from zero is not an option when the source is a live customer CRM.

    Built

    Extract-and-join writes checkpoints as it goes, so a failed run resumes from the last good one. Step Functions orchestrates, Lambda executes, S3 holds intermediate state.

    Designed and built the pipeline — at Hatzs Dimensions · TypeScript · AWS Lambda · Step Functions · S3 · Node.js · PostgreSQL

  • Dealership platform automating the full customer lifecycle

    DealerIQ interface
    4
    manual handoffs removed
    3
    modules led
    AcquisitionSalesFinanceService

    Problem

    A vehicle deal crossed four manual handoffs between separate systems. Every handoff was a place for it to stall silently.

    Built

    Event-driven jobs wiring the workflow to lender APIs, service scheduling and inventory. Plus voice and chat on Twilio and ElevenLabs, sharing conversation memory so a call resumes where the chat ended.

    Team lead, four engineers — built at Hatzs Dimensions · TypeScript · React · Node.js · PostgreSQL · AWS · Twilio · ElevenLabs

  • AI-assisted CRM for field service businesses

    Befer interface
    9
    businesses onboarded
    4,000+
    service jobs in production
    Voice noteLLM extractJob record

    Problem

    Technicians write jobs up from memory at the end of a shift, so parts, hours and follow-ups are lost between the van and the invoice.

    Built

    An intake assistant that turns a voice note into a structured job record — parts, labour hours, customer details, recommended follow-ups.

    Founding engineer, built end to end — at Hatzs Dimensions · React · TypeScript · Node.js · PostgreSQL · OpenAI API · AWS

Side Projects

Built for myself.

  • intent-engineWork in progress

    View repository ↗

    Niche and city in, enriched lead list out

    Maps scrapeLLM enrichOutreach draft
    Stages run as background jobs on Celery + Redis, with per-user history.

    FastAPI · Next.js · Playwright · Celery · Redis

  • CareerPulseWork in progress

    View live demo ↗

    Job application tracker, minus the spreadsheet

    React · TypeScript · MongoDB

  • horology-api

    View live demo ↗

    Any GitHub profile as an interactive 3D mechanical watch

    Next.js · React Three Fiber · Three.js · Zustand · GitHub API

Open Source

  • TanStack/query★ 50kMerged Aug 2026

    Fixed prototype-property false positives in no-unstable-deps

    The eslint-plugin-query rule flagged inherited Object.prototype members as unstable dependencies, so valid code failed lint. +57/-3 across three files.

    View the pull request ↗

Approach

How I work.

Most of my work is the unglamorous middle: migrations that have to not lose rows, pipelines that resume where they failed, and interfaces that stay fast once the table has a hundred thousand records in it.

  1. 01 / 04

    Before the code

    Design first

    Write the design document, review the architecture, then open the editor. Large features rarely need rewriting when the disagreement happens on paper.

    Made design docs and architecture reviews standard practice at Hatzs.

  2. 02 / 04

    While it runs

    Build something you can watch

    A background job that fails silently is worse than one that crashes loudly. Logs, dashboards and alerts ship with the feature, not after the first incident.

    Alerting that caught webhook failures and stalled jobs before customers noticed.

  3. 03 / 04

    When it breaks

    Fix the cause

    A retry around a flaky call buys a week. Finding out why it is flaky buys the rest of the year.

    Deploys went 38min to 11min by fixing Docker layer caching, not by adding machines.

  4. 04 / 04

    After you leave

    Write for the next engineer

    Code is read far more often than written, usually by someone with less context than the author had. That person is frequently me, six months later.

    PR standards still in use across the team; three engineers mentored to first deploy.

Shipping professionally since June 2023, and finishing a CS degree alongside it — which mostly means I've written a lot of production code between lectures.

Based in
Lahore, Pakistan
US, UK, EU and Gulf teams.
Education
Lahore Garrison University
BS Computer Science — in progress · Expected June 2026

Experience

DealerIQ and Befer are products built at Hatzs Dimensions, not separate employers.

  1. Feb 2025 — PresentCurrent

    Lead of Product Operations / Full Stack Engineer

    Hatzs Dimensions·Lahore

    Player-coach across three SaaS products. Led DealerIQ delivery across the Sales, Acquisition and Service modules with a team of four. Release cycle 3 weeks to 5 days via parallel CI and per-branch previews.

  2. Oct 2023 — Jan 2025

    Software Engineer

    Hatzs Dimensions·Lahore

    REST APIs across three SaaS products, including founding engineer on Befer. OAuth 2.0 SSO. Deployment time 38min to 11min.

  3. Jun 2023 — Sep 2023

    Frontend Engineer

    Hatzs Dimensions·Lahore

    First engineering role. 20+ production screens, page load 4.1s to 1.6s, a 28-component shared library.

Stack

Languages
TypeScript · JavaScript · Python · SQL
Backend
Node.js · REST APIs · Event-driven architecture · Job queues · LLM & voice AI
Frontend
React · Next.js · Tailwind CSS
Data
PostgreSQL · Schema design & migrations
Infra
AWS (Lambda, S3, Step Functions) · Docker · CI/CD · Logging & alerting

Contact

Let’s talk.

Looking for remote full stack work, employed or contract. I've worked with international teams since 2023 — no relocation or sponsorship needed.