Subscribe to DSC Newsletter

Salary mostly depends on experience, education, location, industry, and unfortunately, factors such as gender. Also, most data scientists have all the three skills and more (R + Python + SQL), so it is hard to assess which one is the most valuable.

Source for picture: click here (numbers are from 2014)

You could do a survey, asking data scientists which skills they were hired for, and break the results down into 8 categories:

  • no R, no Python, no SQL
  • R, no Python, no SQL  
  • no R, Python, no SQL  
  • no R, no Python, SQL
  • R, Python, no SQL
  • R, no Python, SQL
  • no R, Python, SQL
  • R, Python, SQL

And then compute the average salary in each category, maybe broken down by education / experience / location. Or you can think logically, concluding that

  • Python can do everything (web development, data science, and so on), in particular in production mode, has great data science libraries, and thus commands the highest salary boost
  • R is somewhat specialized and limited to statistical analysis, thus commanding a lower salary boost
  • SQL is extensively used and a very popular skill; in addition SQL queries are much easier to automate or outsource than Python coding, thus commanding the lowest salary boost. Though not knowing SQL might mean no job offer even if you are an expert in Python or R.

Then you can do some search using Indeed.com, and get salary per location for these three skills. Below are numbers for San Francisco, as of April 2016 (big contrast with the above picture corresponding to 2014, but the numbers below are for all job ads including architects and software engineers, not just data scientists). The number in parentheses represents the number of job openings.

Python
  • $90,000+ (3776)
  • $100,000+ (3316)
  • $110,000+ (2451)
  • $120,000+ (1492)
  • $130,000+ (744)
R
  • $40,000+ (1437)
  • $65,000+ (1138)
  • $85,000+ (894)
  • $105,000+ (583)
  • $120,000+ (338)
SQL
  • $75,000+ (5084)
  • $90,000+ (4068)
  • $100,000+ (3152)
  • $110,000+ (2042)
  • $120,000+ (1201)

It seems, if this data is correct, that SQL commands higher salaries than R, contrarily to my intuition. These numbers, based on recent job ads, can be found here (you can select the skill or location). Do you know why SQL commands higher earnings than R? 

Other interesting search results for San Francisco include the following:

Data Science

  • $65,000+ (6743)
  • $90,000+ (5288)
  • $105,000+ (3972)
  • $115,000+ (2843)
  • $125,000+ (1667)

Python + R

  • $75,000+ (70)
  • $95,000+ (54)
  • $110,000+ (44)
  • $120,000+ (30)
  • $130,000+ (16)

Python + SQL

  • $95,000+ (22)
  • $110,000+ (17)
  • $115,000+ (16)
  • $125,000+ (9)
  • $140,000+ (5)

R + SQL

  • $80,000+ (19)
  • $85,000+ (17)
  • $100,000+ (13)
  • $110,000+ (10)
  • $125,000+ (4)

Sounds like Python + SQL might be the best combination. What is weird is that Python + R seems to command a lower salary than just Python alone. And if you know SQL, it gives you a nice boost if you are an R programmer.

DSC Resources

Additional Reading

Follow us on Twitter: @DataScienceCtrl | @AnalyticBridge

Views: 76183

Reply to This

Replies to This Discussion

I've always wondered if these salary surveys are normalized by cost of living. Salaries in the absence of knowledge about how much of that income is truly expendable are pretty meaningless. Someone working in San Francisco will necessary make more than someone living in Dallas simply because the cost of living in San Francisco is higher than the cost of living in Dallas. You have to make more in San Francisco to maintain the equivalent standard of living you could have in Dallas. I would be interested in knowing the results of this breakdown if salaries were normalized to one city. It's entirely possible these language groups are confounded by location. Maybe Python + R positions are predominately not on the West Coast.

Professionally done compensation surveys typically collect and report data by geographic area (as well as industry, company size, etc.), but they don't normalize reported salaries.  The normalization should be done by the compensation analyst, either by limiting their analysis to a specific geographic area or by adjusting the salaries to match the relative pay rates in the area they're looking at.  Generally, this is done by adjusting the national average or median pay rate by a geographic pay differential that adjusts the national rate to a local rate.  The major compensation survey companies put out reports of geographic pay differentials which can be used to do that adjustment, since the cost-of-living (COLA) numbers put out the the Bureau of Labor Statistics isn't terribly accurate at capturing local pay differences.

