Work · Environmental restoration

Six thousand live restoration projects, and a project manager can see which of their edits the accounting system has not accepted yet.

A company that restores rivers, wetlands and habitat at national scale, assembled from nine acquisitions in eight years. Its financial system of record held the truth about every project and was not somewhere a project manager could work. So the actual planning happened in spreadsheets beside it, and the gap between the two was found at month end, by somebody reconciling by hand.

Client
A national land restoration company in the United States
Our part in it
Jon Dallas, primary developer, on a five-person team inside the consultancy the client engaged
When
2025
The size of the problem

The size of the portfolio this had to hold.

~6,000Live projects at once
383Project managers
9Acquisitions absorbed in eight years
9Regions to span

The project and manager counts are the client's own, established during the engagement and revised upward from an initial estimate. The acquisition count is from the company's own published announcements, 2014 to 2022, none of which disclosed terms. Their own site describes them as the largest dedicated provider of nature-based solutions in the United States; that is their description of themselves and no independent body has certified it.

What we built

A working surface between the people running projects and the system that holds the money. The financial system stays the system of record. Project managers plan, assign and report in something built for them, and every change travels back through an accounting approval before it is allowed to alter the record.

The work breakdown mirrors the financial system three levels deep, with the top two levels locked so the connection cannot be broken by somebody renaming a task. The connector itself uses OAuth 1.0, an authentication method the platform does not support as standard, so it needed the vendor's own approval to exist at all.

Every row stores a snapshot of its own last synced state. That is what lets the screen show a project manager exactly where their edits have diverged from the record, in five distinct states, rather than the usual choice between silently overwriting and refusing to save.

Around that: resource requests that become real assignments with a capacity warning when somebody is over-allocated, an employee view with a weekly schedule and an hours adjustment that routes to the project manager for approval, a leadership view with project health by region and a sixty day cash collection forecast, and a two-step wizard for copying a project that lets cost and duration scale independently.

A change starts where the work is and ends in the system of record, through an approval it cannot go around. The dashed return is the part that makes it usable: every row carries a snapshot of its own last synced state, so the screen can show a project manager where they have diverged.
Step by step

Why a system built for six thousand projects had to be rebuilt before it shipped, and what that was worth.

The engineering

This entry is here for the part that went wrong. The design was sound, the platform could not carry it, and finding that out early is most of what the engagement was worth.

The design, as scoped
HoldsEstimated
Projects~2,500
Cost items per project~23
Assignmentsseveral per cost item
WhereOne table
Stage 1

The plan was one table holding everything

One place for every project, every cost item and every assignment, which is the obvious design and the right one at the size everybody believed the portfolio was.

The estimate going in was about two and a half thousand active projects.

1 of 6
The project manager's dashboard from the system's own interactive mockup, with the role tabs and the budget state on each project.
The delivered system. The project manager's dashboard from the system's own interactive mockup, with the role tabs and the budget state on each project.

What happened once it was running

The system was cut back to a first release at the end of the engagement, with a set of features deliberately deferred rather than half built. What shipped is the part that changes somebody's day: a project manager plans where they work, accounting approves before anything touches the record, and the screen shows where the two disagree before month end rather than during it.

1,409Project documents generated from one template
3Levels of work breakdown, synced both ways
5Sync states a manager can see on a row
~260Development hours scoped for the first release
Counted from the delivered system and the engagement record

The document count was measured by surveying the live workspace and is 89% of everything in it. The rest is counted from the delivered system and from the engagement's own records. The portfolio and manager counts are the client's own figures, which is why they sit in the band above rather than here.

Why this page is short

Every figure on this page traces to something we measured.

This page once carried claims that described the work inaccurately. They came down in an audit of our own copy, and each one went back up only when its numbers could be traced to something measured. A case study you cannot check is worth nothing to you, and one that turns out to be wrong costs us more than it ever earned.