Skip to content

04 — Full-stack

Done has five meanings.Which one applies is in the proposal.

CoderConda develops web applications across every layer, from the interface to operations, and the level that counts as “done” is in the quote before the start; two to twelve weeks per project. A feature is rarely broken, just done at a lower level.

5Levels of acceptance
2–12Weeks per project
1Owner, every layer

The technical review takes fifteen minutes and costs nothing.

Level · Evidence5 levels

“It runs on my machine.”A program version that builds.

01The codereached

02The addressopen

The usual job ends here.

03The loadopen

04Operationsopen

05The handoveropen

02 — The five levels

01 — The code

“It runs on my machine.”

On one machine, everything runs.That proves nothing yet.

The first level is the cheapest, and it is the one nobody should lean on. A program version that builds says only this: the idea works technically. It says nothing about whether your people can use it, and nothing about your data.

Every project reaches this level. It is not a result.

02 — The address

“It runs at your place.”

There is an address.This is where the usual job ends.

Now somebody in your company can log in and use the feature. This is where most projects are invoiced, which is exactly why the expensive questions start afterward. Everything beyond it costs somebody time later, and no proposal says so.

From here on, every further level costs a decision.

03 — The load

“It runs on your data.”

Real data is messy.It always arrives last.

A test fixture is tidy. Your records are not: duplicate entries, empty fields, characters somebody pasted in years ago. The third level is one run against what you actually hold. It finds in an afternoon what otherwise surfaces in month three.

This level moves no deadline. It moves when you find out.

04 — Operations

“It still runs in four weeks.”

Software ages quietly.It should be noticed anyway.

A certificate expires, an interface changes its format, a disk fills up. At this level there is a log that somebody reads and an alert that arrives before a customer calls. That is the difference between an outage and an appointment.

Without this level, your customer tells you about your fault.

05 — The handover

“It runs without me.”

The last level is the handover.And it is the one that matters.

Accounts in your hands, a document a developer who has never seen the code can follow, and a meeting where they ask their questions. This level is why I do not sell dependency. Anyone who cannot leave without something stopping has handed over nothing.

A handover nobody rehearsed is a claim.

Level 1 of 5

Level · Evidence5 levels

“It runs on my machine.”A program version that builds.

The codereached

The addressopen

The usual job ends here.

The loadopen

Operationsopen

The handoveropen

03 — The right level

The highest level is rarely the right one.

After five levels the obvious move is to order the fifth every time. That is expensive and usually wrong. What counts is not the height but that the level is named beforehand. An unnamed level gets negotiated later, and later it is negotiated by whoever is more tired.

Three projects, three levels

  • A prototype that answers one question.

    01

    02

    03

    04

    05

    02The address

    It gets thrown away afterward. A handover would be money spent on something nobody takes over.

  • A feature in daily operations.

    01

    02

    03

    04

    05

    04Operations

    It runs every day and nobody extends it. The log weighs more than the document.

  • An application your team takes over.

    01

    02

    03

    04

    05

    05The handover

    Here the documentation is the deliverable, not an extra on the final day.

The level belongs in the proposal, not in the argument afterward.

04 — The evidence

One system, four layers.One person built it.

Snipeflip is a trading platform that processes its operations on lean infrastructure. The figure beside it is here not because it is large but because it is a consequence: interface, data model and operations were decided together instead of negotiated one after another.

The last twenty per cent, from the database to the server0:50 · EN

Spoken in English · subtitles in English

SnipeflipTrading platform

2,500operations per day
1server, not a cluster
2025Year it went live

Levels evidenced

Level · Evidence5 levels

“It runs on my machine.”A program version that builds.

01The codereached

02The addressreached

The usual job ends here.

03The loadreached

04Operationsreached

05The handoveropen

This case does not evidence the fifth level, and I do not claim it here.

05 — What is fixed

Scope varies.The rules about it do not.

Two projects are rarely the same size. I name the amount in writing after the first call, before anything is built. Everything else is fixed: how the scope comes about, when the price starts to hold, who owns the code and what the first step costs.

The review
Fifteen minutes by video, at no cost. Afterward it is settled: feature or product.
The scope
In writing, before the first line exists: what is included and what explicitly is not.
The level
One of the five, named in the proposal. A higher one appears as its own line item.
The price
It holds from the go-ahead and does not move. If the scope changes, it changes visibly.
The contact
You write to me, not to a mailbox. A reply within two working days.
The code
Yours from day one, in your own repository. Even if the work stops early.

Excerpt from a scope

