Meta Platforms, Inc. · Product Manager

AI Workforce Optimization Platform

A machine learning workforce platform that forecasts labor demand across data center projects, so delivery teams can secure scarce skilled trades before a shortage turns into a delay.

Overview

By 2021, skilled labor had become one of the scarcest resources in infrastructure. The U.S. construction industry needed to attract an estimated 430,000 workers in 2021 on top of the workers it normally hires each year, and the gap was projected to grow to nearly 650,000 in 2022. Hyperscale data center projects compete for the same limited pool of electricians and mechanical trades. When a project can't secure the right crews at the right time, schedules slip, labor costs climb, and new compute capacity comes online late. For a hyperscaler, every week a data center is delayed costs roughly $1 million.

Infrastructure delivery teams at Meta were planning labor with fragmented data and manual estimates. Forecasts were often wrong, which left projects short of the crews they needed and running late. The AI Workforce Optimization Platform centralized that data and used machine learning to forecast labor demand across infrastructure projects, accounting for labor shortages and changing project variables, so teams could secure and allocate workers before the gap became a delay.

Labor demand forecast Illustration: a line of actual labor demand up to today, followed by a dashed AI forecast with a shaded confidence range that widens over time, and a highlighted predicted peak. LABOR DEMAND FORECAST Electrical and mechanical trades · all active projects Actual AI forecast Confidence range TODAY Predicted peak · plan crews now Q1Q2Q3Q4 Crew size

AI Hypothesis

The bet the product was built to test:

If machine learning accurately forecasts labor demand across all active projects early enough to see the peaks coming, then delivery teams can secure skilled trades ahead of time and spread crews across projects instead of competing for them at the same moment, which lowers peak labor, cuts labor costs, and keeps data centers on schedule.

Customer Research

Before building a model, I wanted to understand how labor was actually planned on a data center project, and where the plan broke down. I interviewed the people who build the schedule, staff the site, track the cost, and supply the crews.

Each conversation walked through a recent project from start to finish: how labor needs were estimated, where the data came from, when crews were requested, and what happened when the estimate was wrong.

Interviews
15
Timeframe
3 weeks

What kept coming up

  • No single view of labor. Schedules, cost reports, and crew counts lived in separate spreadsheets and systems, and nobody could see labor demand across every project at once.
  • Forecasts built on gut feel. Labor plans were estimated by hand from past experience, so two construction managers could forecast the same project very differently.
  • Projects competing for the same crews. Each project planned on its own, so several hit their labor peak at the same time and bid against each other for the same electricians.
  • Paying to keep talent from rival hyperscalers. Other hyperscalers were building near our projects and drawing from the same local labor pool, so we relied on Labor Attractive Retention Plans (LARPs), incentive pay to attract and keep skilled trades. Without an early view of demand, those costs kept climbing.
  • Trade partners found out too late. Crew requests arrived weeks before they were needed, when skilled workers were already committed to other jobs.
  • Plans fell behind the schedule. When the schedule slipped or the scope changed, the labor plan wasn't updated, and superintendents found the gap on site.
A construction worker in a safety vest and a colleague reviewing plans spread across a table
Schedulers
Build and maintain the project schedule
Construction managers
Own delivery across one or more projects
Superintendents
Run the site and staff the crews day to day
Cost analysts
Track labor spend against budget
Skilled labor trade partners
Supply the electricians and mechanical crews

Persona & Customer Journey

The interviews covered five roles, each touching labor planning from a different side:

  • Superintendents, who run the site day to day, request the crews, and are the construction manager's eyes in the field.
  • Construction managers, who own delivery and sign off on the labor plan.
  • Schedulers, who build the schedule the labor plan depends on.
  • Cost analysts, who track labor spend, including retention incentives, against budget.
  • Skilled labor trade partners, who supply the crews and need notice to commit them.

We built the MVP for the superintendent. They're the ones who actually request crews, and they see a shortage first, on site, when it's already too late to fix cheaply. If the forecast gives them enough lead time to request crews before the peak, the construction manager sees a project that stays on schedule, the cost analyst sees lower labor spend, and trade partners get the notice they need. That makes the superintendent the fastest path to proving the hypothesis.

