Scope

LOT Polish Airlines operates its Contact Center as a distinct business unit, separate from the airline’s core operations (flight crew scheduling, ground handling, MRO). The Contact Center handles customer service — reservations support, complaint management, irregular operations communication — and runs its own WFM function independently of the mainline airline scheduling systems.

This project lives entirely within that Contact Center boundary. It has nothing to do with pilot rosters, cabin crew scheduling, or airport operations. Different domain, different constraints, different tooling.


The Problem

LOT Polish Airlines ran its entire workforce management on a patchwork of Excel files — shift codes entered by hand, data siloed across disconnected spreadsheets, no real-time contact centre visibility. Reports took days. The people responsible spent more time preparing data than reading it.


The Architecture

I designed and built a Medallion Architecture inside Microsoft Fabric across a series of Agile iterations.

Bronze — Ingest

Raw JSON ingested automatically from the Genesys Cloud API via Data Factory pipelines, replacing manual CSV exports. Bronze is append-only — nothing is transformed, every original record preserved for full auditability.

Silver — Normalize & Validate

Python and T-SQL workflows flattening deeply nested API responses, resolving agent identifiers across systems, and validating shift codes against the labour law rule set. This is where the hard logic lives.

The compliance engine is worth mentioning separately. Shift rotations at LOT are governed by complex rules — minimum rest periods, maximum consecutive hours, operational exception handling. Previously: manual review. Now: automated on every ingestion cycle, zero faults since go-live.

Gold — Star Schema

Calculations moved from DAX into SQL Views. This was the single biggest lever for report speed: DAX calculates at query time, SQL at load time. The difference landed at 80% faster delivery.


Outcomes

MetricBeforeAfter
Manual preparation40+ hrs / month~0
Report latencyHours / next-dayMinutes
Compliance validationManual, error-proneAutomated, 0 faults
Data sourceExcel filesLive Genesys API

What I Learned

The technical challenge was real — deeply nested API responses, complex shift-rotation logic, a production Power BI environment that couldn’t be broken. But the harder challenge was organisational.

People had strong mental models built around their Excel files. The migration required not just a better system, but one that felt trustworthy from day one. That meant extensive validation layers, transparent audit trails, and a rollout that let analysts compare old and new outputs side-by-side before any switch.