How I work

No surprises. Just the work.

Hiring a developer means trusting someone with something that matters. So here is exactly how a project runs: what I do, what I need from you, and what you have in your hands at the end of every phase.

Six phases, and your part in each one

Pick any phase to see what happens inside it.

Phase 1 of 6

Discovery

Understand the problem properly before anyone writes code.

What I do

  • Ask about your business, not just your feature list
  • Map how people actually move through what you have today
  • Check what is realistic with your existing systems and data
  • Agree on what "this worked" will mean

What you do

  • One conversation, and honest answers in it
  • Share whatever exists: notes, sketches, a competitor you like
  • Tell me what you would consider a failure

What you have when this phase ends

  • A written brief in plain English
  • Scope, spelled out
  • The one number we are trying to move

Four things that do not change

Whatever the project is, these hold.

You always know where things stand

No silent weeks. Work goes to a staging link you can open yourself, so progress is something you see rather than something you are told about.

Scope is written down

What is included, and what is deliberately not, exists in writing before building starts. Changes are agreed out loud, never discovered in an invoice.

You own all of it

Code, repositories, hosting, domains, keys. Everything is in your name and handed over. There is no version of this where I hold your product hostage.

Built to be handed over

Readable code, real documentation, conventional tooling. Another developer can pick this up without me, which is exactly what you want from a one-person team.

The questions you are actually asking

Straight answers, including the uncomfortable ones.

Why work with one developer instead of an agency?

You talk to the person doing the work. Nothing is lost between an account manager, a designer and an offshore build team, and no one is quietly learning on your budget. The honest trade-off is capacity: an agency can put five people on a deadline and I cannot. If your project genuinely needs a parallel team, I will tell you that early rather than take the work.

What if the scope changes halfway through?

It usually does, and that is fine. New work gets estimated and agreed before I build it, so the change is a decision you make with the cost in front of you instead of a surprise at the end. The scope document is updated so we both keep working from the same version of the truth.

Who owns the code?

You do, completely, from the first commit. The repository, hosting, domain and third-party accounts are created in your name or transferred to you. There is no license, no retained rights, and nothing you have to keep paying me for in order to keep using what you paid for.

What if I need to hand this to another developer later?

That case is designed for. The stack is mainstream, the code is documented, the setup is reproducible from the README, and the handover document explains how the system fits together. Being replaceable is a feature. It is what makes hiring one person safe.

How do you price work?

Discovery and planning come first, because pricing anything before the scope exists is guesswork. Once the scope is written down you get a fixed price for that scope in writing, and you approve it before any build work starts. Ongoing work after launch is arranged separately, so you are never locked into something you have stopped needing.

What do you actually need from me?

Less than you probably fear, but not nothing. The parts that need you are marked in every phase above: one real conversation at the start, a document to read and correct, a prototype to click through, and a look at staging while it is being built. Projects slow down when feedback stops, not when clients are busy.

What happens after launch?

Monitoring is in place, so problems surface without you having to notice them first. You have every credential and a handover document. If you want ongoing work, whether that is new features, maintenance, or just someone to call when something breaks, it is arranged as its own thing rather than assumed.

How do we start?

Send a message describing what you are trying to build or fix. If it is something I can genuinely help with, the next step is one conversation to understand it properly. If it is not, I will say so and point you somewhere better.

Still reading? Then let's talk.

Tell me what you are trying to build or fix. If I am the right person for it, I will say so and we will start with a conversation. If I am not, I will tell you that too.