OTF Forecasting for a Bakery Company
Order-to-fulfil (OTF) planning on Microsoft Fabric for a national bakery brand: a forecasting dashboard on the client's real sales data since October 2026, fed by a contract-first medallion pipeline from an on-premise database.
Key results
~21 s to ~1.1 s
Time to first byte after addressing throttling
61.0 s vs 9.5 s
Identical 140-request load on small vs larger capacity
~5 weeks
First commit to production deployment
- Sole engineer, responsible for operations
- Aug 2026 to Present
- National bakery brand
- Featured
- L3:fabric-forecasting-dashboard
Situation
Planners at a national bakery brand needed a demand-forecasting dashboard, but the sales and master data lived in an on-premise database. The first release reached production on Microsoft Fabric quickly, then loads stalled for about 21 seconds. The next requirement was a pipeline from the client's own source data, and I was the sole engineer, responsible for operations too.
Role and key decisions
Measured capacity throttling before changing the data path
Why: Zero-row and capacity probes showed throttling and corrected my earlier diagnosis, so the fix targeted capacity: an 83,824-row read became about 3,000 streamed aggregates.
Built a contract-first medallion pipeline that stops on failure and resumes
Why: The client's data lived in an on-premise SQL Server, so a data contract, bronze load audits, silver data-quality rules and a reconciled app sync made each stage checkable. Since 8 Oct 2026 the dashboard runs on the client's real data.
Shaped the dashboard around five pages and the planners' own workbook
Why: Planners already work from their workbook, so the OTF table follows its column order, and a drawer explains each forecast and keeps forecaster adjustments.
Results
~21 s to ~1.1 s
Time to first byte after addressing throttling
61.0 s vs 9.5 s
Identical 140-request load on small vs larger capacity
~5 weeks
First commit to production deployment
11.7 MB → 156 KB
Data per load of the national summary page on the client's real data, from 39 requests to 5
Lesson
Planners come to review and adjust a plan, not to look at charts, so the dashboard leads with the plan, and every figure comes from the one Fabric run that owns it. Two baselines is the same as no baseline.
Architecture
Gallery
Tech stack
Microsoft Fabric
Fabric Data Pipelines
Spark notebooks
Lakehouse
Data API BuilderNext.js
App Service
Bicep
Key Vault
Azure AI Foundry
More Data and ML projects
Technical Consultant, Software & AI, Metrodata (PT Mitra Integrasi Informatika)