Demands and Application
1. Dataset name
Demands & Applications - Resource Management
2. Description
Demand-level dataset that joins every Resource Management staffing demand to the applications it received. Each demand carries its program and project context, demand status, start and end dates, age and duration buckets, and application and shortlist counts. Each row represents a single application, with demand attributes (status, dates, business unit, job function, location, program, project, etc.). It is built from customer_views.positions (demands) and customer_views.applications, both scoped to the resourcing system. It is designed to be the primary source for demand creation, demand aging, and application match-quality analyses.
3. Source tables
- customer_views.positions — demands, filtered to the resourcing system; the anchor of the dataset
- customer_views.applications — applications to those demands, filtered to the resourcing system
4. Grain
One row per demand_id × application_id. Demands are the LEFT JOIN anchor, so a demand with zero applications still appears once, with all application-level fields (application_id, profile_id, application_ts, last_stage, match_stars, etc.) null. A demand with multiple applications appears once per application.
5. Dashboards supported
- Resource Management
6. Metrics supported
| Metric | Supported breakdowns |
| Demands Created | — |
| Demand Creation Trend | — |
| Monthly Trend of Employee Applications | — |
| Monthly Trend of Nominations | — |
| Avg Match Quality | — |
| Outstanding Demands by Age | — |
7. Known exclusions and filters applied
- Only demands with
system_id = 'resourcing'are included. Deleted demands are excluded. - Only applications with
system_id = 'resourcing'are joined. - Because one demand spans multiple rows, demand-level metrics must use
COUNT(DISTINCT demand_id).demand_application_countanddemand_shortlisted_countare demand-level totals that repeat on every application row of that demand, so they must not be summed across rows. -
demand_shortlisted_countcounts applications that reached Shortlisted or a later stage (Approved, Staffed), not only applications currently at Shortlisted. -
demand_age_daysanddemand_age_bracketmeasure the time from demand creation to today for every demand, open or closed. -
demand_status,demand_start_date,demand_end_date, and the program and project fields are read from the demand's JSON attributes. A missing value is null in the dataset. - Demands with no applications contribute null
match_starsand are ignored by Avg Match Quality. - The dataset logic applies no date filter; it covers all-time history.
8. Schema
| Column name | Data type | Notes |
| demand_id | BIGINT | Primary demand key; position_id from customer_views.positions |
| demand_title | VARCHAR | Title of the demand |
| demand_status | VARCHAR | Status of the demand, from the demand's custom attributes |
| demand_start_date | DATETIME | Date the demand's staffing period starts, converted from the stored epoch value |
| demand_end_date | DATETIME | Date the demand's staffing period ends, converted from the stored epoch value |
| is_open | BIGINT | Flag (0/1); 1 when the demand is open |
| demand_creation_ts | DATETIME | Demand creation timestamp; basis for Demands Created, Demand Creation Trend, and demand age |
| last_modified_ts | DATETIME | Timestamp of the demand's most recent update |
| closed_at | DATETIME | Timestamp the demand was closed |
| hiring_manager | VARCHAR | Hiring manager on the demand, as stored on the demand record |
| recruiter | VARCHAR | Recruiter on the demand, as stored on the demand record |
| demand_location_country | VARCHAR | Location country of the demand |
| seniority_level | VARCHAR | Seniority level of the demand |
| program_id | VARCHAR | ID of the program the demand belongs to |
| program_name | VARCHAR | Name of the program the demand belongs to |
| project_id | VARCHAR | ID of the project the demand belongs to |
| project_name | VARCHAR | Name of the project the demand belongs to |
| application_id | VARCHAR | Application key; NULL for demands with no applications |
| profile_id | BIGINT | Applicant identifier; NULL for demands with no applications |
| application_ts | DATETIME | Application submission timestamp |
| application_source_type | VARCHAR | Source of the application |
| last_stage | VARCHAR | Most recent stage the application reached (e.g. Shortlisted, Approved, Staffed) |
| last_stage_ts | DATETIME | Timestamp the application entered its most recent stage |
| match_stars | DOUBLE | Match score of the applicant to the demand; powers Avg Match Quality |
| demand_age_days | BIGINT | Derived: days from demand_creation_ts to today |
| demand_age_bracket | VARCHAR | Derived bucket of demand_age_days: A) 0–7, B) 8–30, C) 31–90, D) 90+ days |
| demand_duration_days | BIGINT | Derived: days from demand_start_date to demand_end_date |
| demand_duration_bucket | VARCHAR | Derived bucket of demand_duration_days: A) 0–7, B) 8–30, C) 31–90, D) 90+ days; NULL when either date is missing |
| demand_application_count | BIGINT | Derived: total applications received by the demand; repeats on every row of that demand |
| demand_shortlisted_count | BIGINT | Derived: applications on the demand at Shortlisted, Approved, or Staffed; repeats on every row of that demand |