This is one of the most important questions in all the open source world, and yet, instead of one of the big-name writers of the hacker world bringing it to the floor, it comes in the form of a question from someone hoping to earn $15-$20 an hour. It makes me sad.
gdiocarez: First and foremost, thank you for breaking the silence on this.
As for an answer: So, the world is weird. I generally bill $185 an hour as a spot rate. I have fairly little problem finding steady work at $100 or so on a steady basis. I tell you this because I think it's fairly typical for someone living in a major city in the US.
My hope, and I hope everyone's hope, is that the world will generally equalize around this range, or even higher. I have observed again and again that, each time I or a colleague makes a contribution of value, we create a dozen or so opportunities for like contributions.
Unlike the fossil fuel economy that characterized the industrial era, I surmise that the information age is somewhat sustainable as an exponential curve of economic possibility. This is a radical viewpoint I'll warn; many of my (otherwise seemingly reasonable) friends fear that "the music will stop" unexpectedly and that today will be one of "the good old days."
The truth is: nobody that I know knows the answer to your question. Price yourself aggressively and work hard. I can tongue-in-cheekly advise you to try to be lucky. So far, being born in an economic powerhouse (and in an economic, racial, and social position of privilege) has worked for me.
It is not going to equalize around $100. It's going to be lower than that as more and more specialists from around the world enter the field. Indeed, these are the good old days, just like it was for many explorers and entrepreneurs in the past.
The software world is also still (and always will be) dependent on the "real world", where fossil fuel is still key and will be for a long, long time.
I have to say that you live in a bubble slightly above ~95% of the world, you are indeed very lucky - hopefully for the rest of your life.
My big question is how can software--particularly free software--create jobs? Take operating systems. With free alternatives the trend is towards commoditization and declining prices. Same goes for almost any category of desktop software. The only potentially increasing trend is in service, customization, etc.--all geared towards business productivity. Increased productivity may or may not result in net employment gain. In fact, for every programming job there may be manual jobs becoming obsolete. So what can sustain high hourly rates and create new jobs? One part of the answer must be increased specialization, but not everyone can become a specialist.
Free software allows new businesses to enter markets with a lower upfront investment than old ones, hence creating jobs (including jobs related to using that free software.)
Now, are they just siphoning profits (and wages) from the older businesses in order to create these jobs? In my opinion, it's more the case that the older business had a high price initially to offset their upfront software costs, and by the time sufficient free software appears they are just riding it without having ever had to distinguish themselves as the 'premium' option, even though it's a fact they aren't even trying to develop to the non-premium market with lower prices. So the new folks come, they have lower prices, and a lot of people that would have never used that service start using it. And unless the older businesses fail to justify their premiums, this should grow the market enough to preserve high wages.
Eventually the new business will (should) develop their own in-house solutions beyond the free software, and you'll have the cycle repeat itself.
With iron there is scarcity and extraction costs. Free software displaces proprietary software which benefits just about everyone except the proprietary software companies.
So major companies (Oracle, Red Hat, Google, IBM, Intel, Samsung, Fujitsu, Texas Instruments, etc) are contributing to Linux. That creates jobs for all the kernel hackers who probably started before kernel knowledge was a hot commodity.
But that effect is minor compared to what people are building WITH Linux:
- Red Hat (a 1B company!) wouldn't even exist if it weren't for Linux. They don't "sell Linux", they sell services around Linux.
- IBM invested a billion dollars in Linux, and it paid off. They recently decided to invest another billion. Their support for Linux sells Mainframes and their expertise sells services.
- Google wouldn't be able to give away their search engine (over 10 million servers) if they had to pay Microsoft for every server.
- Companies like TI and Intel can add Linux support for their chips (a tiny expense compared to creating a new CPU), which will enable new devices to be created easily. Some of those new devices (TiVo, Android, Tomato WRT, RPi) will be successful and cause their companies to hire more people.
Giving away software doesn't compete with programmers -- it only competes with companies that sell software. Only a tiny fraction (maybe 5%?) of programmers work for companies that sell software directly. The vast majority of programmers write internal line-of-business software, or sell their software indirectly (SaaS).
So any Open Source software (Drupal, Apache, etc) is far more likely to help lots of companies save money (therefore have money left over to create jobs).
> In fact, for every programming job there may be manual jobs becoming obsolete.
That will make programming jobs be more "in demand" compared to regular jobs, therefore command higher salaries.
> So what can sustain high hourly rates and create new jobs?
You are thinking about it from the wrong end. The question is "can a bit of software be worth millions/billions to a company?" The answer is clearly "yes", since we've seen tiny teams create billions in value over and over.
Search around for the writings of patio11 on HN. He will open your eyes. People charging $200/hr are playing a different ball game than people charging $20/hr. They are not 10x better, just better at demonstrating the value of their software to the client.
> not everyone can become a specialist.
Just the opposite. There are so many new technologies and branches of science coming out that everyone will be a specialist in the future. In fact, programmers are already highly specialized. No matter what technology you pick (COBOL, Java, .NET, Linux, Microsoft, nodejs, Ruby, Python), you will find that some subset of programmers will refuse to work on it because they refuse to learn it.
Did you see the Economist article on the front page today?[1] It asserts that technology fails to boost wages and that over-education is a problem because of a failure to create enough suitable jobs. I don't know if that's all true, but surely there must be a point when enough software exists that it becomes difficult to find jobs unless you are above average or highly specialized. Or in other words, workers fail to adapt to the increased rate of change.
Linux is certainly the shining example of free software. But how many other projects have the same potential to create jobs? Even with Linux, it's not enough to have an average understanding. Large companies may have a few positions for mediocre sysadmins, but competition will squeeze them out.
Probably the answer is not in software itself, but in the creation of small businesses that rely on free software. Sites like eBay and Alibaba have enabled countless people to work from home selling things around the globe. There are also countless data entry and Mechanical Turk-style jobs. And of course electronics manufactuing. So the trend is that even at the bottom technology becomes a requirement. I guess the good news is that with all the increased productivity the standard of living rises and people will have more time to learn new technologies.
> Probably the answer is not in software itself, but in the creation of small businesses that rely on free software.
Yes, that is what I was trying to say.
Not using Open Source on principle is like creating "make work" just so people can keep their jobs. But all "make work" does is allocates resources inefficiently.
> over-education is a problem because of a failure to create enough suitable jobs.
I think we've wandered off the topic (my original reply about Open Source.).
> technology fails to boost wages
I find it odd they wrote a whole article on that, when the converse ("Lack of technology fails to boost wages") is equally true.
Even if wages are the same, what we can DO with those wages has already changed for the better. Even poor people in America have TVs, Air Conditioning, and the Internet (even if it's only at work or in a library). Anyone can call up a satellite map of the world, or have an entire encyclopedia at their fingertips. Only rich people could do that a generation ago.
It's an odd perspective. We produce more value for less work, and yet we can't work (proportionately) less and still enjoy the same value. Sounds like a problem of how the value created is distributed, not a problem with not creating enough value?
That's because world governments and central banks devalue currencies. Instead of US getting to work less hours because of increased productivity, banks and governments get the benefits of increased productivity.
Oh sure, computers and televisions are better and cheaper than ever, but you can't support a family of 4 if the dad is a grocery store bag-boy and the mom babysits, which is what my family was able to do 50 years ago, with a house (mortgage), car, motorcycle, and a boat. I doubt if a bag boy today can even afford gas, car insurance, rent, and food without struggling.
I think inflation has more of an effect on savings than earnings, but what you said about supporting a family 50 years ago rings true. I don't think today's salaries go as far as they did in the past few decades.
"When it gets down to it — talking trade balances here — once we've brain-drained all our technology into other countries, once things have evened out, they're making cars in Bolivia and microwave ovens in Tadzhikistan and selling them here — once our edge in natural resources has been made irrelevant by giant Hong Kong ships and dirigibles that can ship North Dakota all the way to New Zealand for a nickel — once the Invisible Hand has taken away all those historical inequities and smeared them out into a broad global layer of what a Pakistani brickmaker would consider to be prosperity — y'know what? There's only four things we do better than anyone else:
Well, the average 21st-century car already has "contact patches the size of a fat lady's thighs" and we regularly converse through our avatars... Maybe it's one more eerie Stephens pseudo-prediction that will come true.
It remains to be seen what will happen to developer employment in the next global economic contraction. The US equity & IPO markets are likely ballooning wages on the high end.
Long term certainly there remains a lot of transition from paper to bits and then require really skilled developers to maintain and grow after the transition. There should also be a lot more programmers then.
Communication skills & who is employing you matter a lot. A mediocre developer can charge a lot when they are working alone on a project for a non-technical company. That isn't going to work when placed in a position where its obvious your work is crap.
Of course inflation means wages will go hell above $100, but what that means is entirely relative. That said, it is nice to be in an area where your wages are not neck and neck with robots. Increasing minimum wages + almost zero % interest rates are converging on unskilled labor very quickly.
I'm not so sure. Rates from the Indian SIs for senior developers have risen to the $60-80 range lately. Not that people get paid that of course, but they're probably paid around $30-40/hour. China remains less expensive, but I doubt for long. Rates usually rise across a region over time.
Sure, I can still find small developer collectives in Bangalore or Hyderabad selling Java coders at $15/hour ... But thats the lower end of junior developers.
The problem I have with that view is that it takes a lot more than picking up a pick-axe and spending a day or two learning how to look for gold. I don't know about you, but I'd venture a guess that most of the HN crowd (myself included) has been borderline obsessed with computers since a young age. Even if someone spends $10k to take one of those 6 week "boot-camp rails" classes, do you really think they're going to be able to compete at the same level as the rest of us?
I assume that the GP is talking about the developing world. As more people in India,China,Eastern Europe,Latin America and Africa also grow up with computers, many of them will be just as talented as US/Western Europe based developers and will be willing to work for a lower hourly rate.
Not only the developing world - simply youngsters who will be entering the workforce soon. There's going to be a lot of them (what with programming being the new goto "future proof" profession) and it will drive down pay rates like never before, in my opinion.
Agreed, hoping for $100-$200/hr for all devs across the world is wishful thinking. When things 'level out', one would expect it to tend to the average, not the outliers.
I heard this a decade ago, and maybe this time it will actually happen, but the third-world has yet to suck down the wages of domestic software developers.
It will probably tend to the minimum. But the minimum is constantly rising, as the standard of living in the developing world rises. So it's not unreasonable to think it will level out around the current US rate. Indeed, eventually it will be a uniform $1000/hr, because of inflation. Then $10,000/hr, and so on.
>Unlike the fossil fuel economy that characterized the industrial era, I surmise that the information age is somewhat sustainable as an exponential curve of economic possibility. This is a radical viewpoint I'll warn; many of my (otherwise seemingly reasonable) friends fear that "the music will stop" unexpectedly and that today will be one of "the good old days."
I had an insight the other day (while watching one of Hans Roslings videos): it is mathematically impossible to distinquish an S-curve from exponential growth until/unless that growth flatterns, just from the shape of the growth alone.
The good news in case this is an S-curve and not exponential growth: we just stop widely growing, we don't peak and crash.
There are also no indefinite exponential curves in nature. The right way to think about it is trying to figure out what the bounding resource (its eventual limit) might be.
Exponential curves have a constant derivative. Logistic (S) curves have a decreasing derivative. If you look closely, you can begin to distinguish the curves at around the 25% mark. Maybe even lower, if the data is really clean.
You are correct. Or as I should have stated it, exponential curves have derivatives in constant proportion to the curve -- so if you look at the change vs the current value, it will be a constant ratio.
With a logistic (S) curve, the ratio of the change to the current value will decrease. By the time you get to around 25% of the maximum value, the difference should be visible.
Thank you for the insight. I'm still new to remote working and don't know about transaction and payments. Though most of my works is remote and my paycheck is given in person.
Hi gdiocarez, I cannot speak to your abilities because I haven't seen your code, but $20 an hour is absolutely achievable. I would strongly recommend that you do also take some courses to improve on your English. Good, unambiguous communication is crucial for remote work (I am remote from the rest of my team and bad communication costs so much time and effort). Improving your English will also help the perception your potential clients will have on you and your work.
So much this. It's not just important to be okay at communication. I've had coworkers in the U.S. that were immigrants and it was absolutely painful to work with them to the point, where we actively just excluded them. We just found human cron-job tasks and relegated them to those tasks (unfairly, but better than laying them off). In things like software, where there are many many abstract concepts being thrown around, not being able to communicate will get one quickly out the door.
Good advice. One thing I do know: "people skills" are as important in software as they are almost any place else. And in case it offers any perspective at all to the OP, I am working my way up from a disadvantaged place in US society, and I'm getting paid $20/hr to intern in my first programming job. I expect that to be $30/hr by the end of the year, then on from there. FWIW.
I'm still new to remote working and don't know about transaction and payments.
Ask somebody who works remote or pay an accountant. Heck failing that ask the company how they would prefer to pay you (this has the potential downside that the method they prefer is not likely to the the most optimal method from your perspective, but it is likely superior to not getting paid at all, i.e your current situation).
gdiocarez: First and foremost, thank you for breaking the silence on this.
As for an answer: So, the world is weird. I generally bill $185 an hour as a spot rate. I have fairly little problem finding steady work at $100 or so on a steady basis. I tell you this because I think it's fairly typical for someone living in a major city in the US.
My hope, and I hope everyone's hope, is that the world will generally equalize around this range, or even higher. I have observed again and again that, each time I or a colleague makes a contribution of value, we create a dozen or so opportunities for like contributions.
Unlike the fossil fuel economy that characterized the industrial era, I surmise that the information age is somewhat sustainable as an exponential curve of economic possibility. This is a radical viewpoint I'll warn; many of my (otherwise seemingly reasonable) friends fear that "the music will stop" unexpectedly and that today will be one of "the good old days."
The truth is: nobody that I know knows the answer to your question. Price yourself aggressively and work hard. I can tongue-in-cheekly advise you to try to be lucky. So far, being born in an economic powerhouse (and in an economic, racial, and social position of privilege) has worked for me.