Unfortunately, there are few professional compensation surveys covering data scientists.  Burtch Works does a good job and the O'Reilly study takes an interesting approach with their mathematical model.  PayScale and Salary.com provide useful data, but there are always concerns about how well validated that data is.  The big challenge in each of these sources is that the data are self reported, which gives compensation professionals pause.  Major surveys get data from companies where a compensation analyst at the company is matching their jobs to the jobs/roles in the surveys and providing the compensation data, so you're more likely to get an accurate "apples to apples" match.  When people self-report, you never know if they're reporting for the correct job or whether they're telling the truth about how much they're paid (or if they're accurately differentiating between salary, bonus, and benefits).

Christie Haskell said:

I've always wondered if these salary surveys are normalized by cost of living. Salaries in the absence of knowledge about how much of that income is truly expendable are pretty meaningless. Someone working in San Francisco will necessary make more than someone living in Dallas simply because the cost of living in San Francisco is higher than the cost of living in Dallas. You have to make more in San Francisco to maintain the equivalent standard of living you could have in Dallas. I would be interested in knowing the results of this breakdown if salaries were normalized to one city. It's entirely possible these language groups are confounded by location. Maybe Python + R positions are predominately not on the West Coast.

Christie, www.bea.gov provides price parity dataset one can use to normalize by cost of living. I attempted to do that in a blog where I looked at the salaries of data science-related jobs: https://sedeh.github.io/where-the-datascience-jobs-are-part1.html

Christie Haskell said:

I've always wondered if these salary surveys are normalized by cost of living. Salaries in the absence of knowledge about how much of that income is truly expendable are pretty meaningless. Someone working in San Francisco will necessary make more than someone living in Dallas simply because the cost of living in San Francisco is higher than the cost of living in Dallas. You have to make more in San Francisco to maintain the equivalent standard of living you could have in Dallas. I would be interested in knowing the results of this breakdown if salaries were normalized to one city. It's entirely possible these language groups are confounded by location. Maybe Python + R positions are predominately not on the West Coast.

think you guys seem to overlook SAS which is in the 4th Gartner quadrant when it comes to analytics

Might need to overlay what industry sectors people work in e.g. The big banks pay well and most still have a big dependency on SQL and/or SAS

SQL salaries are going to reflect business salaries, R salaries are going to reflect academic salaries. Python gets used all over the place, and is being used for machine learning toward customer segmentation. There definitely needs to be subsets for sector and geography for this to mean much. 

It depends on where you work. If you work for a small company it could be around 50k rupees per month in India. If you work for a tech giant like Google it could be around 100–150k rupees per month. You could also choose to make the next dropbox and earn in millions.In accordance with this article https://diceus.com/python-developer-salary/

Is it easier and more efficient to use Matlab than all of the above. It can take weeks to do in Python what takes a couple of hours in Matlab.

Agree completely with William on this. It's the same in the UK, unless they're something like a boutique hedge fund, small companies will pay way less than large ones, and you're more likely to need to be a jack of all trades. Newcastle would pay a £25k salary for the same job that might pay £90k in London or £50k in Birmingham or Bristol, as there's huge employment and business sector skew across regions. Likewise, engineering firms will generally never pay as much as banking, unless you're in a specialist sector like oil or aerospace, which by definition tend to be geographically based in distinct locations. I'd question the validity of producing these sorts of surveys, unless they're focused on a very specific sector and region, and declare the details in their findings. Using their results as a guide isn't useful, as the job you're going for will invariably be based in one sector, at a desk in a single location.

The salaries definitely depend on the state you live in and additional skills you possess. Quick example, while living in San Francisco Python developers can earn approx $137,389 per year, but in New York it will be $130,517. Python programmers in Los Angeles fall behind their colleagues from NYC earning about $107K per annum. Check for more: https://www.daxx.com/article/python-developer-salary-usa

Reply to Discussion

RSS

Videos

  • Add Videos
  • View All

Follow Us

© 2018   Data Science Central ®   Powered by

Badges  |  Report an Issue  |  Privacy Policy  |  Terms of Service