Property and development management

Units, listings, tenancies and sales tracked against the property rather than the deal — with the offers, documents, deposits and approvals that each one accumulates over the years it stays on the books.

Talk about scope

The deal moves faster than the paperwork

Property software fails in a specific way: the transaction progresses in phone calls and the system is updated afterwards, if at all, so within months it holds a version of reality nobody trusts and everyone works around. The fix is not more fields. It is making the system the place the next action lives — who owes what to whom, and by when — so keeping it current is how the work gets done rather than an administrative tax paid on top of doing it.

One unit · one seasonA record with a status field says "listed, 9,100,000" and can answer none of the questions below. Every one of them is asked at the moment a deal collapses, which is the same moment the history was overwritten to get to the current state.
12 FebListed9,500,000
03 MarOffer8,900,000 · declined
19 MarPrice change9,100,000
02 AprOffer9,050,000 · accepted
28 AprWithdrawnbuyer finance failed
06 MayRe-listed9,100,000
  • What was it first listed at, and when did that change?
  • How many offers, and why was the first declined?
  • How long was it under offer before it fell through?

What we would build

A property is not a row, it is a timeline

The same unit is listed, viewed, offered on, taken off market, re-listed at a different price, and eventually sold or let. Model it as a record with a status field and the history is destroyed on every transition — which is exactly the history anyone asks for when a deal falls through and they want to know what was agreed and when.

Money that is held rather than earned

Deposits, retentions and client monies are not income and in most jurisdictions cannot be mixed with it. That is a structural decision about the ledger, made once at the start: separate accounts, separate reconciliation, and a rule that no report can quietly total them together.

Every party sees a different slice

A vendor, a buyer, an agent, a contractor and a lender all need part of the same file and none of them may see the rest. Permissions here are not an admin screen — they are the data model, and retrofitting them onto a system that assumed one internal team is close to a rewrite.

When not to build this

A packaged product is the right answer more often than a development company usually admits, and if your problem is an ordinary one that something off the shelf already solves, we will tell you so rather than quote for it. What follows is the case for the other answer — the conditions under which building is worth what it costs.

The workaround has become the process

A packaged system that mostly fits leaves a residue — the spreadsheet kept alongside it, the step done by hand every month, the field used to mean something it was not named for. When that residue is where the actual work happens, you are already maintaining custom software, just without any of the benefits of having built it.

The thing you do differently is the thing it cannot do

Every business has a few processes that are genuinely its own, and those are usually the ones it competes on. Off-the-shelf software is built for the average of a sector, so it handles the ordinary parts well and the distinctive part not at all. Building is worth it exactly where that overlap fails, and rarely anywhere else.

A vulnerability shared by every deployment

A vulnerability in a packaged product is a vulnerability in every deployment of it, and attackers only have to find it once. A system built for one business is not on that list.