Primary persona · composite of superintendent interviews

Ray, the site superintendent

Role
Site superintendent
Project
Hyperscale data center
Reports to
Construction manager
Background
Came up through the trades

A day in his life

Ray is on site before the crews arrive. He walks the work, checks progress against the schedule, solves whatever broke overnight, and reports back to the construction manager. Somewhere in there he has to figure out how many electricians and mechanical workers he'll need next month, using a spreadsheet, the latest schedule, and his own experience.

Goals

  • Have the right crews on site when the work is ready for them
  • Request labor early enough that trade partners can commit
  • Keep the project on schedule without paying premiums to fill gaps
  • Give the construction manager a labor plan he can stand behind

Frustrations

  • Labor estimates built by hand from scattered data
  • Finding out about a shortage on site, when it's already a delay
  • Losing crews to other hyperscalers building nearby
  • Schedule changes that leave the labor plan out of date

Customer journey

How Ray plans labor across a project, and what the tool changes at each step.

Project kickoffLook ahead planningRequest crewsPeak constructionSchedule changes
What he does Reviews the schedule and scope to size the labor the project will need Estimates crew needs for the coming weeks and months Asks trade partners to commit electricians and mechanical crews Manages the largest workforce on site and keeps work moving Adjusts the labor plan when dates or scope shift
How he feels Uncertain Skeptical Relieved In control Confident
Pain points Labor data is spread across spreadsheets and systems Estimates rely on manual math and gut feel Requests go out too late; crews are already committed elsewhere Other projects and hyperscalers peak at the same time, competing for crews The labor plan lags the schedule, and gaps show up on site
How the product helps One view of labor data across every active project Machine learning forecast of crew needs by trade Early warning of the peak, so requests go out with lead time Crews spread across projects instead of all peaking at once Forecast updates as project variables change

AI Models Overview

One supervised machine learning model did the work. We trained it on past data center projects where the outcome was already known, so it could learn how a project's plans and estimates translated into the labor it actually took.

Features

Historical project data

From the plans

Quantities extracted from each project's 3D models, drawings, and blueprints: building size and power capacity, conduit and cable tray runs, equipment counts by system, and the scheduled sequence of work by week.

From the estimates

Original labor and cost estimates by trade, paired with the actual labor hours, cost, and schedule each project ended up with. The gap between the two became a feature of its own, so the model learned where hand built estimates tended to miss.

Model

Gradient boosted regression

Why this approach

Gradient boosting builds hundreds of small decision trees, each one correcting the errors of the ones before it. It performs strongly on structured, tabular data like project quantities and estimates, handles a mix of numeric and categorical inputs, and copes well with a training set measured in projects rather than millions of rows.

Explainability

Feature importance shows which inputs drove each forecast, so a superintendent can see why a number changed, not just that it did.

Output & validation

Labor hours by trade

Target

Labor hours by trade, per week, per project, rolled up across every active project, with a likely range around each forecast. Because the quantities are paired with the live schedule, the model predicts when each trade's demand peaks, not just how much labor a project needs.

Validation

Trained on 80% of past projects and validated on the other 20%, which it had never seen, comparing forecast labor with what each project actually used. See Proof of concept.

AI Proof of Concept

Before committing to a full build, we ran a proof of concept to answer one question: could the model forecast labor more accurately than the estimates teams were already making by hand? We split completed data center projects 80/20: the model trained on 80% and was validated on the other 20%, which it had never seen. For each validation project, we fed it only what was known at the start of each project: the plans, the quantities, and the original estimates. We then compared its week by week forecast for each trade with the labor each project actually used, and measured it against the original manual estimate for the same project. We also checked whether it caught the timing and size of each labor peak, since that was the core bet. That evidence is what greenlit the MVP.

A laptop screen showing a line graph being analyzed

AI Input & AI Output

