Bespoke software and application development
Web applications and SaaS in React 19 and TypeScript, with a Python or Firebase back end.
An MVP in six weeks and a complete product in four months, with tests, automated deployment and the handover included. If what I build takes payments, invoicing is designed in from the start against the record-keeping the Spanish rules require, not patched on at the end.
Who it is for
- Pre-seed founders with initial validation
- Businesses with an internal product to build
- Teams moving from no-code to code
Why it ends up being needed
A product that never ships hardly ever dies of a technical problem. It dies because the scope grew along the way: every week brought a reasonable idea, none was turned down, and the date moved so many times it stopped meaning anything. A year later there is a lot of code and no version you could show a customer.
The other common ending is a no-code tool that worked at first and is now a ceiling. It copes with two hundred records but not two thousand, it will not do a calculation that has become essential, and every new integration costs another subscription. Moving off it is not starting from scratch: it is keeping the business rules that have already been validated and writing them where there is no ceiling.
That is why the scope is closed first, and why something working is delivered every two weeks. Not to show progress: so that decisions get made about something you can actually use. A demo every fortnight changes a product more than any specification document.
What I deliver
- Functional specification — User stories, wireframes and the data model.
- Deployed application — Front end, back end and database, across dev and production.
- Automated tests — Target coverage of 70% or more on the business logic.
- CI/CD configured — A GitHub Actions pipeline with preview deployments.
- Technical documentation — README, architecture and onboarding guides.
- Backups and a tested restore — Automatic backups and one recovery done in front of you, not promised.
What is included
- Functional analysis and architecture
- Development, testing and deployment
- The code and the documentation are yours
- Three months of warranty
What gets decided before a line is written
- What goes into the first version — A minimum product is not a small product: it is one complete user journey, whole and with no gaps. You pick a single thing the user can finish and build it properly, instead of half a dozen things half-built. Everything else gets written down and prioritised later, with the product already out there.
- Schema database or not — Firebase removes infrastructure work and makes you keep consistency from the code; a relational database guarantees it and asks for more setup. If the business is relationships and reporting, relational; if it is documents and real time, the other one. Changing your mind halfway is the expensive part.
- What gets tested automatically — Covering all the code does not pay off and gives false comfort. What gets tested is the business logic — what it calculates, what it charges, what it decides — and the paths that cannot be repaired after the fact if they break. The rest gets covered when a real bug shows up.
- Who is going to maintain it — Decided at the start, and it changes what gets built. If an in-house team will maintain it, the stack is picked from what that team knows even if it is not the most brilliant. A product only its author can touch is not finished, it is on loan.
What is not included
- Brand design or visual identity from scratch.
- Writing the product copy or the sales material.
- Infrastructure and third-party service costs, in your name.
- End-user support after launch.
- Features agreed to be outside the closed scope, quoted separately.
What you need to have
- One person on your side who decides and is available at every demo.
- The scope of the first version agreed before starting.
- Access to the third-party services that need integrating.
- If migrating from a no-code tool: being able to export the data already there.
Frequently asked questions
Is the code mine?
Yes: the repository, the infrastructure and the documentation are handed over in your name. The handover is part of the price, not an extra.
Is six weeks for an MVP realistic?
It is, with the scope settled. What stretches an MVP is not the programming but changing your mind halfway, so the scope is agreed before anything starts.
And after delivery?
It ships with tests and automated deployment, so another team can pick it up without archaeology. If you would rather I maintained it, that is a separate agreement.
What if I want to change something halfway?
You change it: that is what the fortnightly demo is for. What gets agreed is what leaves the scope so the new thing can come in, instead of adding and quietly moving the date.
Can you continue a project another team started?
Yes, after reviewing the code and telling you frankly what is worth keeping and what is not. Continuing something with no tests and no automated deployment can cost more than rebuilding it, and that gets said before accepting.
What warranty does it carry?
Three months on what was delivered. The warranty covers what was agreed working as agreed; it is not a pot of hours for new features.