Job Chances for Older Coders?
emtboy9 asks: "As the semester winds to a close, exams fall upon us students once again. Today, outside of one of my programming classes, I overheard a conversation between a pair of middle aged women about programming degrees (which they are involved in), and this made me wonder. With the job market in IT being as pathetic as it is, what are the real-world chances of someone who is taking a programming course getting a job. In the places I have worked, all the coders were fairly young. So the question is, what are the chances for an older person, who is just now learning programming to get a job in that field?" Ask Slashdot last touched on this topic back in February of 2001. In the intervening two years, have things gotten worse or better for those who have been in the industry for a long time?
"With the increasing popularity in such places, tech and trade schools and even colleges and universities are spitting out MCSEs, CCNAs, A+, Net+, etc certified techs, as well as people of all ages (one person in my VB class is nearly 60) who are trained to write code.
With that in mind, I guess I thought I would throw that out to the Slashdot crowd to see what kind of experiences they have either as a middle aged person entering the IT workforce for the first time, or as a younger tech, or even a manager, faced with either working with, or hiring someone who is from a completely different generation."
Yeah, flamebait, I know. You are probably in your twenties...
Younger coders tend to be (erroneously) hired because many people think they're on top of the newest technologies. Here's a news flash: Newer technologies are only new for a short period of time.
This is why you see so many corporations, and smaller companies too, with interned developers, and why it's so common to hear, especially in the IT world, of rounds of layoffs followed by hiring fresh new faces from India or someplace.
The truth of the matter is that enthusiasm about programming, and computers in general, is what a lot of people should be looking for. It's very easy to keep on top of the newest technologies when doing so is a hobby rather than a once-a-week training seminar. One enthusiastic programmer can easily do more than an entire group of slack-jawed code monkeys with no real desire to do what they're doing.
Younger programmers might get hired more quickly, but they also run the risk of getting laid off pretty fast, too, if they pick the wrong place to get a job.
Look for ways where all the life experience you have can be use to advantage. There is more to many software jobs than pure code. Solve problems. Pure code can be jobbed out to India ;-)
The cruel truth is that younger people will work for less money than older people are willing to accept.
Boobies never hurt anyone. - Sherry Glaser.
This is dead on. Younger people are far more exploitable (as a group) than older people. They are less likely to have their own families, more likely to be willing to work ridiculous hours, and less willing to stand up for themselves.
In Soviet America the banks rob you!
Most of what you will be competing against is dollars. As single person, coming out of college, with limited expenses is a cheaper date. While we would wish it otherwise, the wisdom of age, and to some extent even experience, is not valued greatly in the IT sector.
Today, as the "way back link" shows people buy experience or "hot tech". They buy it cheap because most of it is learned by students or people fairly young. They are always exceptions, but they are exceptions.
If you are 40+ you are going to have a hard time switching positions, unless you know a hot tech. The fact is you want more money than the developer who is 24. You believe your experience brings value and to some extent it does, but...how much? With CS grads coming out of college, glad to make 26k a year, can you take such a job? Can you afford a 10k pay cut?
What I found is people will not let you take a pay cut because they fear you would leave for better money, but they will not hire you for better money, because they could hire someone 24, for 40% of what you make now. So I see more stay with companies, waiting to retire, or go into consulting.
Since you mentioned COBOL... Employment is determined by demand, which in this case really depends on a lot of factors (the life expectancy of your code and how many bugs you left in there being just two of them :) - there are more.)
Think of an old coder as of an old chair. What is the difference between an old chair in an antique store and an old chair in a thrift store? None, except the price! Well, one might have been used by Elvis, while the other was not - but who cares it's the same old piece of junk. One got lucky (Elvis sat on it); the other did not. Tough luck. Same with us. You might be lucky because you are working with systems that will exist for the next 40 years. And I, with all my C/C++ coding skills, will become a dinosaur in less than a decade. Or maybe the other way around. We never know who will get lucky, and who won't. Just like the chairs.
Jobs? Which jobs?
That seems to be the way of things. But generally, we don't expect doctors and lawyers to become managers, so why should we expect software developers to do so?
- they'll accept lower compensation, and
- you can work them harder
Older coders are much more likely to have families, children, and (dare we say it?) lives than fresh cannon-fodder from the universities. They're going to want to spend the weekend helping the wife paint the nursery, and they're going to want to go home before somebody yells at them because dinner's cold. They're also going to raise more of a stink when the pointy-haired boss decides to cut corners on the healthcare policy yet again, and they're more likely to notice that company-wide salary freeze plus ever-decreasing benefits equals less compensation every year. They might be wise enough to realize that those paper stock options aren't going to mean as much as, say, money. Et cetera.Breakfast served all day!
I've been in the industry for almost 20 years (25 if you count school/uni.), mostly contract both here in Oz and formerly in the U.K.; I find it bad enough having to run to stand still and keep up to date on all the new technologies - you all know what I mean! Unfortunately, people still see the I.T. industry as the universal panacea to employment problems, after all "how difficult can it be to programme one of those computer things?"(!)
What few of these poor schmucks are told or realise is that different languages are basically just a change of syntax (plus some relatively minor technique changes) and therefore easy to pick up if you already have the grounding. It's the underlying design and analysis skills (the ones you can't really teach) plus straight-forward experience that people are looking for in the more mature developers.
If an employer wants inexperienced developers, the newbie graduate will be be favoured as they will have lower salary expectations. If they are looking to the more mature person, it's because they are looking for the I.T. skills and not the "life" experience.
My current employer just sent round some c.v's for us to comment on for a work experience (read: unpaid) position we have - God, I hate doing that - and half of them were "mature" people moving from other industries which have slackened off. You try to ignore that you are potentially consigning the unchosen to failure and potential unemployment, thinking "there but for the grace of God go I". You look at the scant overview of I.T. skills that their three/six month "training" course has given them and know that most haven't got a chance - they've been sold a fantasy by the training agency.
The fact is that I.T. is a young person's industry, be it due to misconceptions or not, and unless you get in early it will be very hard to make it stick. We all know how rapidly the technology changes and how hard it can be to keep up; when you have a house and family there's even less time available - I've learnt to read and walk (without bumping into things/people) just so I can use the train/walk to work to read manuals - it's only my long experience, adaptability and up-to-date skills that have seen me through these last few years of lean times.
If you can show the ability to adapt, have plenty of hands-on and can keep up then contracting is the way to go for the older developer IMHO. Employers don't want to take on permanent oldies (like me, shit I'm only 41!) but the contract industry cares less about the person and looks more for the right skill-set and the experience to back it up. It's kept me in good money thus far but I have to admit it's getting harder to keep up all the time.
Go permanent? In your dreams and my worst nightmares.
At my company (if we were hiring), we'd only hire experienced programmers (including former interns) right now. "Just out of school" with no practical experience wouldn't be considered. This is a product of both the current state of the company and the local hiring market; we're very short-term focused currently and there's a glut of good people in our local market - I personally know over a dozen good programmers who've been job-hunting in the last 3 months. If we hire, we're going to cherry-pick.
However, some other factors that will influence the ability of a new coder to land a job are:
- contacts - a very large amount of jobs still get filled (at least in part) via contacts and "word of mouth". Especially smaller employers like to have someone they know vouch for the candidate, at least to the extent that the candidate isn't a total asshole and some companies now won't give more than a "yes, he worked on those dates" reference for former employees, for fear of lawsuits. Get yourself friends and associates in the business area you would like to work in.
- grades - they're just about the only evidence that you're competent in your new field.
- previous work experience - a lot of programming deals with particular business or technical information and someone with experince in a particular field will have a chance landing a job programming for that field; a former nurse at medical supply co., an accounting clerk for a in-house accounting software, etc. Most disciplines are getting computerized to at least some extent, so an older worker can try to put experience to work in the new job. I know of an ex-"blue collar" guy who used to work warehouse and delivery jobs and had to re-train after an accident; he managed to (eventually) get a job working on inventory software despite being over 50 with some modest disabilities. He started in Quality Assurance and then managed an in-house transfer to a coding position.
- the local market - if experienced people are on the streets looking for work, new coders are competing to some extent with that pool of talent. Newer training and lower salary demands can somewhat counter-balance this though.
- language skills - multilingual coders have an edge for some positions
Good luck.In the field? Chances are good. At the same job? I doubt it.
It is obvious that to develop radically new things you have got to have very open-minded attitude and flexible thinking
That really depends on what the "new thing" is. Not all new things require open-mindedness or flexible thinking. Many new things require your experience to be applied in new ways, but that doesn't mean your experience is now obsolete.
So by the time my generation retires, the only thing people like me can count on is maintaining antique legacy stuff
With all due respect, that's entirely absurd. If you lock yourself into a technology, sure, you'll maintain legacy stuff. If you keep up on new technology constantly you'll find that there are very few "radically new things" in this field. Yes, there is constant advances, new concepts, etc. But it's only a "radical new thing" if you've been out of the field for 20 years. If you've been in the field for 20 years and keep up on stuff as it comes out you see a line of logical, incremental advances. So you'll only be maintaining legacy code if you learn VB in 2000 and don't learn anything else for the next 40 years.
Will there be enough work for those 5 people to maintain legacy C# code or linux kernel?
Again, you are basing this on an assumption of obsolence. Just keep up on new technolgies and you won't be doomed to legacy maintenance in the future. It's really not that hard.
Or will technological progress move so fast that their skills would be so obsolete that there will be at most need for just one person?
Again, you assume that schools will start cranking out students that are versed in a new technology that is so damn complex that people over 30 can't grasp it. That's nonsense. If anything, those with a firm understanding of today's technology are more likely to be able to adapt to new technologies than teaching something to brand new students. It has been my experience that it is easier for someone who has a complete understanding of 'C' to learn any given new technology that comes out. A new grab out of college has a hard time applying the THEORY he learned, let alone build new ideas and concepts on top of that.
In all, you have a very fatalistic attitude towards your future in the industry. If you really believe what you're saying I'd get out of the field. I definitely won't be maintaining legacy code in 30 years, but if you are convinced that's what YOU'LL be doing you have a big chance of being right.
I'm an EE. Actually, a BSEE, and an MSEE, and I have my MBA for good measure too. I knew that I didn't want to work in software and coding, so I took a hardware specialization in ASIC and digital.
Well, lo and behold, after four years in the workforce, two layoffs, slavedrivers at my first job, all that work is being farmed off to Asia, eastern Europe and other low-paying locales. No joke - you can walk to an average ASIC provider with $200,000 and get a 2 Million gate ASIC with an embedded ARM, SRAMS, and ADC/DACs designed turn key. Those types of ASICs with design services used to cost almost ten times that amount. That also includes mask and tooling costs, btw.
In fact, most of the rest of hardware engineering has cratered in the same way. Cheap foreign labor has usurped the profession because electronic devices, like software, have for the most part become non-locale-specific commodities. Those electronic devices only need to pass Underwriters Laboratories or Canadian Standards Association safety certifications, and if they don't they just get redesigned. No engineer in electronics that I have ever known in my short career has needed their Professional Engineering degree, but I'll tell you that none of these guys who would have a product for sale here in North America would sign off on the design documents and be personally liable for them if they were designed outside of the United States and Canada, even under their project control.
Contrast this with, say, civil engineering, where the engineer has to stamp his life away on the lower left corner of the blueprint of that bridge or building, and if something goes wrong and it falls down and kills people, it's his ass. Plus, they need to be on-site almost all the time, because they're virtually all locale-specific type of projects at one point or another, particularly when it comes to the geotechnical aspect of it. I sure as hell wouldn't trust someone to design and spec out bridge trusses if they lived somewhere else, nor would I want it to be built on a mound of quicksand (as the Alberta Provincial Legislature was).
What's even more sad is that I've personally seen cover-ups of folks whose consumer electronic devices have burnt up in the end application due to overcurrent latch-up on a power IC, yet nobody needed their P.E./P.Eng. designation. Only in higher voltage power systems design has an EE required his/her professional designation and to stick his/her neck out. Well, that and for those who develop military and aerospace systems. But who cares if a piece of software asserts a line too long or wiggles it the wrong way to send a device into a tizzy, right?
The real solution is to reregulate the profession such that safety, both software and hardware side, become personal liabilities for those who have designed them. Small errors are liabilities for civil, mining, chemical, and mechanical engineers that need to be corrected. Yet small errors in functinoality are things that "we just have to live with" and accept for redesign. You can bet diamonds to dollars that the SW/HW design clowns outside this country have virtually full immunity on a personal if something happens or will at most get fired. Big whoop. Once you change SW/HW engineering to a locale-specific and safety-specific craft for which individuals become personally accountable and necessary locally, you will fundamentally restore dignity to the profession and cauterize the wounds that are causing the outflow of this profession to other countries.
As for me, after a couple of layoffs and general disgruntlement with the profession, I'm going to look at getting into management consulting and using my MBA a bit more. God knows half the companies I used to work for sure need an internal overhaul. But it's cultural- and location-specific type of work, it is very versatile, you can consult for yourself or someone else, and you can't farm most of it out because it needs to be local.
I dunno. In my late 30's I went with the flow and moved from programming to managing programmers. After a few years, I was doing fine, but I realized that my life kinda sucked. All the stuff I really enjoyed doing, I didn't have any time to do anymore. So I moved back into programming and haven't regretted it for a minute. I'm 47, working with people ranging from early 20's to early 40's, and I really don't notice any agism. Of course, maybe they're mocking me and I don't notice; my eyesight isn't what it once was :-)
Age discrimination is a real and serious problem in many industries. This post is not an attempt to defend that illegal practice.
Having said that, the key question is whether the older programmer generates enough value for the company, compared to a younger programmer. Programmer A with five years of experience might get something done (by that I mean debugged and ready to ship) in half the time than programmer B fresh out of school. That means the company can afford to pay programmer A about twice what programmer B is paid. Everybody is happy.
Problem is, programmer C with ten years of experience isn't going to get stuff done in half the time of programmer B! Your salary as a function of personal productivity must taper off at some point, possibly even cutting into the company's profits.
We can easily see that even an honest company may essentially have to freeze the wages of older programmers, or lay them off altogether. What we need is a way for older programmers to become more productive, and I think the answer is for them to teach. If old programmer C can make young programmer B more productive, then C deserves part of the additional value generated by B. If C can teach several young programmers D, E, and F, then their additional productivities can help sustain C's salary requirements.
This of course requires a pretty enlightened employer, but it also requires programmers to understand that they will hit their pay ceiling pretty early in their career, unless they take on slightly different jobs as they progress through their careers.
I'd still hire "old" people, but only if their resume showed strong skills with new technology and new ways of designing/doing things.
"I'm sorry, I can't hire you because you haven't demonstrated that you can keep up with the technology."
"What are you talking about?"
"Well, it says here that you wrote the kernel for Windows 95, but nothing about experience with Windows Server 2003. And you seem very efficient in Perl, C, C++ and Java, but we're using C#. And to top things off, you drive a Buick Regal and don't have any body piercings. We can't possibly hire you because you're married and have kids, which means we won't be your sole overriding priority in life."
A Government Is a Body of People, Usually Notably Ungoverned
"What is the difference between an old chair in an antique store and an old chair in a thrift store? None, except the price!"
"Elvis sat on it" doesn't make a chair antique. A collectors-item maybe, but that is not the same as antique.
The chair in the antique store represents a lot more workmanship (experience and quality) and has passed through many proud owners hands and will be a welcome addition to a sophisticated new home.
While the chair in the thrift shop is almost falling apart and the previous owner was happy to get rid of it. The new owner shopping at the thrift store, if any, is just looking for the best bargain sitting equipment, new or old, but mainly cheap.
Connect the dots, fill in the analogy. Apply to real life.
--- Hindsight is 20/20, but walking backwards is not the answer.
A lot of you kids seem to be assuming you're talking about somebody trying to get in...and missing those of us who've been here for 10, 15, 20 and more years.
...zdnet?... a few months ago, where it said that in the tech sector (thir largest, behind retail and fast food!), the unemployment rate is around 15%.
Let me put it this way: on a techie mailing list I'm on, with maybe 30-50 heavy posters, and including people who some of y'all might recognize the name, the last time we polled ourselves, last year, we had over a dozen of us out of work. Since then, several have gotten jobs...and several more lost 'em.
This matches what I read in
In the Chicago area, when I left for FL in Jan, it was about 20%.
Does the word "depression" come to mind?
And for the jobs that are available, HR, who, in general, barely know how to bring up email, put a laundry list of languages *and* packages that would require any three people to cover, and don't want to pay for it.
I've recently seen one in my neck of the woods, that want an experienced person to do troubleshooting and installs, with up to 75% travel, and they want to pay $30k/yr for this. Would you like fries with that?
Finally, there's yet another, almost unprovable issue: ageism. I'll bet you a drink that the interview I had last spring, I didn't get the job, because the owner was early 30s, and everyone else in the office seemed to be early 20s.
At 50+, I wouldn't "fit into the culture".
Meanwhile, let's all just sit back, watch them CEOs take their paid-for GOP legislators' tax breaks, and export jobs overseas (e.g., IBM's 500 seat call center in India), and bring cheap labor H1b's over here. Ah, unions and labor laws are *so* 20th century...as is a decent living.
mark, programmer/software developer/Unix/Linux sysadmin, 23 yrs experience, 21+ mos. out of work