About

Fifteen years of shipping.

I build web systems that carry real load and real money — and I have run the servers underneath them.

I have been building and automating software since 2011. I started with Python — writing automation and scripting that did the unglamorous work reliably: moving and cleaning data, driving APIs, and turning slow, repetitive manual tasks into scripts that simply ran on their own. That habit of automating the breakable, boring parts still shapes everything I build today.

From there I grew into full web development, taking projects end to end — architecture, backend, front end and deployment — usually as the only engineer on the project. Over the years that has spanned real-time data platforms, B2B portals, aggregation engines and payment integrations.

In 2019 I built and ran a UK hosting company. That meant specifying physical hardware, colocating it at Volta Data Centres in London, arranging network transit and peering with Cogent, and writing the automation that provisioned and billed customers. I was responsible for the machines, not just the code on them.

One of my earlier commercial products, back in 2015, was an international mobile airtime top-up service. It happened to accept Bitcoin as one payment option at a time when no processor offered that off the shelf, so I wrote the confirmation and reconciliation logic myself — but the product was reliable airtime delivery, not crypto.

How that shapes the work

Having been on call for infrastructure changes how you write software. I assume the network will fail, upstream APIs will return nonsense, and something will break at an inconvenient hour. So I build for it: retries with sensible backoff, idempotent operations, logging that actually helps at 3am, and failure modes that are visible rather than silent.

It also makes me sceptical of complexity that has not earned its place. If a flat file is faster and simpler than a database for a given job, I will use a flat file and tell you why.

How I work with clients

I work solo and take on a small number of projects at a time. You deal directly with the person writing the code — there is no account manager in between, and no handoff to a junior team once the work is won.

I operate as an independent sole trader, registered for tax in Pakistan as an individual under NTN 4021770-1 (held since 2011). I work day to day from Istanbul on UTC+3 — two hours ahead of London and one ahead of most of Europe. In practice that is a shared working day with UK and European clients: questions get answered the same day, and calls happen at reasonable hours for both of us. I work in English throughout.

Every project starts with a written scope and a fixed price. Work lands on a staging environment you can use throughout, payments are tied to milestones, and at handover you get the full source and infrastructure access. No lock-in.

How payment works

Every project runs on a written scope with a fixed price, split into milestones. You pay a deposit to start, then each milestone is invoiced as it is delivered — so you are never paying ahead of something you can already see working on a staging environment.

1

Scope and quote

We agree exactly what is being built. You get a written scope, a fixed price and a timeline before any work starts. No hourly estimates that drift.

2

Deposit

A deposit confirms the booking and starts the work. It is invoiced like any other payment, with a proper itemised invoice.

3

Milestone payments

Work lands on staging as it is built. Each milestone is invoiced once you can see it running — you are paying for delivered work, not promises.

4

Final payment and handover

On the last payment you get the full source code and infrastructure access. No lock-in, no dependency on me to make a change later.

Ways to pay

Card or online payment

A Stripe invoice with a payment link. Pay by card in your own currency — no account needed, and it clears immediately. This is the simplest option and the one most companies choose.

International bank transfer

Direct transfer to a business account. I can invoice from the United Kingdom, Turkey or Pakistan, so your finance team can pay whichever is cheapest and least awkward for them.

Payoneer

If Payoneer is already part of how you pay international contractors, that works too. Say so when we agree the scope and I will set the invoices up that way.

Every payment comes with an itemised invoice. If your finance team needs a purchase order reference, particular invoice wording, or a supplier onboarding form completed, that is all fine — tell me at the start and I will work to your process.

Technical background

Backend
PHP, Node.js, Python, MySQL, SQLite, REST and WebSocket APIs
Frontend
JavaScript, HTML5, CSS3, responsive and accessible interfaces
Infrastructure
Linux, Apache, Nginx, Postfix, TLS, DNS, Cloudflare, VPS and colocation
Integrations
Payment gateways, blockchain APIs, public register APIs, webhooks
Real-time
WebSockets, Socket.io, event streaming, scheduled ingestion pipelines
Next step

Want to talk about a project?

Tell me what you’re building. If it is not something I am the right person for, I will say so.

WhatsApp