AI input

  • Plan quantities: figures extracted from each project's 3D models, drawings, and blueprints, such as building size, power capacity, conduit and cable tray runs, and equipment counts.
  • Live schedule: the pipeline pulls each project's current schedule from Primavera P6 through its API, so the planned sequence of work by week is always up to date and a schedule change flows straight into the next forecast.
  • Labor and cost estimates: the original estimates by trade, built by hand for each project.
  • Historical actuals: the labor hours, cost, and schedule each past project actually ended up with. This is what the model learned from, and what it was validated against in the proof of concept.
  • Available labor: the workers available by trade and location, compared against the forecast to find gaps.

AI output

  • Labor demand forecast: labor hours by trade, per week, for each project, with a likely range around each number.
  • Portfolio view: forecasts rolled up across every active project, so teams can see where projects peak at the same time and compete for the same crews.
  • Peak timing: when each trade's demand rises and peaks, early enough for superintendents to request crews with lead time.
  • Forecast drivers: the inputs that moved each forecast most, so teams can see why a number changed after a schedule or scope update.
  • Labor gap: forecast demand against available workers, by trade and location, showing where a project will be short or overstaffed.
  • Alerts and insights: flags for labor shortages, overstaffing, and cost overruns, so teams act before a gap reaches the site.
  • LARP scenario planning: the estimated cost of retention bonuses, referral bonuses for new hires, and overtime, with scenarios that can be simulated and compared side by side.

Data Pipeline

I led the development of the data pipeline, working with data engineers to clean the data and build the pipelines. Data moves through four stages, from project files scattered across teams to a forecast on a superintendent's dashboard.

  1. Collect

    • Quantities are extracted from each project's 3D models, drawings, and blueprints.
    • Each project's live schedule is pulled directly from Primavera P6.
    • Original labor and cost estimates are gathered by trade.
    • Available labor is gathered by trade and location.
    • Actual labor hours, cost, and schedules from completed projects form the training and validation set, split 80/20.
  2. Prepare

    • Data from different teams and formats is cleaned and combined into one consistent record per project.
    • Trades, systems, and units are standardized so projects can be compared with each other.
    • P6 activities are mapped to trades and weeks, so the schedule lines up with the quantities.
    • The gap between each past project's estimate and its actuals is calculated as a feature.
  3. Forecast

    • The gradient boosted model forecasts labor hours by trade, per week, for each active project, with a likely range.
    • Forecasts are rolled up across every active project to show where peaks overlap.
    • The inputs that drove each forecast are recorded alongside it.
    • When the schedule in P6 changes, the forecast updates to match.
    • Each forecast is compared with available labor to find gaps, which trigger shortage and overstaffing alerts.
  4. Deliver & learn

    • Forecasts appear on a dashboard, filtered by project, trade, location, and time horizon, alongside the labor gap, alerts, and LARP scenarios.
    • Superintendents use it to see upcoming peaks and request crews with lead time; construction managers use it to plan across projects and to model LARP options before committing to them.
    • As projects finish, their actual labor is added to the training data, so the model keeps learning from every new build.

Tech Stack

  • Machine learning: Python to build, train, and validate the gradient boosted forecasting model, with pandas to clean, combine, and shape the project data before training.
  • Design data: Autodesk Revit for the 3D building models that quantities such as conduit runs and equipment counts were extracted from.
  • Drawings: Bluebeam Revu to take quantities off PDF drawings and blueprints.
  • Scheduling: Primavera P6, connected live so every forecast reflects each project's current schedule.
  • Data pipeline: the P6 API to pull each project's live schedule, Python and pandas to clean the data and load it into SQL, and Apache Airflow to run the pipeline and rerun the forecast on a schedule.
  • Data: a central SQL database holding the combined project records: quantities, estimates, schedules, and historical actuals.
  • Dashboard: Power BI to show forecasts by project, by trade, and across the portfolio, refreshed automatically as new forecasts land.
A designer working on a detailed 3D building model across two screens

System Architecture

How data moves from project files and schedules to a crew decision: sources on the left, the pipeline and model in the middle, the dashboard on the right, and a retraining loop that keeps the model learning from every finished project.

