March 1, 2025
5 Peaks Youth Solutions
FERPA-compliant student information and youth program SaaS with attendance, observations, dual KPI engines, and three role-gated portals.
- Next.js
- NestJS
- TypeScript
- PostgreSQL
- Prisma
- Redis
- WebSockets
- JWT
.png&w=3840&q=75)
.png&w=3840&q=75)
.png&w=3840&q=75)
.png&w=3840&q=75)
.png&w=3840&q=75)
.png&w=3840&q=75)

Problem
A US youth development organisation tracked attendance, behavioural observations, academics, and engagement across fragmented spreadsheets and paper processes, without FERPA-grade access control or auditable KPI reporting.
Architecture decisions
- Three portals with separate RBAC for Admin, Coach, and Student.
- PostgreSQL + Prisma schema with AES-256 encryption on PII and AuditLog retention designed for FERPA's 7-year requirement.
- Dual KPI engines (Behavioral Reduction and Wellbeing Improvement) with versioned weight config.
- Minimum-cohort guard (n ≥ 5) so aggregates cannot reverse-engineer individuals.
- Idempotent scheduling reminders and multi-channel overdue alerts.
- Led Sprint 0 discovery into PRD, TRD, and ADR-001 before phased delivery.
3
User portals
Admin, Coach, Student with separate RBAC scope
7 yr
FERPA retention requirement
AuditLog schema enforces data retention
2
KPI engines
Behavioral Reduction + Wellbeing Improvement
n ≥ 5
Cohort privacy guard
Prevents reverse-engineering individual data from aggregates
Role and impact
Owned discovery through architecture and Phase 1 delivery of the SIS foundation. Replaced fragmented tracking with one auditable system so coaches can focus on outcomes instead of admin overhead.
Tech stack
- Frontend: Next.js · TypeScript · React
- Backend: NestJS · TypeScript · WebSockets · JWT · BullMQ
- Database: PostgreSQL · Prisma ORM · Redis
- Security: AES-256 field-level encryption · RBAC · Refresh token rotation
- Infrastructure: AWS · DigitalOcean · Docker · GitHub Actions CI/CD
Related projects
Azara Health Care Portal
Delivered 4-role RBAC dashboards and intelligent matching that cut caregiver assignment from manual search to ranked matches in seconds.
Everest Railcar Tracking Dashboard
Eliminated 100% of manual daily CSV processing with a 3-queue BullMQ pipeline and 5 automated exception rules.