Data engineeringSynthetic data demonstration
Show which education records a dashboard can trust
Using a fictional education programme, this demonstration makes rejected records, repeat loads and quality checks visible before data reaches a dashboard.
- Contribution
- Mehrab Mashrafi
- Scope
- Python, MongoDB, validation, analytical marts and Streamlit
- Project context
- Documented demonstration build
Synthetic demonstration input
12,246 records
Fictional programme data, not records collected from real schools or children.
Documented mart contracts
58 checks
Output shape and integrity checks, not evidence of a real education outcome.
Make a failed record visible
A manager needs to know whether a missing number reflects programme performance or a data problem. This project represents late, incomplete and inconsistent records using synthetic data.
Invalid records go to quarantine with their issue and batch context. Their rejection remains visible instead of silently changing the reporting sample.
Let an operator rerun the same batch safely
Record hashes distinguish unchanged records from updates and new inserts, preventing repeated loads from duplicating every source row.
Analytical marts feed a Streamlit dashboard that shows run status, change counts, quality issues and contract results. The operator can inspect the run before treating its output as complete.
How the work connects
- 01
Synthetic records
- 02
Repeat safe ingestion
- 03
Validation & quarantine
- 04
Analytical marts
- 05
Dashboard & checks
What this work establishes
The documented run processes 12,246 synthetic records across 14 entity types and runs 58 contract checks on analytical outputs.
The Tanzania education programme and its data are fictional. This demonstrates engineering controls, not a commissioned NGO deployment or improved student performance.
Inspect the work or discuss the approach
Have a similar workflow to improve?
Tell us who uses it, which records it depends on and where the handoff slows down. We can discuss a practical implementation scope.
Discuss your use caseProject notes from Mehrab Mashrafi and AI Byters. Updated .