Independent developer. Here is how I work and who I work with.

The story

I started by fixing other people's websites. Small businesses would come to me with something an agency had built and abandoned, or a template that broke the moment they tried to change a price. The problem was almost never the design. It was that nobody had built the thing to be maintained by the person who owned it.

So now I build the whole thing properly. Marketing sites, booking systems, client portals, payment flows — the software a small business actually runs on. I use Next.js and Convex because they let one person ship and maintain something that would normally need a team.

I work with whoever is making the decision — a founder, an owner-operator, or one person with an idea and no company behind it. Individuals are not a smaller version of a business client; often the work is clearer because there is nobody to convince.

I would rather hand over something small that you can run yourself than something impressive that needs me forever.

What working with me is like

  • You talk to me, not an account manager

    The person you brief is the person writing the code. Nothing gets lost being passed along.

  • Fixed price, agreed up front

    You know the number before I start. If scope changes we agree a new one — no surprise invoices.

  • You own everything

    Code, domain, accounts, all in your name. If you want to move to someone else, nothing is holding you.

  • I say no to work that will not help

    If a cheaper approach or an off-the-shelf tool would serve you better, I will say so.

How I work with clients

Remote, worldwide. Timezone overlap with Europe and Africa is easy, and I keep evening hours when a project needs the Americas or East Asia.

Languages

I build multilingual sites properly: English, Arabic, French, Russian, Swedish and anything else with a translator behind it. Rather than tell you that, here is one price and one date, in six locales, formatted by your own browser as you read this.

  • en-GBEnglish
  • ar-SAالعربية
  • fr-FRFrançais
  • de-DEDeutsch
  • ru-RUРусский
  • sv-SESvenska

Formatted in your browser by Intl, not typed out.

Right-to-left is the part most people get wrong: mirrored layout, logical properties rather than hardcoded left and right, and typography that is chosen not inherited. A flipped stylesheet with English assumptions underneath is visible immediately to anyone who reads the language. It is not difficult — it just has to be decided at the start rather than bolted on.

Skills

The tools I reach for, and what I actually use each one to do.

Working on something?

Start a project