Automated Monkeypox Case Dashboard
Built a daily-updating public health dashboard during the 2022 monkeypox emergency to keep case counts fresh without manual effort. The pipeline ingests public health data, validates it, and pushes it straight to a Tableau-ready database so outbreaks can be monitored in near real time.
What I built
- Automated ETL that pulls daily case data, standardizes geography/demographics, and runs light validation checks before loading into Amazon RDS PostgreSQL.
- Tableau dashboard with filters for region, date, and case characteristics plus time-series views for outbreak progression.
Impact
- Replaced manual spreadsheet updates with a timed Lambda workflow; data stayed current for briefings without human babysitting.
- Reduced refresh time to minutes and enabled stakeholders to self-serve trends by geography and demographic slices.
How it works
- AWS Lambda triggers Python ETL to extract public health APIs, transform, and validate records.
- Amazon RDS PostgreSQL hosts the cleaned dataset for visualization and ad hoc queries.
- Tableau connects to the database (production) with a manual publish fallback for Tableau Public.
Production note
Tableau Public canโt keep a live connection, so the public embed is republished manually. A Tableau Server/Power BI deployment keeps the production version on a live database connection with the same visuals and alerts for late data.