Building Vantage: The Problem I Couldn't Not Solve
There's no common identifier linking hospital data at scale. GPO codes, inconsistent naming, manual CRM entry. Just mountains of data that almost match and never quite do. Here's what I built to fix it.
Across almost every state, you'll find dozens of independent variations of St. Luke's, St. Joseph, Methodist Hospital, St. Mary's, and Mercy Hospital. Nobody warned me that it would become my problem. Now it's the one I'm trying to solve.
That project is Vantage. Here's where it started and where it is now.
The problem
When I joined Chemence, I needed a total addressable market. We had a hospital data platform tracking facilities nationwide. We had HubSpot with our current customers. We had GPO rosters and distributor data. All I wanted was to combine them: here are the facilities we can sell to, here are the ones we already do, here's the gap.
The problem is that there's no common identifier linking it all together. GPOs use their own codes. Health systems name the same facility differently across sources. CRM records show whatever someone typed during onboarding. No standard. No universal facility ID. Just mountains of data that almost match and never quite do.
That's not a data problem. That's an infrastructure problem. Those are the kind I can't leave alone.
What I built first
Not a dashboard. Not a map. A matching engine.
Street address. Zip code. Website domain. Phone number. You take every data point that could identify a facility and build logic around it. Three of four matching signals probably mean it's the same place. Score the confidence, flag the uncertain ones for human review, and let the clear matches run.
The first version runs entirely locally. Python, fuzzy matching logic, no external API calls. Fast, private, works offline.
The first time the localhost loaded and actually showed me what I'd built, I sat there for a minute. I knew I'd written the code. But seeing it render in a browser for the first time was something else. That was the moment it stopped being a theory.
For the hard cases, I added LLM support. The AI handles ambiguous matches. The rules handle the volume. A human reviews anything the system isn't confident about before it gets accepted.
And then the naming problem. Eight or nine facilities with the address "1 Medical Way" in the same state, each with a different ZIP code. The matching problem isn't just messy data. It's that American healthcare facilities genuinely have nearly identical names and addresses at scale. Solvable. Takes longer than you think to solve it properly.
What it looks like when it works
Take a major regional health system with 200 facilities under one parent organization.
Most reps don't know which of those 200 are customers. They don't know which ones fall under the same corporate contract. They're planning their week with incomplete information and hoping for the best.
Vantage changes that. Open the platform, and that health system is one record with all 200 children attached. Fifty are customers. One hundred fifty aren't. Here's what each non-customer facility could plausibly spend based on procedure volume. Here are the three highest-priority targets. Here's where they are on the map.
The map is the part I care most about. A rep planning a field day can see every customer and prospect pinned to an actual address. Filter by proximity. Find a prospect worth stopping in on. That hour stops disappearing.
Visibility and control. That's the whole point.
What building this has taught me
I came into this project new to app development and barely familiar with LLMs. I knew the problem. I had a rough solution in my head. Everything between those two points I figured out by hitting walls.
Database architecture. API integration. Frontend development. UX. Deployment. None of it was in my background. All of it is now.
Every wall forces understanding you wouldn't get any other way. That's the real value of a project like this. Not the product. What you have to become to build it.
Where it's going
Vantage is not finished. It's a working system built by one person in their spare time, and it shows in places.
The next step is a small open beta with a few healthcare companies willing to work through the rough edges with real data. If you're in healthcare sales and this problem sounds familiar, get in touch.
After the beta, we tackle more problems and figure out more solutions. That's not a plan. It's just who I am. I can't see something broken and walk past it. I have never been able to.