Back to Built
LiveWebsitesTraining tools2026

MedRank

CQC ratings and GMC trainee satisfaction for 500+ NHS hospitals, in one place. So you can rank your training jobs on something better than word of mouth.

Choosing where to train means ranking hospitals you know almost nothing about. The data exists — it's just split across two government websites nobody wants to cross-reference at 11pm. So I pulled it together.

Next.jsTypeScriptPostgreSQLMapboxStripe

What it is

MedRank pulls together the two things that actually tell you whether a hospital is a good place to train — CQC inspection ratings and GMC National Training Survey scores — for over 500 NHS hospitals, and puts them in one searchable place.

It's aimed at the people who have to rank training jobs with almost nothing to go on: foundation doctors picking specialty posts, core surgical trainees ordering their preferences, anyone staring at the Oriel spreadsheet wondering how they're meant to choose.

What I built

Three things, really.

  • Search and map — find hospitals by name, city, trust, region, CQC rating or specialty, with results next to an interactive Mapbox view showing where everything actually is
  • Hospital detail pages — CQC ratings broken down by service (A&E, surgery, medicine), GMC trainee satisfaction scores, and the domain-level picture (safe, effective, caring, responsive, well-led)
  • A rotation builder — assemble a potential rotation, see every placement on a map, and get a travel burden score, because where you'll be driving for three years matters more than people admit
  • A Digital Maturity filter — whether a trust runs a modern EPR or you'll be writing on paper drug charts at 3am

Why I built it myself

When you're offered training posts, you rank your preferences with barely any real information. Most people go off reputation, a forum thread from 2019, or whatever a friend of a friend said.

The better data was always there. CQC and GMC both publish it. But it lives on two separate sites in two separate formats, and cross-referencing it by hand is enough of a pain that almost nobody does it.

I'd gone through preferencing myself and felt exactly this. It seemed daft that the thing deciding three years of my life came down to vibes. So I built the tool I'd wanted.

Stack

Next.js and PostgreSQL, with Mapbox for the maps, Tailwind for styling, hosted on Vercel.

The harder call was the data, not the framework. Neither CQC nor GMC offers an API, so MedRank runs on its own database that I refresh rather than pull live. That's fine — a trust changes its EPR maybe once a decade and GMC data updates once a year. The honest move was a clear "last updated" date and a link back to the source, not pretending it's real-time.

What I learned

I built the first version on Lovable in a weekend. The frontend looked great. Then I tried to connect a backend, couldn't, read documentation I didn't understand, and eventually closed the tab. I didn't open it again for two months. I'd quietly decided I'd been kidding myself.

When I came back, I started over in the opposite order — database first, then the APIs, then the interface. That single change is the only reason MedRank exists. I wrote about the two months I quit in more detail on the blog; it's the part of these stories people usually leave out.

The other lesson was about me, not the code. I added the Digital Maturity filter because it was interesting to build, not because anyone asked for it. That's a pattern I've had to learn to watch. MedRank is live and does its job — the harder discipline was knowing when to stop adding to it.

Think MedRank would help you rank jobs?

It's live for 500+ NHS hospitals. If you're preferencing and would use it — or want something similar for your specialty — get in touch.

Get in touch