System architecture Autodesk Revit 3D building models, Bluebeam Revu drawing takeoffs, live schedules from Primavera P6, past estimates and actuals, and available labor by trade and location flow into a data pipeline built in Python and pandas and orchestrated by Apache Airflow. The pipeline ingests the data, cleans and standardizes it, maps schedule activities to trades and weeks, and calculates the gap between estimates and actuals, then loads one record per project into a SQL database. A gradient boosted model trained on past projects reads from the database and produces a labor forecast: hours by trade, per week, with a likely range and the inputs that drove it. The forecast is compared with available labor and feeds a Power BI dashboard showing gaps, shortage and overstaffing alerts, and LARP scenarios, used by superintendents to request crews with lead time and by construction managers to plan crews across projects. As projects finish, their actual labor hours are added to the training data to retrain the model. AIRFLOW · PYTHON · PANDASDATA SOURCESDATA PIPELINEDATA + MODELOUTPUTAutodesk Revit3D building modelsBluebeam RevuPDF drawings, blueprintsPrimavera P6Live project schedulesEstimates & actualsOriginal estimates, actuallabor, cost, schedulesAvailable laborBy trade and locationIngestQuantity exports, P6 API,estimates and actualsClean & standardizeTrades, systems, unitsMap schedule to tradesP6 activities by weekEstimate vs. actual gapCalculated per tradeSQL databaseOne record per project:quantities, schedules, actualsGradient boosted modelPython · trained on pastprojects, validated onprojects it had never seenLabor forecastHours by trade, per week,likely range + driversPower BI dashboardForecast vs. available labor,alerts, LARP scenariosSuperintendentsRequest crews with lead timeConstruction managersPlan crews across projectsFinished projects: actual labor hours added to the training dataRetrains the model

Product Opportunities & Prioritization

Once discovery was done, the question was how much the tool should take on. A labor forecasting tool was the core, but research surfaced three adjacent problems the same teams wanted solved, and each one competed for the same build time.

Labor forecasting

Accurately predict and plan the manpower each trade will need, week by week, across every active project, so crews can be secured before the peak.

Chosen as the core hypothesis.

Labor takeoffs

Have the tool measure quantities from drawings and models itself, instead of taking in the numbers teams had already extracted.

Cost estimation

Turn the labor forecast into a full project cost estimate, so one tool covers both how many workers a project needs and what the whole build will cost.

QA/QC tracking

Log and track quality issues on site, since rework is one of the things that pulls crews off planned work.

Why labor forecasting came first

The costliest problem was not knowing how many workers a project would need, and when. That's what drove projects into retention incentives to compete with nearby hyperscalers, and into delays that cost roughly $1 million a week. Takeoffs, cost estimation, and QA/QC tracking each had tools and teams already handling them, imperfectly but well enough. Accurate manpower forecasting had nothing. A forecast is also only useful if teams trust it, so accuracy was part of the MVP from day one: the proof of concept had to beat the hand built estimates before anything shipped. The adjacent options were weighed and set aside; a tool that tried to do all four at once risked doing none of them well.

Impact vs. effort

The core forecast and the three adjacent options, scored on their impact on getting the right crews in place and on the effort to build them well.

Impact → Effort →

Must have high impact · lower effort

  • Labor forecast by trade, per week, for each project
  • Portfolio view across every active project
  • Live schedule connection to Primavera P6
  • Power BI dashboard for superintendents and construction managers
  • Forecast accuracy validated against past projects
  • Labor gap against available workers, with shortage and overstaffing alerts
  • LARP scenario planning
  • Likely range around each forecast

Major projects high impact · higher effort

  • Cost estimation built on the labor forecast
  • Retraining loop that adds each finished project's actual labor to the forecast model

Quick wins later lower impact · lower effort

  • QA/QC issue tracking

Not for the MVP lower impact · higher effort

  • Automated labor takeoffs from Revit models and drawings

Cost estimation, QA/QC tracking, and automated takeoffs were scored but never built; the team stayed focused on the forecast.

Product Roadmap

