← Back to selected work

Lacuna: Building a Mentorship Marketplace

Lacuna Mentors landing page — "Discover the mentors you need"

I co-founded and built a marketplace where high schoolers book time with college mentors on the spot, shipping it end-to-end to 60+ mentors and real bookings.

Built a custom scheduling system on the mentor's own calendar, replacing per-seat tools and saving ~$900/month as supply grew.

Building a mentorship marketplace for 60+ mentors

I co-founded and built Lacuna Mentors, a marketplace where high school students could find college mentors and book sessions with them. I was the sole engineer and took the product from an idea to 60+ mentors and real bookings.

About

Lacuna connected high school students with college students who had recently gone through the admissions process. My co-founder ran the business and recruited mentors. I built the product.

The first version needed to let mentors onboard and manage their availability, help students find someone relevant, and support real bookings. It also had to avoid per-seat scheduling costs as the mentor roster grew.

Why we built it

Neither my co-founder nor I had access to college mentorship growing up. We thought applicants would value advice from someone who had recently gone through the same process rather than a general counselor.

College students were motivated to share that experience and inexpensive to recruit. The challenge was making the exchange easy enough that both sides would show up.

We secured $2,500 in early funding and were accepted into Boston University's "Innovation Pathway" venture program. That gave us enough runway to build and test the idea with real users.

Building the full loop

A marketplace needs both sides of the transaction to work. Finding the right mentor meant little if a student could not book them, and mentors needed an easy way to keep their availability current.

Off-the-shelf scheduling tools charged for every mentor. As the sole engineer, I also could not spend too much time polishing one part of the product while leaving the rest unusable.

I built the highest-value loops first and handled the remaining operations manually until usage justified automating them.

Scheduling

Scheduling was the hardest and most expensive part. Tools such as Calendly charge per seat, so each new mentor would have increased our recurring costs as we grew supply.

text
// Before: per-seat scheduling tool
Every mentor = one paid seat
- ~$15/mentor/month on off-the-shelf tools
- cost grows linearly with supply
- generic booking UX, not marketplace-aware
- ~$900/month projected at our roster size
text
// After: custom scheduling on calendar APIs
Mentors connect their own calendar
- built on Microsoft Outlook / Graph calendar API
- students see live availability, book on the spot
- booking UX lives inside our marketplace
- ~$0 marginal cost per additional mentor

Custom scheduling architecture diagram

md
Key shift:
Availability source → the mentor's real calendar (via API)
Booking UX → owned inside the marketplace
Cost model → fixed instead of per-seat

Architecture

I used Next.js, React, TypeScript, and Tailwind for the frontend, with Supabase for authentication and the relational data model. Vercel hosted the application. The stack was small enough for one engineer to own from the UI through deployment.

I built scheduling on Microsoft Outlook and the Graph calendar API. Mentors connected their own calendars, students saw current availability, and bookings stayed inside the marketplace without a license for each mentor.

I kept admin work and unusual cases manual at first. I automated a workflow only after real usage showed that it was worth the effort.

Relational data model for users, mentors, availability, and bookings