V Hub
V School's in-house learning management system for bootcamp students, instructors, and admins

Languages
Overview
V Hub is V School's own learning management system. V School is the coding bootcamp I went through in 2020. The whole company ran on Airtable, and V Hub was the product they were building on top of Firebase to replace it for students, instructors, and admins. It launched after my cohort, so I never used it as a student.
I got there through Smash Creative. My boss there is also a co-founder of V School, and when Smash work slowed in 2024 he put me on the V Hub team for five months: three other engineers, a project manager I reported to, and a backlog of student and admin features.
What I built
The biggest single fix was the Airtable to Firestore sync that fed V Hub its data. It looped through records and awaited each write one at a time, so a run took minutes. Batching the writes and running them concurrently, with Promise.allSettled so one bad record didn't stop the rest, brought it down to about three seconds.
The job application tracker gives students a weekly goal, a form to log each application, and progress against the goal. The app was all Redux and plain Axios calls, so I wrote optimistic updates for it by hand, borrowing the pattern from React Query, which we weren't using. For admins I built the student management side: a searchable, sortable DataTable, student navigation, and report card views.
In between: the moment.js to dayjs migration, three major Nx upgrades for the monorepo, and a Firebase cache in front of the Notion API with a 24-hour TTL.