One thread, cluster by cluster.
Five parts of one system, from the first sales conversation to cash, then a plain table of what is built and what is not. Every screen below shows illustrative data - no real names, rates or clients.
Know who you will need before you win the work.
A deal records what it is worth, when it might close and how likely it is. Then the part most tools miss: the people it will need if it lands. Three data engineers from January, a cloud architect from February.
- Deals carry value, probability and close date, and the seats each deal will need by skill and start month
- Staffing is forecast against work you have not won yet, with a warning 30 to 60 days ahead when the pipeline needs skills beyond your bench and hiring capacity
- A won deal becomes a project in one action: the seats scoped in the deal become positions to fill, with nothing retyped between sales and delivery
- Key metrics puts every module's headline number on one screen; each tile opens the screen that can act on it
Who is free, and when - asked six weeks early.
An assignment has a start date, an end date and an allocation. That is enough to answer the question a bench report cannot: who comes free next month, who has nothing after them, and which open seat they match.
- Roll-off forecast by week, with the revenue coming off the book
- Open seats on projects, with the skills each needs
- Suggested matches, with the reason the match was made recorded alongside it
- Proposing somebody and booking them are separate acts, with separate permissions
Why the last one matters. Naming a candidate for a seat costs nothing; booking them changes an allocation, a margin and a person’s week.
The pipeline, through to the person starting.
Requisitions, candidates, interview rounds and stages - ending where most ATS products stop and this one keeps going: a hired candidate becomes an employee with an assignment, in the same system, without a re-key.
- Direct, agency and referral sources, with the agency recorded because that is who the fee is owed to
- Interview rounds with panel access that does not leak the rest of the pipeline
- CVs stored once, downloaded through the application so every read is logged
Price it once. Find out when it drifts.
Rate cards by grade, client and date, with margin floors. Every assignment pins the rate it was agreed at, so a later change cannot quietly rewrite what last quarter cost.
- A booking below the margin floor is refused until somebody records a reason, and the reason is kept
- A report of every engagement priced off the rate card, and by how much
- Re-pricing an assignment is a recorded act with a reason and an effective date
- Projects, costed seats, budgets and target margin
- Multi-entity: bill from more than one company or state
From a logged hour to money in the account.
- Weekly timesheets with hour types, holidays marked on the right days
- Internal approval where you want it, client approval through a portal your client signs into
- Invoices generated from approved weeks, one line per day so a disputed line traces back to the work
- Multi-currency with the exchange rate pinned at issue, never recalculated
- Expenses claimed by the person who paid, approved by somebody else, and billed on when the project says they are billable
- Payments recorded against invoices, so “who has not paid us” has an answer; part payments are fine, overpayment is refused
- Vendor payables: agency and subcontractor invoices recorded against the same work, so what you owe sits next to what you are owed
Both sides of the cash gap. Contractors are paid in 15 to 30 days; clients pay in 45 to 60. Ornool shows payables against receivables, the number that decides whether you can take the next engagement.
Try it. Click any line on the invoice to see what it traces back to.
What is built, and what is not.
This table is kept current and checked every Friday. If it disagrees with the product, the table is wrong and we want to hear about it. Ornool is built and tested against a 5,000-employee tenant; it has not yet run under a customer's load.
Why we publish this. Every one of those gaps would come out in week three anyway. Finding out from a vendor’s own website is a different relationship from finding out from your own team.