Should Younger Developers Be Paid More?
jammag writes "A project manager describes facing an upset senior developer who learned that a new hire — a fresh college grad — would be making 30 percent more than him. The reason: the new grad knew a hot emerging technology that a client wanted. Yes, the senior coder was majorly pissed off. But with the constant upheaval in new technology, this situation is almost unavoidable — or is it? And at any rate, is it fair?"
While I agree that experience should, of course, count towards salary--I've also encountered a *LOT* of IT staff in general and programmers in particular who stubbornly refused to learn anything new after they left college (or shortly afterward). They fell further and further behind and became more useless every day. I have absolutely no sympathy for someone who works in a field as fast-changing as a computer-related field and refuses to learn new skills (including, *GASP*, on your OWN time). These are not professions in which it is cute (or acceptable in any way) to be the old curmudgeon.
Would you want a doctor who still exclusively used surgical techniques from the 50's to perform your open-heart surgery? Would you want a mechanic who hasn't learned anything new in 20 years to work on your Prius? Well, the IT world changes *way* faster than either of those fields.
SJW: Someone who has run out of real oppression, and has to fake it.
I say yes!
I dream of a nation where a man is not judged by his skin color but by an number assigned by a credit rating agency.
The older developer needs to find a new job. IT raises only really come by switching jobs. For some reason companies rather have high turnover and pay each new hire more than give raises to staff. It makes no sense and is not fair, but it is life.
If the senior programmer knows the language or shows an aptitude for picking it up quick(which many quality programmers can do), then I think it's a slap in the face, particularly if the rookie has no realworld experience and no portfolio.
Otherwise, if the senior programmer knows BASIC with no ability to learn C# and the rookie knows C# and is hired for C#, I don't see the problem.
There are a lot of interesting issues here. First, the developer could've trained themselves in the new technology outside the company. Would the company have believed they had the skill? I know I routinely teach myself new things when they look interesting to me. I also know that it can be hard to get anybody to believe I actually know it.
And I don't really feel the developer has complete responsibility for doing this either. A good company will encourage its employees to learn new things and provide training. If they don't, they are basically calling their people disposable. They would rather hire new young college grads, even at a premium salary, than train their existing employees, even if it cost less in the long run.
Lastly, I really think this betrays a bias for youth over everything. And, to some extent, it's a bias I can understand. When I was younger, I wrote more code and faster than I do now. It wasn't as good, and I'm a much better programmer than I was. But companies frequently prefer code that's 'finished' to code that works well. I think it stinks, and I think companies are selling themselves short and limiting their own lifetimes by doing things that way.
Need a Python, C++, Unix, Linux develop
Everything is a commodity.
If you are easy to replace, then you are worth less. If you are in demand and harder to replace - you are worth more.
If senior developer doesn't know this technolgy, they are worth less.
Its not fair. But its expected.
Why should a programmer be paid less just because he's younger. In this case the more qualified candidate for the needs of the company is getting paid more, as it should be. Age doesn't enter into it. If the older programmer wanted the higher paycheck he should have kept up with the field. If he had made himself competent in the "hot emerging technology" that their client wanted, his industry experience and seniority would have counted for something. But no amount of general experience will make up for not having the skills his position and company needs you to know.
Common Sense isn't as Common as people think...
Stop speaking that way. You clearly have been infected with some sort of disease, you probably got it by standing too close to MBAs or Marketing folks, see a doctor soon.
For further readers the translation is as follows:
IT professional must keep their knowledge relevant. If they fail to do so what ever happens is their own fault.
This, and many similar workplace situations:
1. Have zero debt.
2. Have, in a money market account, distinct from your investments, one year of your carefully budgeted living expenses.
When these two conditions are true, conversations with your boss will tend to take a very different tone from most people's expectations.
-fb Everything not expressly forbidden is now mandatory.
Don't concentrate on what other people have. Life isn't fair. Nobody said it would be. Thinking that it should be fair won't give you anything but an ulcer. Instead, concentrate on what you have. Your position, your skills, your pay.
If you aren't happy - leave. Get new skills, get a new job, get different pay.
Basing your happiness on what other people are doing is useless. Concern yourself with your own position. If you have enough, great. If you don't, work on it.
Weaselmancer
rediculous.
Recent graduates should be making just above minimum wage until they've proven themselves to be anything other than completely incompetent.
Their pay should then rise in accordance with their skills and experience.
Recent graduates are, in general, absolutely terrible. It's insane to pay some idiot kid a senior developers salary because they managed to pull a passing grade on a few practice exercises in C# in college.
Required reading for internet skeptics
All of them? Are you really being serious?
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
even if they are good on paper they might be crap in practice. If you need young hot talent then pay for it, but prepare yourself for disappointment. Cheaper coders might be just as good. Paying for good track record is probably worth the money. Worst thing that companies do is to promote good coders to be managers instead of paying them premium salaries. My analogy that I throw around is that when your guitar player finally learns how to play you don't "promote" him to be a manager and pick new "talent" to fill vacancy.
I don't have a problem with younger people earning more than older people in general, I know I've passed quite a few people on a fairly steady rapid climb and is making a pay that would be respectable for a guy 10 years my senior. However, I would be very surprised if a guy straight out of college - no matter how hot the technology he knows is - could command a higher pay than a senior developer. There are after all fairly many college graduates and they've yet to show much real world coding skill. Starting salaries are typically low all around - for relative values of low - that reflect that. If the wage structure is so flat that giving new hires a bump puts them 30% above the team lead, there's something very wrong with what he was paid in the first place. Sounds to me he's the kind of guy who'll work for peanuts and should have asked for more or left for a better position somewhere else long ago.
Live today, because you never know what tomorrow brings
Stolen from Dwight on The Office. You could have at least changed a word or two.
Still hilarious though.
Whoosh!
yeah. and tell about c, c++, perl, java, c#, python, ruby, php to the megacorporations, mega, mega global banks, and finance institutions that still have systems running on a/s 400, because it is too costly, risky and adventurous to change the entire system.
Read radical news here
i think you need linguistics. seniority doesnt mean 'old'. senior means, the senior dubbed person has more history in the company or in particular field than the new hire.
Read radical news here
Old programming languages still work fine for new tech if they have appropriate libraries, etc
I have a perfect example on how wrong you are: Fortran.
I do a lot of engineering software and a lot of that is in Fortran. A few years ago I migrated a system with 400 thousand lines of VAX-Fortran code to Linux, using g77. Recently I had to install this system in a new computer, running Ubuntu Lucid. To my dismay, I learned that Lucid doesn't have the g77 package anymore, the gcc compiler suite has been "upgraded" to gfortran. And gfortran does not support the VAX extensions that g77 did.
Luckily there's still a way to install g77 in Lucid using the Hardy repositories, but how long will this last?
Had the old engineers said, "OK, Fortran is dead, let's just keep a legacy compiler to run old code" everything would have been fine. But no, they insist on "improving" Fortran by putting C language features, e.g. pointers, into it. Why can't they just learn to program in C and let the old compilers do what they are good for, which is running legacy code?
I once signed a petition to retire Fortran, where the best reason why experience isn't always welcome is stated: "In order to best serve future generations of scientists who rely on numerical simulation, we propose that FORTRAN be retired, allowing its successor(s) to evolve in the absence of the legacy FORTRAN juggernaut. Until FORTRAN is formally retired by the J3 Committee, institutional inertia will prevent alternatives from being adopted by science and industry"
The current Fortran standard is the worst of all possibilities: unable to run legacy code which is stable and tested, and unable to compete with modern languages in either execution speed or programming ease.
(And before anyone comes with some contrived benchmarks "proving" that Fortran code executes faster than C, let me point out that the legacy Lapack code is optimized in Atlas by compiling key functions in C+Assembly code)
I'd generally agree with that... the managers usually say "you're not supposed to discuss each others pay". Meaning "We don't want you to know you're being underpaid".
Coworker here recently got... check it... $0.25 raise. Oh he was pissed. And there was much yelling. I remember that being brought up later with regard to reviews and raises, in a critical way, and being told "he wasn't supposed to discuss that with anyone", as though it wasn't a valid point to raise during the discussion. I suppose not, that's both insulting and embarrassing at the same time.
I work for the Department of Redundancy Department.
Fair? What is this? (In the monotone of Deep Space 9's wormhole aliens...yeah, I'm that geeky.)
Sugapablo
You are competing for money. Either do what will pay best or leave for greener pastures.
"This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
I thought the punchline was "who the hell rides a bike in a chemical plant?"
"We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
They can pay each employee whatever they can get them to agree to (well modulo minimum wage laws, overtime laws, etc, etc).
Chances are the experienced developer can pick up the new-whiz-bang-flavor-of-the-month in less time then a new guy to get set up and productive in the company.
The again, maybe this particular developer hasn't demonstrated that ability. Maybe he has made himself indespensible in whatever role he has now and hence they can't have him do other things.
The employer probably had to pay the current market rate to get the new person to join. If his requested salary was to high above the market rate, he would most likely have been passed over for the next qualified candidate.
How did the senior developer learn of the pay disparity?
I have discovered that people can be perfectly happy when they get paid what they think they deserve, and as far as what others make, NOYDB (None Of Your Damn Business). I grew up in an environment where people got fired for discussing pay (just to avoid situations like this).
If you are learning ruby to implement the exact same things you implemented before in another language on the same platform...when the world decides that it doesn't want ruby anymore, the time you spent learning it is much less valuable.
Bottles.
That generally depends on what end of stick you're on. Trust me, there's many people that are incredibly petty when it comes to anybody being paid more than them. Particularly if you're being paid for your skills and there's not much formal reasons you can point to. When I was relatively fresh I'd have no problem telling what I got paid to fish out how much they got paid, but the higher my pay got the less willing I am to talk about it. I still discuss it with a few close friends to know where the market is, but far from everyone.
Live today, because you never know what tomorrow brings
Maybe someone should have that option, but where I worked and likely most everywhere else, it was forbidden to tell others how much you made. This conditioning is stupid.
It is illegal in the US, under the National Labor Relations Act, for the employer to forbid employees to discuss pay with each other. Because organizing a union involves discussing pay, and workers have the right to organize, workers have the right to discuss pay with each other.
Upskill to what? Pic one of a dozen languages? Play pin the tail on the project?
A new project hits the boards and some pinhead Project Manage lets his 14 year old nephew pick the fucking language to implement it in. A team of really solid developers in the offices and cubie's most fluent in three or more languages and they get bypassed because some jackass of a project manager decides this hot new language is what we just HAVE to do it in and so they find some noob collage grad who has spent the last year of school in that language DeJour ?
Thats the problem. A company does it in a language that is fashionable for the moment, not what works, not what has a solid foundation both in the wild and in the company.
Hey KID! Yeah you, get the fuck off my lawn!
Tell me something, why isn't he the project manager in this scenario?
This industry is swaddled by a parasite layer of project managers, business analysts, account managers, various "creatives" and other do nothing/know nothings who take the lion’s share of the budget before the core gets a look in.
No other highly skilled profession is like this, legal firms are run by lawyers, doctors start private surgeries, architects happily roll up their sleeves as the years move on and get out in front of the customer. Not IT though, oh no, we're all delicate wall flowers who can't be trusted to not freak the customers out.
It's half our fault for this ridiculous geek mythos we've built up and half the fault of our parasites who been parasites will do everything they can to maintain the status quo.
Don't learn another language, take those years of industry experience, bin the D&D t-shirts, put on a suit and apply for one of those managerial roles. Kick the parasites out, eat the rich, and take this damn industry back.
Do you know if it is legal to make someone sign a contract saying they will not organics a union?
Hell, no. That's called a yellow-dog contract, and it's been illegal since 1932.
This of course leads to the horrible side effect-- hiring only idiot programmers that don't have the slightest idea how to bargain.
By the time programmers have paid their way through school they usually have some sort of usable job skills-> computer tech, appliance repair, electrician, plumbing, welding, customer service headset jockey. If they don't have any real world skills after 4+ years of college do you really want them anyway? As a teenager I was clueless about a huge number of things, including that I was clueless. Now I'm confident in my clueless-ness, and much more happy when I discover my foot tickling my tonsils.
Besides, how quickly would the pointy haired boss get around to that raise.
In my experience, most people looking for programming work are horrible, recent grads to seasoned veterans. The simple stuff, like implement quicksort, or a linked list is usually too much for what would appear to be a qualified applicant.but that doesn't scratch the surface.. Understanding version control, compiler errors, linking errors, header files are lost on way too many applicants. The hiring process is a dreadful one.
Experience can make for a MUCH better programmer. But neither bosses nor younger programmers can tell the difference.
Only a good programmer can make simple and understandable programs. The problem with this is that they make programming look easy, and thus get less respect and status, even though their real productivity is high as measured in problems actually solved, but lower as measured in the stupid measures of lines of code or amount of work done.
But the individual variation I have seen between programmers is much bigger than the variation due to age. Most programmers I have worked with have negative real productivity, making a mess that slows down other programmers.
I use the following classification:
You might have noted that at no point did I say anything about their skill at coding, the level of their code. The senior might well do top down programming and the junior use the latest OOP or whatever is the flavor of the day, but the juniors code is full of security holes and 1 in a million occurences cripling bugs and the seniors ain't.
Think of Terry Pratchett's, Cohen the Barbarian. It is not that they are better at fighting perse, they just got so much experience at not dying, they don't do it anymore.
Now the problem with all this is that age has NOTHING to do with it. You can be a senior straight out of school if you spend all your time coding and dealing with real time issues. Can, but it won't often be the case. This is why iPhone apps, being the latest in tech, still have the same old errors and flaws as apps from 20 years ago. The people who program them might know the latest tech but they lack the years of experience to avoid common flaws older people already encountered.
Trust me on this, I seen code well above what I could write but filled to the brim with fairly basic security and performance issues. Think of an old farmer watching a young farmer plow. The old farmer might not understand the tractor or know how to drive it, but he does know the plow blade is going to break soon because he knows the field is filled with unseen stones. Experience != skill. Both are valuable and the wise employer makes sure he has both available.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
A good developer is someone who produce good code not someone that knows the latest language.
...
Experience is supposed to take you the upper skill level, making you more valuable than any guy out of school or a junior.
Learning the basis of a language is fast, acquire experience is long. This new guy will make errors that the older guy would not do thanks to his experience... The time the junior fixes all the bugs your senior developer will be able to teach him tricks on this new tech.
The technologies doesn't change a bad developer in good one. The real question to accept the salary raise should have been "Is the guy as competent as my senior".
The guy should have been raised compared to another Junior hired, not 30% over a senior... You must be hell of hurry
The company knows what each and everyone makes, you do not. More bargaining power for the company, less bargaining power to you, little bee.
In some socialist countries, net taxes are public information. From this it is trivial to estimate the base salary of anyone. Neighbor, co-worker, boss, prime minister.
Makes it harder to have huge salary gaps in a company as people will check the salary of the boss.
I lost my sig.