I owned product discovery, strategy, and the roadmap, working with the infrastructure delivery teams who would use the tool. The roadmap followed the prioritization: build an accurate, fully automated labor forecast first, then prove it in the field by piloting it on live jobsites against the schedulers' plans and the actual labor, and let the model learn from every finished project before rolling it out. Cost estimation and QA/QC tracking stayed on the list but were never built.

Phase 1 · MVPForecast Phase 2Pilot & learn RolloutAdopt FutureConsidered, not built
AI & data
  • SQL database of past projects
  • Live schedule from Primavera P6
  • Automated Airflow pipeline
  • Gradient boosted model trained and validated on an 80/20 split
  • Retraining on each finished project
  • Forecast accuracy monitoring
Product
  • Labor forecast by trade, per week
  • Portfolio view across projects
  • Likely range on each forecast
  • Labor gap and alerts
  • LARP scenario planning
  • Power BI dashboard
  • Forecast drivers on the dashboard
  • Rollout across active projects
  • Cost estimation
  • QA/QC tracking
Research & rollout
  • 15 discovery interviews
  • Proof of concept on past projects
  • Pilot on multiple jobsites
  • Compared with schedulers' plans
  • Confirmed against actuals over the project lifecycle
  • Training for superintendents and construction managers

Phase 1 · MVPForecast

Data foundation

  • Combine past projects into one SQL database
  • Extract quantities from Revit and Bluebeam
  • Standardize trades, systems, and units
  • Connect live schedules from Primavera P6

Pipeline automation

  • Orchestrate the pipeline in Airflow
  • Rerun forecasts when the P6 schedule changes
  • Scheduled Power BI refresh

Forecast model

  • Engineer features, including the estimate vs. actual gap
  • Train the gradient boosted model on 80% of projects
  • Validate on the 20% held out
  • Set the likely range around each forecast

Dashboard

  • Forecast by trade, per week, per project
  • Portfolio view across active projects
  • Labor gap against available workers
  • Shortage, overstaffing, and cost overrun alerts
  • LARP scenario planning and comparison
  • Power BI dashboard v1

Discovery

  • 15 interviews across five roles
  • Superintendent persona and journey map
  • PRD v1

Phase 2Pilot & learn

Pilot

  • Pilot on multiple jobsites
  • Compare forecasts with the schedulers' plans
  • Confirm against actual labor across the project lifecycle

Retraining loop

  • Add actual labor from each finished project
  • Retrain and revalidate the model

Explainability

  • Show the inputs that drove each forecast

RolloutAdopt

Rollout

  • Train superintendents and construction managers
  • Roll out across active data center projects
  • Track forecast accuracy against actuals

FutureConsidered, not built

Cost estimation

  • Full project cost estimate from the labor forecast

QA/QC tracking

  • Log and track quality issues on site

User Stories & Acceptance Criteria

The stories center on the superintendent, the primary persona, with the construction manager, scheduler, and cost analyst where the forecast shaped their planning: securing crews, preparing retention incentives and recruitment, and projecting actual labor spend. Each one ties back to a pain point from the interviews, and each acceptance criterion is something the team could test before calling the feature done.

AreaUser storyAcceptance criteria
Labor forecastMVPAs a superintendent, I want to see how many workers each trade will need, week by week, on my project so that I can plan crews from data instead of a hand built spreadsheet.
  • Forecasts show labor hours by trade, per week, for each active project
  • Forecasts are built from the project's quantities, estimates, and live schedule
  • In the proof of concept, forecasts beat the original manual estimates on the held out projects
Peak early warningMVPAs a superintendent, I want to see when each trade's labor will peak, well before it happens, so that I can request crews while trade partners still have workers available.
  • The dashboard highlights each trade's upcoming peak and when it starts
  • Peaks are visible far enough ahead to request crews through trade partners
  • The timing of each peak is checked against actual labor in the pilot
Gap alertsMVPAs a superintendent, I want to be alerted when the forecast shows more work than available workers in my trade and location so that I can close the gap before it reaches the site.
  • Forecast demand is compared with available workers by trade and location
  • Shortages and overstaffing are flagged as alerts on the dashboard
  • Each alert shows the trade, the week, and the size of the gap
