About a year and a half ago, I reported on an effort by French software engineer Théo Négri to mine the U.S. Department of Labor’s H-1B data for insights into tech salaries (a set of data that includes minimum salaries without bonus offered; actual salaries paid H1B visa holders can be higher). Négri’s tools allow you to browse job listings by company, year, job title, and other factors—but it takes some toggling around to get a clear snapshot of trends in engineering salaries at a particular firm.
In a separate effort, software engineer Mahmoud Mechehoul, a former H-1B visa holder from Morocco, took a look at that same data, and decided it would be more useful to look at salary distributions, not just aggregated numbers. He reasoned that salaries for similar jobs vary a lot, even within the same company. The data, he says, covers 800,000 salaries from 500 companies for 700 job titles in 16,000 cities.
He came up with a more graphical online tool, H1BPay. It took him about six months to create, because he decided to hire contractors to clean up the data. Their work involved changing formal legal names to more familiar monikers, correcting spelling mistakes, and filtering out salary figures that were extreme outliers. He originally built this tool for use by current and potential holders of H-1B visas, but the picture it paints of engineering salaries can be mined for all sorts of purposes. The tool allows you to browse salaries by company, job, and city—for some companies, as far back as 2011.
A few examples:
Salaries for H-1B software engineers at Facebook in Menlo Park, Calif., according to H1BPay, range between $85,000 and $247,200, with a median of $138,294. The top 25 percent of earners make at least $150,000. The average salary for H-1B software engineers at the social network increased by an average of 6 percent a year between 2012 and 2016.
H-1B software engineering salaries at Google in Mountain View vary between $92,000 and $318,240; the median salary is $126,232. The top 25 percent make a salary of at least $137,600, and the pay increased by an average of 2 percent annually between 2011 and 2016.
At Uber, H-1B software engineers in the company’s San Francisco office are paid between $76,107 and $175,000, with a median of $120,000. The top 25 percent make a salary of at least $140,000. Software engineering salaries for H-1B visa holders at Uber dropped about 1 percent annually between 2013 and 2016.
According to Mechehoul’s tool, salaries for an H-1B software engineer at IBM in San Jose, Calif., range between $61,735 and $222,700, with a median salary of $99,047. The top 25 percent of this group make at least $140,000, and the average salary went up an average of 12 percent annually between 2014 and 2016. Salaries for H-1B software engineers at IBM’s Research Triangle Park, N.C., location vary between $52,998 and $206,348, with a median of $84,513; the top 25 percent earn at least $100,000. These numbers increased an average of 6 percent annually between 2011 and 2014.
And at Microsoft in Redmond, Wash., H-1B software engineers make between $78,540 and $161,000 annually, with a median of $118,142, and $125,676-plus for the top 25 percent. These numbers reflect an average annual increase of 5 percent between 2013 and 2016.
You can browse the data yourself here.
Editor’s note: This post ran as an article in the February 2017 issue of IEEE Spectrum titled “H-1B Visas by the Numbers.”
Updated 6 March 2017.
Tekla S. Perry is a senior editor at IEEE Spectrum. Based in Palo Alto, Calif., she's been covering the people, companies, and technology that make Silicon Valley a special place for more than 40 years. An IEEE member, she holds a bachelor's degree in journalism from Michigan State University.