Underneath the app and the portal sits an engine that reads unstructured resumes, structures what it finds, verifies it against official records, and uses the result to match people to roles and to each other. This is what makes a healthcare network different from a general one.
A resume arrives as a PDF or a Word file — prose, tables, inconsistent headings and all. The parsing engine extracts the text, identifies its structure, and writes the content into discrete, searchable records.
Because each section is stored as data rather than text, a facility can filter on an exact certification, a specific residency, or a state licence — and the platform can match a professional to a role on the same detail.
A parsed profile is matched against the national provider registry using a set of identity heuristics. Once a match is established, the associated public record is linked to the professional and carried through the platform.
National provider identification matched and linked to the profile.
Licences held by state, with issuing detail and expiry carried on the record.
Prescribing and programme registration numbers associated with the verified identity.
Registered practice locations and other verifiable public record attached to the profile.
Why it matters. A facility looking at a Locumfy profile is not taking a candidate's word for a licence. The verification state travels with the credential — through search results, through an application, and onto the standardized resume.
Reformatting a resume for every submission — and stripping out the personal details a third-party submission is not allowed to carry — is the manual task that consumes recruiting time. Locumfy generates the document instead.
Structured profiles make it possible to reason about who is likely to know whom. Shared employers, overlapping dates, the same school, the same specialty and the same geography all contribute to a match score, and the strongest candidates surface in the Grow tab.
Two clinicians who worked the same unit in the same years are far more likely to know each other than two who simply share a title.
Schools, residencies and internships place people together at a point in time — a strong signal the graph uses.
Within a discipline and a geography the professional community is small, and the suggestions reflect that.
Applications and timesheets each move through an explicit set of states. Nothing is implied, and both parties always know where a piece of work stands.
| State | What it means |
|---|---|
| Applied | The professional has applied and the facility can see the application. |
| Withdrawn | The professional pulled out before acceptance. The application closes and becomes read-only. |
| Accepted | The facility accepted. Every other open application for that professional is set aside so nobody is double-booked. |
| Declined | The facility passed on the application. |
| Complete | The facility closed the assignment. Approved hours stand as the record of the work. |
| State | What it means |
|---|---|
| Open | The professional is recording hours against an active assignment. |
| Submitted | The professional has signed off the week and sent it to the facility. |
| Approved | The facility that posted the role has reviewed and approved the hours. |
| Rejected | The facility sent it back; the professional can correct and resubmit. |
| Paid | The approved hours have been settled and the record closed. |
Only the right party can act. A timesheet can only be created against an assignment a professional has actually been accepted for, and only the facility that posted the role can approve it. The rules are enforced by the platform, not by convention.
The mobile app, the web experience and the facility portal all talk to the same versioned interface, which sits on a shared service and data layer. That is why feature parity across screens is structural rather than something that has to be maintained by hand.
| Concern | Approach |
|---|---|
| Interface | A single versioned REST interface, documented with an OpenAPI specification. |
| Authentication | Signed tokens issued by the platform, with distinct professional and facility roles. |
| Application layer | Feature-sliced services with a shared validation engine, on a modern cross-platform runtime. |
| Data | A code-first relational model covering profiles, credentials, jobs, applications, messaging and timesheets. |
| Web applications | Single-page applications for professionals, facilities and operations. |
| Mobile application | A cross-platform native app for professionals, sharing the same interface as the web. |
| Documents | Server-side document rendering for standardized and anonymized resumes. |
| Storage | Encrypted cloud object storage for uploaded documents. |
| Language models | A configurable model provider — hosted or run locally — used for profile summaries and assisted structuring. |
| Observability | Structured logging across the interface and service layers. |
The app and the web are built against the same contract, so a feature exists on both or on neither.
Professional and facility permissions are enforced at the interface, not assembled in each client.
Every state change is recorded, which is what makes the operations dashboard possible without manual reporting.
Because every profile, application, message and timesheet is structured data, the state of the platform can be read directly rather than reconstructed. The operations dashboard covers growth and registrations, marketplace liquidity, engagement and usage, recruiter activity, candidate supply and quality, hours worked, content and communications, and operational health — each filterable by profession, state, title and period.