How we work

Start with what you want to build or improve and the result that matters first. Before deciding how to proceed, you can review what we propose to do, its expected price, and approximate timing.

As work continues, we show what has been completed, send invoices for completed and accepted work, and keep the effects of changes to unfinished priorities visible.

Before you decide to proceed

We identify the work that is most useful now and organize it into a proposed starting point. You can see what is included, what can wait, important assumptions or dependencies, and any decisions we still need from you.

Included now
The work proposed for the first version or next group of improvements.
Can wait
Ideas kept visible for a later version or decision.
Important assumptions or dependencies
Information that the expected price or approximate timing relies on.
Decisions needed from you
Product or business choices that still need your input.
Expected price

Once the starting work is clear enough, we prepare a price estimate—the expected price of the work currently included. You can review this before deciding how to proceed.

What approximate timing is based on

After the starting work is selected, we agree roughly how much work to plan for each two-week period. This lets us estimate the approximate completion time for the first version or next group of improvements.

Selected work

The tasks included in the first version or next group of improvements.

Work planned for each two-week period

The approximate amount of work planned for each period.

Approximate completion time

How long the selected work is expected to take.

How progress and completion remain understandable

Current work

Updates can show what is being worked on, important blockers, and decisions that need your input.

The form and frequency of updates depend on the project and may use deployed changes, a shared work list, demonstrations, messages, or another suitable method.

Completed work

Completed work is described in the context of the feature, problem, release area, or technical improvement it supports.

Where useful, we also explain relevant evidence such as tests, deployment results, measurements, or updated documentation.

Billing reflects completed work

Invoices cover work that has been completed and accepted for billing.

The way completion is shown and accepted can vary with the work—for example through the released application, a demonstration, a shared work list, a progress message, or another suitable review method.

Change what comes next

Planned work is listed as tasks. You can reorder, remove, defer, replace, or add unfinished tasks as priorities change.

When a task already has an assigned value used to calculate price, you can see how including, removing, or moving it changes the expected price and approximate timing. This lets you decide which tasks should remain in the current plan and which should come later.

New tasks, or existing tasks whose intended result or major requirements have changed, are defined and assigned a value before their effect is added to the plan.

Tasks currently planned

Tasks selected for the first version or next group of improvements.

Tasks kept for later

Visible tasks that are not currently included in the expected price or timing.

Expected price
Reflects the valued tasks currently selected.
Approximate timing
Reflects the selected work and the approximate amount planned for each period.

When we ask for your input

You remain involved in decisions that affect the product, priorities, expected price or timing, important risks, or resources under your control. Routine engineering decisions remain our responsibility.

We ask for your input about

  • which result matters first and how priorities should be ordered
  • user-visible behavior and business rules
  • meaningful changes to the intended result or a major requirement
  • tradeoffs that materially affect expected price or timing
  • important product or technical risks
  • accounts, access, information, data, feedback, or other resources under your control

We normally take responsibility for

  • breaking selected work into technical tasks
  • choosing the implementation approach and code structure
  • routine technical decisions within the selected work
  • selecting checks appropriate to the change
  • routine investigation, implementation, and troubleshooting

If a technical decision would materially affect behavior, expected price, timing, risk, or a resource under your control, we bring it to you rather than treating it as a routine implementation choice.

When AI is used

We may use AI for research, planning, implementation, review, and documentation. An engineer remains responsible for decisions, reviews generated work, and selects the checks appropriate to the change.

Discuss your current situation

Tell us what you want to build or improve, what already exists, and which result matters first. The initial conversation is free.

Contact us