Software, Data & AI Engineer · Brno · remote / hybrid
Power BI

Report catalog and reports as code
Role: Built the company report catalog and the reports-as-code workflow.
Result: Production catalog with Entra ID access and no individual Power BI licences, 510 backend and 96 frontend tests, plus the open-source powerbi-mcp with 45 tools.
Power BI Catalog
A production web app where TEDOM employees find and open Power BI reports. Access follows Microsoft Entra ID: app roles plus a group-to-workspace mapping decide who sees a live report and who only gets its documentation.
- No individual Power BI licence needed: reports are embedded through the catalog, opened via a short-lived, same-origin frame token, so raw report links are never handed out.
- Access requests straight from the catalog when a report is locked.
- AI-drafted documentation for every report (purpose, measures, sources), with Czech and English translations.
- Usage analytics: catalog opens, Power BI activity events and report health. Owners review reports based on them; nothing is deleted automatically.
- Practical extras: recommended reports, fullscreen, CSV export, mobile layout and Microsoft Teams embedding.
510 backend and 96 frontend tests, typed end to end, deployed with Docker on company infrastructure.
Reports as code
- No Power BI Desktop needed: report pages and visuals are edited directly in the PBIX layout and PBIR definition files on macOS, and the semantic model (measures, DAX, Power Query) is read with pbixray; model changes get a final check on Windows.
- Reports on warehouse data: for example competitor prices for customer retention, by supplier and commodity, fed daily from the ERÚ price comparator.
- AI-assisted tooling: pbir and Tabular Editor CLIs in agent workflows, and my open-source powerbi-mcp server with 45 tools for PBIX analysis and documentation.
Stack
NestJS · React · TypeScript · Power BI REST API · Microsoft Entra ID · DAX · Power Query · PBIR · Docker