Skip to content

Medical Education Platform · Case study

Turning a physician's coaching practice into a platform

InterviewRx is a physician-led coaching service that helps International Medical Graduates prepare for the residency Match. We turned a practice that ran on direct messages and forms into a platform that explains the offer, books intake calls, and gives applicants and the coach a place to work together.

InterviewRx hero: “Match-ready interviews, prescribed by a doctor who matched.” with an interview-prescription card.
Industry
Medical education · residency Match coaching
Engagement
Product build: marketing site, client portal, admin
Platform
Next.js · .NET 10 API · Azure SQL
Status
Live at interviewrx.co

The client

International Medical Graduates face the residency Match with extra hurdles: visas, US clinical experience, and gaps in their timelines that interviewers will ask about. InterviewRx is run by a family medicine physician who went through the same process and now coaches applicants through it, from their CV and personal statement to mock interviews.

The practice had grown through Instagram, with intake running through a form and follow-up handled by hand. That works for a handful of applicants. It doesn't work in the middle of interview season.

What we built

  • A marketing site that routes visitors by where they are in the Match (still applying, already interviewing, or not sure) to the service that fits.
  • A free resource that builds trust before anyone pays: a bank of 41 common interview questions in 8 categories, each explaining what the interviewer is really asking and how to answer.
  • An interview-readiness checklist that scores an applicant against the milestones that matter for IMGs.
  • Online booking for a free intake call, with double-booking prevented at the database level.
  • A client dashboard where applicants track their status, profile, and coaching sessions, and an admin console for the leads pipeline, students, sessions, and orders.
  • A recruiting path for matched alumni to apply as coaches, with eligibility checked on the server.

Architecture decisions

The front end is Next.js 16 with React 19, and it talks to a .NET 10 API through a same-origin proxy, so the browser only ever sees one domain. The API runs on Azure App Service with Azure SQL; both apps deploy from GitHub Actions using federated credentials, with no long-lived deployment secrets stored anywhere.

Anything that involves money or trust is decided on the server. Prices come from a server-side catalog, never from the browser. Coach applications are only accepted from applicants the system can verify. Password resets use single-use links that expire within an hour and don't reveal whether an account exists.

The browser can ask for anything. The server decides what it gets.

Privacy-first analytics

Instead of a third-party tracker, the site records its own page views with no cookies and no personal data. Visitors are counted with a hash that rotates daily, so the coach sees which pages and countries bring applicants in without anyone being followed around the web.

Built to switch on in stages

Online checkout and automatic Zoom links for sessions are built in and stay off until their accounts are connected, so the practice can launch, learn from real applicants, and turn on payments when the offer is settled, without another release.

Have a project like this?

We help teams architect, build, and ship software that keeps running. Let's talk about what you're building.

Start a conversation