All work
Full-Stack Applications

Automated Business Intelligence Dashboard

An automated data pipeline and live executive dashboard that eliminated manual project-status reporting by pulling data directly from a project-management/ERP system on a schedule.

100%

Manual reporting eliminated

Self-rotating, zero manual renewal

Credential upkeep

Eliminated (pre-render flag)

Theme-flash on load

The Problem

Project-status reporting for a professional-services team was being compiled manually from an external project-management system — slow to produce and quickly stale. The goal was a live, self-updating, filterable dashboard instead of a periodic manual export.

My Approach

  • Built a scheduled data-refresh job that authenticates to the external project-management API (OAuth 2.0 with automatic refresh-token rotation) and writes normalized report data to cloud storage on a daily cadence.
  • Designed the refresh job to be self-maintaining: it rotates its own OAuth refresh token as part of every successful run, so the integration doesn't require manual credential upkeep or expire unexpectedly.
  • Built a web dashboard (deployed as a scheduled Cloud Run service) that reads the refreshed data and presents it with rich, stakeholder-driven filtering: status/stage grouping, project-age and expiration windows, percent-remaining/progress filters, and a cross-dataset "related items" search.
  • Iterated the UI directly against real stakeholder feedback across multiple rounds — adding and later removing filters/columns when a stakeholder group confirmed a field wasn't relevant to their view, rather than letting UI cruft accumulate.
  • Added a polished, accessible light/dark mode implementation, including a pre-render flag to avoid a "flash of wrong theme" for returning users.
  • Secured the dashboard behind Identity-Aware Proxy so only authenticated organizational accounts can reach it — both the default platform URL and a custom-branded, DNS-verified subdomain.

Stack

Cloud

Google Cloud Run (web service + scheduled job)Cloud SchedulerCloud StorageSecret ManagerIdentity-Aware Proxy (IAP)

Backend

Node.jsNginx (sidecar)

Frontend

Tailwind CSS (custom dark-mode variants)Vanilla/lightweight JS

Integration

OAuth 2.0 (authorization-code flow with refresh-token rotation)

Identity/DNS

IAP-gated accessCustom subdomain with DNS-based domain verification

Practices

Self-rotating credential designStakeholder-driven iterative UI developmentScheduled ETL pipelines

Skills Demonstrated

  • API integration engineering, including secure, self-maintaining OAuth token lifecycle management
  • Building internal tools that are iterated based on real user feedback, not built once and left alone
  • Cloud-native scheduled data pipeline design
  • Practical identity-based access control for internal-only web tools