Included

  • Interface, API, data model
  • Tests for the described flow
  • Deployment and a log

Not included

  • Changes to the existing billing run
  • Training beyond the acceptance meeting

Acceptance at level 04 — Operations

ResponsibleDamjan Savić

An excerpt, not a proposal. Yours names your feature.

15minutes for the review
€0up to the proposal
1price, fixed beforehand

06 — The cut

Three cuts belong here.Three belong somewhere else.

Not every project is full-stack development, and an offer that accepts everything helps nobody. Three shapes are built under this name. Three others have a better home, and it is named beside them.

Right here

  1. One bounded feature2–3 weeks

    A process that runs by hand today becomes a form with a database behind it.

  2. An integration of two systems3–6 weeks

    Two programs holding the same data reconcile themselves instead of somebody retyping them.

  3. An application taken over6–12 weeks

    Somebody else’s code that has to keep running and keep growing. The effort sits in the legacy.

Better elsewhere

  1. Portal & Custom Software

    Roles, permissions and an area where your customers work for themselves.

  2. Process Automation

    A process meant to stay exactly as it is, only without your involvement.

  3. Website & Content

    A site that gets found and explains what you offer.

Your project fits none of the six rows.

Then the review exists for exactly that. Fifteen minutes are enough to say whether I am the right person. If I am not, I say so in the same call and name who is better placed.

07 — The objections

Four sentences always come.Here they stand beforehand.

Four objections come up in every one of these conversations. Answering them here saves you the meeting in which you would have to raise them.

  1. “We already have a developer.”

    Concerns level 04Operations

    Good. Then the question is not who builds but who owns operations. Most developers are booked to build, not for what comes afterward.

    • Operations
    • Logs
    • On call
  2. “What happens if you drop out?”

    Concerns level 05The handover

    A fair question, and it is the reason the fifth level exists. Accounts are yours, the code sits in your repository, and the handover is rehearsed rather than promised.

    • Accounts with you
    • One document
    • Rehearsed handover
  3. “Can you take over our code?”

    Concerns level 01The code

    More often than a rebuild, yes. Before any commitment comes a look inside: state, dependencies and operating model decide whether extending or rebuilding is the more honest route.

    • Technical review
    • Legacy
    • An honest answer
  4. “Why do you not name a flat price?”

    Concerns level 03The load

    Because a flat price on an unknown scope has two outcomes: it is padded, or it gets renegotiated. After the review a fixed price stands in the proposal, and it holds.

    • Fixed from the go-ahead
    • No surcharge
In fullFour sentences always come.
Operations

A developer in house is an advantage, not an obstacle. The work left over is rarely the building: it is the fourth level, which nobody budgeted time for. Whoever sets up a log has to read it, and whoever sends an alert has to be reachable when it arrives. In cases like these I often take on that level alone, with a written boundary naming which systems are covered. Your developer keeps building, and the phone rings at my end.

OperationsLogsOn call
The handover

The honest part of the answer is that a person can drop out and so can a company. The difference is not size but what exists the day after. With me that is three things: the accounts are in your name, not mine. The code sits in your repository from day one. And there is a document a developer who has never seen the project can read without asking, because you and I walked through it together once. A handover nobody rehearsed is a claim.

Accounts with youOne documentRehearsed handover
The code

A takeover always starts at the first level, even when the application has been in production for years: before I promise anything, it has to build on my machine. That sounds small and is the most common place a project gets stuck. After that I look at three things: how many dependencies are unmaintained, whether there is a repeatable path onto the server, and what happens when an input is wrong. The recommendation comes out of those three answers, and sometimes it is to take over nothing.

Technical reviewLegacyAn honest answer
The load

The website service carries a price on the page because it is one scope: the same steps, the same deadline, every time. This offer is not a scope but a way of building, and it runs from a feature in two weeks to an application taken over across months. A single figure over that would either be high enough to punish the small case or low enough to be renegotiated in month three. What I fix instead: the price of the first step, which is nothing, and the moment from which the price holds.

Fixed from the go-aheadNo surcharge

08 — Appointment

A look at your company.Talk it through with me.

Pick a time that suits you straight from the calendar. I go through with you where your company stands and what is worth doing. No obligation and no sales pressure.

15 minutesno obligationwith the founder
Damjan SavićFirst call · 15 minutes · video
cal.com/coderconda

The calendar is hosted by cal.com.

Loading it opens a connection from your browser to cal.com (USA), which transmits your IP address; cal.com may set cookies when it loads. You can also go straight there instead.

Open at cal.com