Forecast rangeMVPAs a superintendent, I want to know how confident the forecast is so that I can decide how much buffer to plan for.
  • Every forecast shows a likely range, not just a single number
  • Wider ranges are visible at a glance on the dashboard
Portfolio viewMVPAs a construction manager, I want to see labor demand across all my active projects in one place so that projects don't all peak at once and compete for the same crews.
  • Forecasts roll up across every active project by trade and week
  • Overlapping peaks across projects are easy to spot
  • Each project can be opened to its own forecast
LARP & recruitmentMVPAs a construction manager, I want to see labor peaks months ahead so that I can plan Labor Attractive Retention Plans and a recruitment strategy to attract and keep skilled trades before we're competing with nearby hyperscalers for the same workers, instead of reacting once crews are already short.
  • Forecasts show which trades will peak, when, and by how much
  • Peaks are visible early enough to put retention incentives and recruitment in place ahead of time
  • LARP scenarios estimate the cost of retention bonuses, referral bonuses for new hires, and overtime, and can be compared side by side
  • The forecast updates as the schedule changes, so the plan stays current
Labor spendMVPAs a cost analyst, I want an accurate forecast of the labor each project will actually use so that I can project what actual labor spend will be, instead of relying on the original estimate and finding the overrun after it happens.
  • Forecast labor hours by trade are available for every active project
  • Forecasts reflect the current schedule, not the original plan
  • Forecasts can be compared with actual labor as each project progresses
Live scheduleMVPAs a scheduler, I want schedule changes in Primavera P6 to flow straight into the labor forecast so that the plan never falls behind the schedule.
  • The pipeline pulls each project's current schedule from P6 automatically
  • A schedule change is reflected in the next forecast run without manual steps
  • The dashboard shows when each forecast was last updated
Forecast driversPhase 2As a superintendent, I want to see why a forecast changed so that I can trust it and explain it to my construction manager.
  • Each forecast lists the inputs that moved it most
  • A change in schedule or scope shows up as a named driver
  • Drivers are written in plain terms, not model jargon
Retraining loopPhase 2As a construction manager, I want the model to learn from every project we finish so that forecasts keep getting more accurate over time.
  • Actual labor from each finished project is added to the training data
  • The model is retrained and revalidated before the new version replaces the current one
  • Forecast accuracy against actuals is tracked from one version to the next

Risks & Mitigation

A forecasting tool has two ways to fail: it gives the wrong number, or it gives the right number and nobody acts on it. Each risk below was rated on how much damage it would do and how likely it was, and each mitigation was built into the phase that introduced the risk.

RiskWhat could go wrongImpactLikelihoodMitigation
Inaccurate forecastsThe model over- or underforecasts a trade, and teams secure the wrong number of workers, the exact failure the tool exists to prevent.HighMediumA proof of concept on held out projects before anything shipped, a jobsite pilot checked against the schedulers' plans and actual labor, and a likely range on every forecast
Missed peak timingThe forecast gets the total right but the timing wrong, so crews arrive after the peak has already hit.HighMediumA live connection to Primavera P6, forecasts that rerun automatically when the schedule changes, and peak timing checked against actual labor in the pilot
Bad input dataQuantities, estimates, or actuals arrive incomplete or in different formats from different teams, and the model learns from errors.MediumHighOne cleaned, standardized record per project in the SQL database, consistent trades and units across projects, and schedules pulled automatically instead of reentered by hand
Low adoptionSuperintendents and construction managers don't trust a model over their own experience, and keep planning in spreadsheets.HighMediumDiscovery built around the superintendent, a pilot that compared forecasts with the schedulers' own plans, forecast drivers that explain each number, and training at rollout
Model driftDesign changes to the building are inevitable in construction, and construction methods and the labor market shift over time too, so a model trained on older projects slowly loses accuracy.MediumMediumRetraining on each finished project, with every new version revalidated before it replaces the current one, and forecast accuracy tracked against actuals

Business Model / Lean Canvas

This was an internal tool, so it had no price or sales channel. The canvas below adapts the format: channels become how the tool reached its users, and revenue becomes the value it returned to Meta.

