Dunton Birdseye
Multi-client field-operations platform for a political consulting firm, replacing a sprawl of Google Sheets and Apps Script.
- Built a centralized multi-client project dashboard consolidating NGP VAN, Google Sheets, Mobilize, and an internal database behind one interface, covering turf tracking, percent-to-goal analytics, canvasser quality control, and automated client reporting.
- Implemented role-based access control across five roles using bcrypt password hashing, JWT sessions, and granular per-resource permissions, so data and changes are restricted to permitted parties.
- Enforced all 19 permissions in the API independently of the interface — hiding a link is presentation, not access control.
- Implemented an audit log capturing every state-changing request and authentication event with user, IP, status, and duration. During RBAC testing it surfaced a privilege escalation where a client-facing read-only role could enumerate staff accounts.
- Python
- Parsons
- NGP VAN
- JWT
- PostgreSQL
