Inspiration

International students make up a huge share of STEM graduates in the U.S., but the job search tools built for them are essentially just the general-purpose ones with no adjustments. Generic extensions like Simplify optimize for the 95% — they do not solve the core problem international students face, which is that sponsorship likelihood is invisible at the point of application. You read a job posting, it looks great, you spend an hour tailoring your resume, and then you get auto-rejected because the company has never filed an H-1B in its existence. USCIS publishes this data publicly. Nobody had just put it in front of students at the moment they need it.

What it does

VisaRank is a Chrome extension that reads a job posting and cross-references the employer against public USCIS H-1B filing data to give you a sponsorship likelihood verdict before you apply. It also flags language in the posting itself — phrases like "must be authorized to work without sponsorship" — that trigger ATS auto-rejection for visa applicants. On top of that, it tracks your application pipeline with visa-aware analytics so you can see at a glance how your pipeline breaks down by sponsorship likelihood.

How we built it

The backend is a Python API server that parses and serves the USCIS H-1B employer dataset. The Chrome extension frontend pulls the employer name from the active job posting tab, hits the backend, and returns the verdict inline on the page. We used Claude Sonnet 4.6 for natural language parsing of job posting text to catch sponsorship-exclusion language that doesn't match a simple keyword list, and Opus 4.7 for the ML model layer on the backend.

Challenges we ran into

The USCIS dataset is messy — employer names are inconsistent, subsidiaries don't always map to parent companies, and filing counts lag by a year or more. Matching "Google LLC" to "Google" to "Alphabet" reliably took more work than expected. The autofill piece also required careful prompt engineering: framing work authorization answers in a way that is accurate but does not immediately trigger an ATS filter is a narrower target than it sounds.

Accomplishments that we're proud of

Getting the employer lookup fast enough to feel instant on a real job posting was satisfying. The USCIS dataset is large and the naive approach is slow, so we had to index it properly. We're also proud of the sponsorship-language detector — it catches soft exclusions like "work authorization required without employer support" that a keyword search would miss.

What we learned

Public government datasets are more useful than people treat them. The USCIS H-1B data has been sitting there for years and it directly answers a question that hundreds of thousands of students are trying to answer the hard way. The gap wasn't the data, it was putting it at the right point in the workflow. What's next for VisaRank We want to close the feedback loop — right now the verdicts are based entirely on historical USCIS filings, but we have no data on whether our predictions match actual outcomes. Adding an opt-in outcome tracker (got interview, got offer, got auto-rejected, got ghosted) would let us validate and improve the model over time. We also want to add a resume-to-job fit score so students can distinguish "this company sponsors" from "I am actually competitive for this role" — those are two different questions and both matter.

Built With

Share this project:

Updates