PRODUCTION2026
Epsom Platform
The ProblemStudents navigating early career had no single platform connecting coaching, courses, job placements, and university prep. Each piece was siloed, and payments between students, coaches, and recruiters happened outside the platform with no tracking or accountability.
The SolutionArchitected a shared backend permission system across four product modules (EpsomCourses, EpsomCoach, EpsomTalent, EpsomAdmissions) with a unified data layer. Built Stripe Connect end-to-end for milestone payments, webhook processing, payout flows, failure handling, and a wallet system for in-platform transfers between parents, students, and coaches.
The OutcomeAll six roles interact on one platform with payments, chat, and progress tracking fully integrated. Recruiters pay students directly in-platform. Parents have complete visibility into their child's activity. The wallet and Stripe Connect system handles real transactions across all user types.
Epsom is built around the student: a single platform where they get career coaching, take courses, apply for jobs, receive payments for work, and get guided into university admissions. Six roles interact on the same backend: Student, Coach, Parent, Recruiter, Admin, and Academic Coach. I designed and built the unified permission system that governs what each role can see and do, the Stripe Connect integration for in-platform payments between all parties, and the real-time chat layer. Parents can monitor their child's activity and send them money within the platform. Recruiters post jobs and pay students directly, milestone by milestone.
Node.jsTypeScriptPostgreSQLSupabaseStripe ConnectFlutter