It's supply vs. demand, that's all there is to it. I'm not buying any of the above as a justification for big salaries.
Yup. There may be good demand because of force multiplier or return to capital or whatever. (Which are just ways of saying that the work translates into something people are willing to pay for.) And there may be (somewhat) limited supply because it's not something everyone wants to or can do, whether through formal education or otherwise.
But, take either supply or demand away and the salaries commanded adjust accordingly.
That I could spend 10 years becoming an expert on medieval German literature doesn't necessarily mean that I could command a high salary however rare that expertise.
Wow, people really have forgotten the IT-death. :-)
There are cycles and bubbles here too. They just might not be in phase with the general economy.
(And get off my lawn. :-) )
That discussion feels imprecise, though. Are those really the reasons that programmer salaries are what they are? If there were 20x more programmers, would that change things?
Worse, it makes me want to avoid that whole side of the discussion, because it also sounds like justifying an economic fact on moral grounds.
Yes, supply and demand and perverse economic incentives sometimes result in high demand for things that aren't that beneficial to society as a whole. Personally, I happen to think that what programmers do is more beneficial to society than what Hedge Fund managers do. But I don't care to have a conversation about whether or not we 'deserve our rates.'
It's what supply and demand dictates; that much is definitely true.
Software developers work longer hours. I've never been in an environment where developers hang their coats up at 5:00 and go on with their carefree lives.
And while unemployment may be low in IT, developers do not enjoy job security.
Agreed. Plus, learning in this trade is a job never done. It's not like once you get a foot in the door (and land a job), you're set for life.
> Software developers work longer hours.
I can't speak for the US, but it doesn't seem to be the case in Europe. I live and work in Poland, I kind of know the job market in the UK and Germany.
> And while unemployment may be low in IT, developers do not enjoy job security.
Well, relative job security. Not neccessarily in terms of any single job being safe and granted, but there's a rather slim chance of getting stranded between jobs.
And I've always worked in environments where they do.
Anecdata for the win?
funny but from my circle of friends I never heard of anyone being unemployed and looking for job for more than a month. I myself had exactly 0 time of looking for a job in 12 years of working. I'm in Europe, though, we're ridiculously underpaid compared to the US I think. Very few people earn more than 100K.
I am all for non-interventionist policies, but I am not so sure this is so black-and-white. There is definitely a benefit to protecting our allies and ensuring democratic societies remain as democratic as possible. The amount that it benefits you on a day to day basis is probably impossible to quantify, but there is definitely a benefit at a very high level, economically speaking.
Add to this the glut of contract positions in industry along with the wide range of pay there, and it becomes much harder to make an accurate assumption (at least for me in my head) of what software engineers should be making.
Googling "Software Engineer Payscale: brings up pages listing, 73, 78, 83, and 92 thousand per year. And I am leaving those roles with sub-titles like senior and principal off the list. That said, this is a cool idea and undertaking, especially the country comparisons.
Also the article doesn't judge the differences of incomes, the "overpaid" is your interpretation.
I bet you the comparisons would not look so good then.
When that happens, brace yourself for a never ending stream of malpractice suits.
Are there any jurisdictions where a Software Engineer can lose their license?
Software Engineer on the other hand, is just a label that doesn't mean anything. AFAIK, no jurisdictions license Software Engineers. Unlike law, there's no punishment for working as a software engineer (although there are some jurisdictions where the title "Engineer" is regulated).
Unlike practicing law, there's no punishment for working as a software engineer without a license.
I wonder if they meant "median salary" instead, as median vs. median would seem a better comparison than median vs. average.
How could it be enforced that software developers can only earn the median income of the general population?
Passing new laws that set a limit? That would be completely crazy, you might as well just go and live in North Korea if you like that.
Why shouldn't private companies have the right and the freedom to pay more out of their own pocket (not from government funds) for certain employees?
Unlike doctors and lawyers, software engineers don't have any respect and are pretty much working class, but that's another story.
Hired for a specific, technical purpose. Expected to (usually) have gone to college.
No offense, but equating a comp sci degree (even with years of work experience) to a medical doctor is a little laughable. Doctors (as a field) are a step up from software engineers in terms of professionalism and work expectations.
I see this kind of Rodney Dangerfield sentiment a lot on HN but it has never made a lick of sense to me (especially the "pretty much working class" variety).
And also if software engineers want to get into the "doctors and lawyers" category we need to start doing doctory and lawyery things like "professional societies with teeth" and "board/bar certifications" and "codes of ethics" (good luck on that last one).
In fact, the AMA was originally founded to keep mid-wives from taking a cut of their most lucrative child-birthing business. They are one of the biggest lobbying organizations in the country after the military industrial complex. Along with the Bar Association, Teachers and Police Unions, and financial organizations, the AMA proudly proclaims that their goal is to enforce 'quality' standards for the good of the public. Don't fall for the spin.
We software engineers currently lack the social intelligence to realize how bad we're getting screwed, which is ironic considering the technical prowess we've collectively got.
Of course, the superficial justification is that if you don't go to school for 8 years and pay $150k+ into the education industry before you can get a crack at real work, then it's because you're a fraud who wants to fleece the general populous. There is obviously going to be a surface justification. However, many lawyers are still primarily interested in fleecing people, and the artifical barriers to entrance probably only serve to further incentivize it; that's a big chunk of debt hanging over one guy's head.
Suppose he wanted to undercut his competition and offer meaningful legal services that a normal person could actually afford; oops, he needs to bill $200/hr because after overhead, 65% of that goes to his student loan payments. :|
However, I'm sure that the ABA and AMA do not function at all like unions and are run by truly beautiful people with stunningly pure hearts who would never put their own self-interest above the general welfare. I am sure the strength of their character fully precludes any attempt to keep competition low and/or to make the minimum viable price point of the profession artificially high. Such a thing would serve only to enrich them and their compatriots while blanket disqualifying large chunks of people that would otherwise make great lawyers and/or doctors, and of course, the people in charge would never even fathom something like that.
No, actually they don't. Chiropractors are still practicing, and in huge numbers, and probably gaining in popularity, and they don't just do chiropractic these days, they also do homeopathy, "supplements", and various other bogus remedies. "Naturopathic" doctors are also a big thing. There's no shortage of quackery in the medical field.
And because that chiropractor is licensed by the State, the State government is explicitly endorsing this doctor's medicine and all the "theory" that backs it.
Yes, indeed you could.
> But I don't see much push to license these things rather than criminalize them or ignore them
It probably depends on what segments of the population you run with, but among some groups, there is a fervent belief that both the drug trade and sex work should be legitimized, licensed, tracked, and taxed by the state.
You're right that this argument could be made for anything, and that ultimately a moral judgment has to be made as to whether the practice is tolerable under regulation or whether the practice is so offensive that it should prohibited totally. I'm just saying state licensure shouldn't necessarily be interpreted as a recommendation or endorsement of the service offered; it is perhaps more prudent to interpret it as a service that is recognized as in-demand and deserving of regulation without implying a judgment as to whether the service is beneficial.
As for law, most non-US jurisdictions allow attorneys to practice after 5 years of training and the receipt of a LLB degree, whereas the US typically requires the full 7 years and a JD. Just another way the ABA is protecting the American public.
(That's roughly where I was before going to a programming bootcamp, mapped over to the medical world.)
In comparison, over 20% of my freshman CS class flunked out before 3rd year and there were still plenty of subpar students that made it to the finish line.
Not sure why you're down-voted. You're 100% right. Honestly, I really am flabbergasted by a good 50%-75% of the HN community's responses to organizing. This is probably the most intellectual group of people I participate with on the internet.
But the cognitive dissonance when it comes to 'free-market', unions, etc. for our profession is almost sad.
Honestly, though, if the torches and pitchforks didn't come out after the news broke about the non-poaching agreement between the CEOs of the major tech companies, I doubt they ever will.
The need for a worker cartel is directly proportional to the relative power a typical employer has over a typical employee. If the only way you can improve your work situation is by changing jobs, you could benefit from a union.
Software reasonably fits in as a white collar job, which is working class.
In general it's probably more interesting to discuss the various things people use to differentiate roles than it is to argue about what words should be used to describe the roles.
That's a rather eccentric understanding of "working-class," which typically refers to blue collar workers.
There are ways in which those distinctions are much more interesting than wage levels (which tend to dominate "class" discussion in the US).
OTOH, as more and more blue collar type jobs are being obsoleted by machines, I think we're coming up upon a more modern definition of working class: those who do not derive profits from their actual value-add.
For example, most other 'professional' type jobs - finance, law, medicine, etc. - typically have a well defined career path where you're used and abused when young, but typically get to share in the profits once you make partner or senior level.
OTOH, most engineers will max out at about $100K-$160K based on location, and will never share in any profits or income. Realize that Google and Facebook are not typical when you consider the millions of engineers working in mostly typical cost-based positions for insurance companies, banks, and other non SV companies.
Obviously, $150K is much better than the other 'service' workers making half that, but we're moving closer and closer to becoming a 'working-class' type profession instead of one that's respected /w regard to both pay and societal treatment.
Engineering (all engineering, not just software engineering) is somewhere between a trade and a profession; too skilled and intellectually rigorous for the former but lacking the status of the latter.
Though obviously some software engineers "cash out" and then don't _need_ to work anymore, and many doctors would quickly run out of money if they stopped working.
Lawyers don't even make that much money, and a lot of them drop out and change professions; we have a glut of lawyers. The ones at the top make a lot, but your rank-and-file ones don't, they probably do worse than your average software engineer. But it doesn't matter: society holds them and doctors in far higher esteem than engineers or programmers of any kind. It's a product of America's anti-intellectual tradition.
Now of course, there is a big factor of relativity involved: if a woman is a waitress or secretary or cashier, for instance, she'll probably be very interested in dating an engineer or programmer (doubly so if she's a single mom struggling to raise some kids). But if she's a lawyer or doctor or she has the traits necessary to attract a doctor, she won't be. If she's an engineer herself, she probably would be interested, but since she's such a minority in her field she'll also have her pick of male engineers and won't be single long.
Besides that, I don't see how you can really justify calling medicine or law "less intellectual" than engineering or programming.
A software engineer/developer/programmer/whatever is paid about the same as your average office employee in much of Europe.
And that's exactly what software professionals should do as well - have a strong professional body to represent us.
I've said this before: there are a lot of 20-something developers on HN that continue to push back against organizing as they're making decent money and in high demand (for the moment), compared to their friends in other professions. The problem is that once a software engineer hits his/her thirties, those professional friends have caught up in salary. We'll still be working in open-office environments with free soda, while they'll have real offices, expense accounts, salaries based on profits, and most importantly, respect.
By late 30's, we've hit the glass ceiling, but doctors, law partners, finance and business pros are just getting started. There are exceptions (e.g. the lucky start-up guys, consultants that own their own shop, etc.), but for the most part, this is reality.
The lack of any sort of organization for our 'profession' is one of the main reasons I'm beginning to look for a new career path. The H1B is a disaster - I actually worked in India for one of the big abusers, and realize that without something, things will get worse, especially since we've probably maxed out this latest bubble.
Your other comments are more worthy of further thought.
I don't understand why you feel software professionals aren't given respect. Nearly every "Best job" survey on the internet will list it #1 or 2, with several other technical jobs in the top 10. That doesn't necessarily equal respect, but the industry is certainly getting tons of attention and many are trying to enter through any means possible. I'm not sure how we can measure respect or disrespect, but I don't see it.
I know plenty of engineers that are making a good living with plenty of work/life balance that are well beyond 40. I'm sure there are some that aren't as well, but engineers that are mindful of marketability can have a long run in the industry.
If we're going to have a meaningful discussion about this, then we more or less have to start to make these comparisons. Are people who have the freedom to chose their careers in the US behaving irrationally by choosing, law, medicine, finance, actuarial work, nursing, dental hygiene, and so forth over software development? A lot of people are surprised to hear that out in San Francisco (check BLS stats), the median salary for a software developer is roughly equivalent to a dental hygienist, notably less than for a registered nurse, and of course far less than the median for a doctor or lawyer. I don't object to higher salaries in these fields at all, but looking at the data, I'd say that any "shortage" is pretty easily explained as a rational response to pay, career security, working conditions, and the opportunity to do meaningful work that helps others.
I don't see how you can answer this question without comparing the fields.
As you can probably tell, I'm skeptical of almost all claims of a "shortage", regardless of industry. I don't dismiss it as a market impossibility the way some people do - I do believe that cultural and educational problems can lead to "shortages", but I do think we need to be very, very careful about analyzing it.
Software is a tough one to analyze, because anyone can call themselves a programmer (or even an engineer, most places) after reading a book on php (or not reading it and just saying they did). But yeah, I do think that someone with the analytical and logical reasoning ability to program, the reading comprehension to wade through dense technical material, and the persistence to keep at it until he or she can actually write, adapt, and maintain a code base… yes, I do think that person is almost certainly capable of handling the academic work at the median level in more or less every profession.
I've said this before, but I think that any "shortage" has much more to do with traditional career paths considered by high school and college students as learned from their families and upbringing.
Just look at the careers you chose - law, medicine, finance. How many times did children of my generation (Gen X - I'm 44) hear "be a doctor" or "be a lawyer", or banker/nurse/dentist? Countless times.
I never remember being told "be a computer programmer!" in my entire life, and I personally had much more exposure to computers than most in my generation probably did in the 70s/80s due to my proximity to a leading university with several professors living on my block.
I don't think decisions to join other fields over technology have anything to do with rational responses to pay/security or working conditions, but are just steeped in traditions. My grandparents didn't know "computer programming" was something people could do for a living. My parents probably never considered it as a career for me until I was already out of college.
My generation may be the first generation of parents to identify software dev as a legitimate and realistic career path.
You may very well be right about how people make career decisions. What you've described sounds closer to how this actually happens. Very few people sit down with a spreadsheet, estimating salaries, working conditions, job security, likelihood of various outcomes, factor in their own risk tolerance, and take whatever comes out as the decision. Many people don't even engage in a similar but less mechanical version of this. So yes, in that sense, I agree.
I do think you may be underestimating the extent to which the traditions you describe may be a distillation of what I described above, though, almost a kind of heuristic. A kids sees that his uncle is a member of profession X, lives in a nice house, enjoys his work, realizes it's a good match with his own personality, and is drawn to it. Parents are aware that certain fields are a path to the middle (perhaps upper) middle classes and nudge their own kids toward them (or rule with an iron fist and practically force them to).
This is why, as I said above, I am open to the concept of a shortage, that I don't dismiss it outright the way some economists do (where a shortage simply indicates disconnect between supply and demand - as with all things, supply rises and demand diminishes at higher salary/price levels until the market reaches equilibrium).
I do see human choices, including career choices, as more personal and cultural - I wouldn't call them irrational, which implies a notable lack of reason, but they are not the result of cut and dried reasoning. I am open to the possibility that these cultural and personal decision can leave young people - especially in situations where new valid professions have arrived within the span of a half generation - unaware of or uninterested in things that are actually very, very good options.
But like I said, I'm only open to this, I'm not willing to conclude that this is what is happening without looking at the data for a particular field. People may be overlooking a field that would be a very rational and wise career choice - or, alternatively, they may be rationally and wisely avoiding a field because far better options for people with their skill and academic mindset exist elsewhere.
My conclusion is that while it isn't wildly irrational to go into software development, the overall pay, working conditions, and job security ultimately do fall short of the kind of options available to people who are capable of going into it. We are a field where 44 year olds like us often (but by no means always) work in open offices with back visibility, experience issues with age discrimination, work in (corrupted) "agile" or "scrum" teams that prevent long term thinking or meaningful autonomy, and at the median in SF (ground zero for the "shortage") earn only roughly the same salary as a dental hygienist, and considerably less than a registered nurse. Sometimes our work is important, but often we are just migrating data from peoplesoft to oracle and back again, (marching UP and DOWN the squaaaaare![1]), or making the thingy look like the other thingy and work with this other thingy (please estimate the time it will take for our schedule tracking software and update your progress!). This may seem like an unfair characterization, and I would certainly agree that there are far more interesting jobs in software development out there, but some of the loudest voices insisting that there is a shortage of developers clearly are just looking for ways to pay people less to march up and down the square.
Every time I say this, it is important to me to point out that I have absolutely no objection whatsoever to nurses earning good salaries, or earning more at the median than software developers in San Francisco. They do an important and hard job, and I absolutely believe they earn those salaries. What I won't do is act like there's some mysterious cultural factor in why young people are not going into software development in the numbers that silicon valley employers would like them to.
This isn't about making it cool, or simply helping people realize the opportunities that are out there. There's some pretty deep structural change that needs to happen before people with choice in the US will consider software development a better option than the other paths available to free and full citizens who have the right to pick their own educational and career path in a labor market.
[1] monty python reference
Regarding your anecdote of the uncle with the nice house, I'm sure when nephews and nieces of 44 year olds like us (who might be teenagers now) see software developers with fancy cars and 6 figure incomes living in the same neighborhoods as doctors and lawyers, they might give more consideration to tech as a career option instead of committing to 7+ years of college for law or medical degrees. We may be a few years away from that though. When did decent money come to software? Late 90s? That's only one generation.
I'd also disagree that the pay, working conditions and security are encouraging many to stay away. I don't expect the general public has those same notions. We could make the same argument for doctors - the salary looks great, but look at the price of malpractice insurance and how government interference in the market could impact their earnings over time. All industries will have issues that may not be common knowledge to the public.
If you spend lots of time on HN, you'll see these things, but most people outside the industry probably aren't exposed to stories of long hours and open offices. I don't expect those are the issue, but I certainly could be wrong.
22 yrs: L3, $160k total comp
25 yrs: L4, $210k total comp
27 yrs: L5, $260k total comp
32 yrs: L6, $320k total comp
39 yrs: L6, $320k total comp
Averages:
22-25: $180k avg
25-27: $230k avg
27-32: $280k avg
32-39: $320k avg
3 * 180 + 2 * 230 + 5 * 280 + 7 * 320 = 4.64 mil
4.64 mil * 0.6 (taxes/FICA) = 2.784 mil
2.784 mil - ($30k living costs/yr) * 17 yrs = 2.274 mil
Enough to retire if you don't have a kid