Workforce Analytics Project

Excel | Python | SQL | Power BI

Interactive Power BI Dashboard:

Why this project?

Employee attrition is rarely just an HR issue, it is a massive financial drain. I built this project to move beyond basic headcount reporting and answer the questions executives really ask. I can now answer whether this company its losing top performers, which departments are bleeding the most cash, and what specific behaviors (like burnout) are driving people out the door.

Beyond the business case, this project was an opportunity to demonstrate a full-stack data workflow taking messy raw data through a Python cleaning pipeline, structuring a relational Star Schema in PostgreSQL, and delivering an interactive, multi-page Power BI app tailored for executive decision-making. This project allowed me to expand my experience beyond business performance to different types of data which are essential cross all large companies.

Methodology

  • Dataset Acquisition: The raw data was sourced from Kaggle, a community data platform. While the dataset is simulated, it mirrors real-world HR workforce structures complete with realistic corporate pain points like unstandardized column formats, inconsistent text casing, and raw numerical values that required custom binning. Click here to see dataset.

  • Data Cleaning (Python): Used Python and Pandas to extract, inspect, and clean the raw data. Normalized string fields, handled missing values, standardized text casing across department and job titles to prevent join errors, and validated data types prior to loading into the database.

  • Database & Modeling (PostgreSQL): Imported the cleaned dataset into PostgreSQL and engineered a relational Star Schema. Designed a central fact table flanked by clean dimension tables (dim_department, dim_employee, dim_survey_profile). Wrote SQL scripts to enforce primary/foreign key relationships and ensure strict data integrity. Python and SQL code can be viewed on my GitHub page here.

  • Visualization & Analysis (Power BI): Connected Power BI to the PostgreSQL model. Authored custom DAX measures to quantify business-critical metrics including estimated vacancy cost ($135M+), regret attrition rate, and high-risk employee counts. Designed a polished, 3-page interactive dashboard using tile slicers, synchronized page cross-filtering, conditional heatmaps, and AI-driven key influencer visual models.

Buissness Insights

Insight 1. New Hire Flight Risk

  • Problem: attrition peaks heavily within an employee’s first year at the company (accounting for nearly 160 departures), leading to wasted recruitment costs before new hires become fully productive.

  • Solution: Introduce check-ins with managers for new hires to catch onboarding friction early and conduct structured exit interviews to gather clear feedback on why early departures are happening. Recording and further analysis of the talking points raised in these two conversations will reveal the long term solution to mitigate this problem for good.

Insight 2. High-Performer Turnover

  • Problem: Attrition drops among average performers but spikes again among top-rated employees (performance rating 4), meaning the business is actively losing its most valuable talent.

  • Solution: Encourage managers to conduct informal interviews with top performers routinely, to discuss career growth and job satisfaction before they start looking for external opportunities. Top performers seeking more from the role should first be offered opportunities to progress within the company and as such reduce the risk of losing them elsewhere.

Insight 3. Department-Specific Financial Risk

  • Problem: Turnover isn't equal across the company; sales and engineering account for over $64M of total vacancy costs, paired with notably low job satisfaction scores in those specific departments.

  • Solution: Direct retention efforts specifically to sales and engineering teams, rather than spending time and budget on broad, company-wide initiatives.

Insight 4. The Overtime & Burnout Connection

  • Problem: The data shows that employees working overtime are 1.56x more likely to leave, proving that workload pressure is a direct catalyst for turnover.

  • Solution: Set up a system to flag team leads when an employee’s overtime hours cross a safe threshold, allowing managers to rebalance workloads before burnout leads to resignation.