Problem

  • Labor data scattered across teams, with no single view across projects
  • Labor forecasts built by hand and often wrong
  • Projects peaking at the same time and competing for scarce skilled trades

Existing alternatives

Spreadsheets, manual estimates, and the experience of individual superintendents and schedulers

Solution

  • Machine learning forecast of labor by trade, per week
  • Portfolio view across every active project
  • Labor gap alerts and LARP scenario planning

Key metrics

  • Forecast accuracy against actuals
  • Peak labor
  • Workforce planning time
  • Project delivery time

Unique value proposition

An accurate forecast of the crews every data center project needs, week by week, early enough to secure skilled trades before the peak instead of competing for them when it hits.

Channels

  • Power BI dashboard used by delivery teams
  • Jobsite pilots alongside the schedulers' plans
  • Training for superintendents and construction managers
  • Rollout across active data center projects

Customer segments

Meta's data center infrastructure delivery teams

Early adopters

Superintendents on the pilot jobsites

Cost structure

  • Data science and engineering time
  • Data preparation from past projects
  • Pipeline and database infrastructure
  • Software subscriptions: construction platforms and Power BI

Value captured

  • $11M a year saved in LARP and schedule costs
  • Lower peak labor (−41%)
  • Lower labor related costs (−12%)
  • Faster project delivery, against delays that cost roughly $1 million a week
  • Retention incentives planned ahead instead of paid reactively

AI Product Scalability

Meta's data center build program kept growing, and every new project added more labor demand to plan for. The tool was designed so that each new project made it more accurate and more useful, instead of adding more manual work.

New projects plug into the same pipeline

The pipeline was automated from the start, so adding a project meant connecting its live schedule from Primavera P6 and loading its quantities and estimates, not building anything new. Airflow runs the same steps for one project or dozens, and the dashboard picks up each new project automatically.

A model that improves with every finished project

Each completed project adds its actual labor to the training data, so the model learns from every build the program delivers. Every retrained version is revalidated before it replaces the current one, and accuracy is tracked against actuals, so inevitable design changes and shifts in the labor market don't quietly erode the forecast.

More projects, more value

The more projects run at once, the more likely their labor peaks collide. Because forecasts roll up across every active project, each new project makes the portfolio view more valuable: it's one more peak the team can see coming and plan crews, retention incentives, and recruitment around.

One standard across every site

Trades, systems, and units are standardized in the pipeline, so a project at a new site is comparable with every project before it. That lets a new site benefit from the history of the whole program on day one, instead of starting from scratch.

MVP

I developed the MVP of the AI based labor forecasting model and the dashboard teams used to act on it. The MVP did one job: give superintendents and construction managers an accurate, week by week forecast of the crews each trade would need, across every active project, early enough to plan around the peak.

  • Labor forecast by trade, per week, for each project, with a likely range
  • Portfolio view that stacks every active project, so overlapping peaks are visible weeks ahead
  • Live schedule pulled automatically from Primavera P6 through the automated pipeline
  • Labor gap between the forecast and available workers, by trade and location
  • Alerts and insights for labor shortages, overstaffing, and cost overruns
  • LARP scenario planning to estimate and compare the cost of retention bonuses, referral bonuses, and overtime
  • Power BI dashboard built for the superintendent first, then the construction manager
Mockup of the MVP dashboard: forecast accuracy, cost savings, and planning time tiles; a chart of forecast versus actual labor by week; a labor forecast summary by trade showing forecast, available workers, and the gap; alerts and insights; and a LARP scenario planning panel
A mockup closely resembling the actual MVP dashboard of this internal Meta tool. Figures shown are illustrative.

Results

I developed the MVP of the AI based labor forecasting model. We piloted it on multiple jobsites, checking its forecasts against the schedulers' plans and against the actual labor used over each project's lifecycle. Workforce planning time dropped dramatically, and the tool made decisions faster and more reliable:

+30%forecast accuracy
−41%peak labor
$11M / yrsaved in LARP and schedule costs

Better allocation also cut workforce inefficiencies by 25%, which reduced labor related costs by 12%.