Mostly for internal sensibilities of fairness, it is generally the case that e.g. level 3 engineers in Bogota working at the company would earn above-market for their skillset in Bogota. The companies tried to strike a balance between "We want to pay them equitably with our employees in high-cost US locales.", "We want to retain them versus other offers.", and "We do not want to give them golden shackles by e.g. paying grossly more than any employer in their low-cost locale."
This assumes functioning remote cultures and regular, full-time, full-class employees. Consultants obviously do things differently. (And any consulting client which made reference to Nagoya FTE rates in a negotiation with me would have gotten a firm handshake and non-specific pleasantries immediately.)
I've worked at two companies where I was explicitly told that I was being given a lower offer because I was working remote instead of relocating. Both companies offered to pay me more if/when I decided to relocate.
Both companies had lousy policies regarding remote employees that left me feeling like a second class citizen within the organization. Poor communication practices, poor or absent advancement opportunities. Both jobs ended around the 8 month mark.
By comparison, two other companies that I've worked remotely made me excellent offers, had awesome policies, great communication, and provided merit raises. At those places I felt like I was on equal footing with all other staff.
So, anecdotally, yes, there can be a gap, but any company that is likely to pay you less as a remote developer probably isn't going to be a good company to work remotely for.
Read these threads and you almost never hear anyone mention real numbers because they are terrified of either being fired or having their peers realize what a good/bad deal they've made.
Yet, in a lot of public institutions like Universities, public schools, salaries are a lot more transparent.
Companies probably don't want people to know what other people make because it gives the individual leverage to negotiate. We as developers are terrible at negotiating and don't want to admit it.
Anecdotally, in Lincoln, NE I've seen developers paid anywhere from $25,000 to $120,000, but most range in the $35,000 - 65,000 range. I believe most devs at UNL or the state of NE fall between 45k and 65k, but some can be a good bit higher.
What gets me is if a dev in the midwest who would normally get paid $60,000 or so, how much should they get paid as a remote worker for a startup in SF? In SF I assume a dev costs $120,000 or more, so if you were being hired there what is the right number to ask for?
In a truly remote work environment, does it really make sense to pay dramatically less or more just because of where someone lives? Is someone's relative value decided by their location or by their skills and abilities?
Companies probably don't want people to know what other
people make because it gives the individual leverage to
negotiate. We as developers are terrible at negotiating
and don't want to admit it.
If you're a developer who is good at negotiating, it's a whole lot easier to negotiate a $20,000 raise for yourself than to negotiate the same raise for everyone on the same pay grade.If I make the company $200,000 that funds my $20,000 raise right there - if it's just a raise for me. If I have to fund the same raise for 100 other guys before I can have one myself, funding that will be about 100 times more difficult.
Works out well for those living in cheaper cities, but it does suck a bit if you're in a high tax country/state, since Singapore's tax rate is in the single digit percent.
More seriously, I agree with you. I don't think performance is quantifiable with parametric methods, you just have to allocate a fair amount of mental effort to the problem. For example, a "maintenance guy" who enjoys breaking other people's code, fixing holes and doing tests is extremely valuable, but not someone that is easily sold to non-technical management, nor that is very visible; at the same time, without some builders to work with, his salary is wasted.
We get away with it because we have a carefully selected (around 3 man-month of just recruiting) small team (10) of experienced developers from a small but strong and mature community (Haskell) on a well defined problem (fix and improve a large e-commerce platform). I shudder to think of the magnitude of the problem for a much larger company with much larger teams, like Google or Microsoft.
Buffer have been incredibly transparent about their approach to this: http://open.bufferapp.com/introducing-open-salaries-at-buffe...
When I was a developer in a low cost of living area prior to moving to the bay area several months ago my salary was within 10% of the "Senior" engineer positions listed. This was at a non-profit, doing some really junior level CRUD work (so glad I'm not there anymore).
I'll leave it as an exercise for the reader to discern whether that means the salaries are "lowball" or not. And it's for Buffer to determine whether it can afford more, what the Buffer-market-rate is, etc. Nobody else. Frankly I wish more companies were transparent about salaries. Information asymmetry is a killer when it comes to negotiations.
I understand the cost saving benefit from an employer's perspective, but since that's not me, I've chosen my side.
Also, from a employees perspective if you feel you're getting a lower wage than someone who is of less value to the company, you can always try and renegotiate your salary.
Instead, developers are priced by companies at what the market will bear just like any other product. If a $40k salary in Bangalore will get them X quality of developer, and they need $120k in SF to attract the same quality of developer, then that's what the policy is. The policy might be disguised behind cost-of-living etc., but it's really market-based pricing.
In the same vein, keep in mind that it costs a company more to hire someone in an expensive area. So if developer skill was the only issue, why would companies want to hire locally if it costs more? The answer is If developer skill was the only thing at issue, no developers would ever get hired in SF because there's plenty of great developers elsewhere for less money. The reality is that having people local adds significant value, all other things being equal, so companies are willing to pay more for local people.
I think that it would make the most sense to pay someone what they are worth, regardless of location.
As a remote worker who moves quite a bit I'd be constantly having to renegotiate my salary.
If you move often and work remotely, it seems to me that salary renegotiation would become as routine as any number of other tasks you doubtlessly encounter.
Taxes are part of it. If overall state taxes (property, local, state, sales, and other fees) is 25% of your gross in CA, and 15% of your gross in MO, companies can reasonably expect to pay less in MO for the same work.
Another way to think about it, what percentile does your pay fall into for similar jobs in San Francisco versus Kansas City. If being paid $120k as a 5-yr Rails Developer in San Francisco puts you at the 50th percentile, move to Kansas City and all of a sudden that same $120k could put you in the 80th percentile (numbers are totally made up). Assuming developers aren't actually smarter in CA than MO, your percentile pay shouldn't change.
Worry about the quality of the work I produce for you and then pay me for it.
I completely agree with you in regards to a dollar being very different in SF as compared to KC, but that should have no relevance to how much I get paid.
> Your pay is actually not "going down"
Yes my pay actually is going down. I would literally be brining in less money. What I choose to do with that money should not matter to my employer.
Don't forget that if you earn less money in the same country then you'll pay proportionally less taxes. Made up numbers: CA = 120k gross -> 80k after tax. Another state: 100k gross ->70k after tax; Difference in cost of living: 10k). Now you are breaking even. Of course, totally made up numbers.
And as an extra, for every extra dollar you have in a cheaper state, you can do more with it than in CA.
Sure, I would love to make the same kind of money in the cheapest corner in the world but companies aren't there to make us rich; they are there to have a business! If you want to try to convince company to pay for what you produce instead of paying a fair salary, try contracting instead (and be good at selling yourself)
1. If I make more than approx $106k a year, I cap out on paying FICA. 2. As far as I know, everything I buy at places like Amazon costs the same regardless of where I live (with in the US). 3. Many financial incentives are provided as a percentage instead of a raw dollar amount e.g. 401k's are usually matched by percentage, raises are often a percentage increase.
Why would you hire one guy in Bangalore and pay him five times market rate, when you could hire five guys and pay them exactly market rate, and presumably get a bunch more work done?
(Obviously it isn't quite this simple, programmers are special snowflakes who cannot be substituted, it's worth paying more for talented people who get more stuff done, larger teams have greater management and communication overheads, remote workers will be in inconvenient timezones etc but my point remains even if you decided to hire three guys at 60% above Bangalore market rate)
There is no such thing as what you are worth.
Let's assume that it is possible to asses your BaseWorthIndex, which would include such factors as your technical skills, people skills, general experience, relevant industry experience, motivation, work ethics, etc. You will notice that even this base index will not be a constant over time (in general, you learn as your career moves forward, but you may also pick up vices), nor will it be the same for all positions for which you are a potential candidate (industry experience and motivation may vary widely from one position to another).
If you want to consider that your TrueWorth is the amount of value you add to your company by direct result of your labor, you have to consider that this is proportional not only on your BaseWorthIndex, but on a number of force multipliers that your employer provides (or fail to provide). Doing the same excellent work for an obscure IT department in some random enterprise, for a high tech big corporation, for a SV startup or for a non profit results in very different outputs, and that more often than not these are out of your control.
In a sense, the employers with bigger multiplier factors want to bring in the best talent, and should pay above average salaries, industry-wise, but it's not required that this extra factor has to be directly proportional to the value added by your position.
If on the other hand, you want to define your TrueWorth in terms of a ratio between your BaseWorthIndex vs average BaseWorthIndex for your industry, you are in similar problems. Being (noticeably) above average means you may command above average salaries, but it does not mean an arithmetic proportion will be calculated; after all, our BaseWorthIndex is a fiction and it would be extremely hard to measure.
Then there is the issue of cost of living. Since as we discussed before, your compensation is not defined in absolute terms but relative to your peers, the issue of how much does it take to make a decent living at your current location comes to play. Take into account also that this is an asymmetric market and that you are always at disadvantage. I have seen more than one good friend and colleague been lured to NYC or SV/SF on the promise of plump returns, only to find out that cost of living lets them in worse conditions that what they had already achieved locally.