# TalentBridge Recruiting Dataset

TalentBridge is a mid-sized recruiting firm placing candidates across seven skill areas — Software Engineering, Sales, Data Analytics, Marketing, IT Support, Project Management, and Manufacturing Operations — for client companies nationwide. The firm employs 30 recruiters across four teams (Tech, Sales & Marketing, Operations, Corporate) and manages roughly 1,200 open and recently-filled requisitions at any given time.

## File Inventory

| File | Format | Records | Description |
|------|--------|---------|-------------|
| applications.csv | CSV | 19,856 | Candidate applications with funnel status, source, dates, and job/recruiter linkage |
| candidate_profiles.json | JSON | 5,000 | Candidate records with name, contact info, location, education, skill, and experience |
| recruiters.csv | CSV | 30 | Recruiter roster with team assignment and tenure |
| job_catalog.csv | CSV | 1,200 | Job requisition reference table with title, department, salary range, and status |
| recruiter_activity.csv | CSV | 23,997 | Pipeline activity log (Phone Screen → Interview → Reference Check → Offer → Accepted) |
| offer_history.csv | CSV | 1,625 | Offers extended to candidates who reached Offer or Hired status |
| interview_notes.txt | TXT | 6,470 | Structured, skill-specific interview notes with ratings |
| job_postings.docx | DOCX | 35 sample | Representative detailed job postings (full catalog in job_catalog.csv) |
| hiring_metrics.xlsx | XLSX | 12 rows | Monthly funnel summary derived directly from the underlying data |

## Date Range

All applications, activities, and offers fall within **calendar year 2025**, with realistic seasonal volume (higher in January–March and September–October, lower in summer and late December).

## The Recruiting Funnel

Each application progresses through a single coherent pipeline:

```
Applied → Screening → Interview → Offer → Hired
              ↓            ↓          ↓
          (or Rejected at any stage)
```

`applications.application_status` reflects the furthest stage a candidate-job application reached. Detailed progression history — phone screens, interviews, reference checks, offer extension and acceptance — lives in `recruiter_activity.csv`, timestamped after the application date. Every "Hired" application has a matching `offer_history` record with `offer_status='Accepted'`; every "Offer" application has an offer record that is Pending or Declined. This is enforced by construction — there are no orphaned offers, no offers accepted without being sent, and no interviews scheduled without a prior phone screen.

## Key Relationships

- `applications.candidate_id` → `candidate_profiles.candidate_id`
- `applications.job_id` → `job_catalog.job_id`
- `applications.recruiter_id` → `recruiters.recruiter_id`
- `recruiter_activity.application_id` → `applications.application_id`
- `offer_history.application_id` → `applications.application_id`
- `interview_notes.application_id` → `applications.application_id`

## ID Format Conventions

| Prefix | Entity |
|--------|--------|
| CAN | Candidate |
| APP | Application |
| ACT | Recruiter Activity |
| OFF | Offer |
| JOB | Job Requisition |
| REC | Recruiter |

## Notes

Salary offers scale with years of experience, education level, and skill area (e.g., Software Engineering and Data Analytics command higher bands than Sales or IT Support generalists). `hiring_metrics.xlsx` is aggregated directly from the transactional files, so Interviews ≤ Applications and Hires ≤ Offers hold in every month without exception.
