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."
I've been coding for almost twenty years, and have watched the other coders around me dwindle away. I've made sure to keep on the leading edge, learning new tools and technologies, but guess what? Most companies aren't interested in hiring older programmers. They feel that they can get current knowledge a lot cheaper from younger folks. Not only that, but there just aren't many jobs out there that require senior level software engineers, (and I'm not talking about all the "senior engineers" who've been doing it for less than 10 years). You accumulate a lot of knowledge and experience over the years, but today's coding tasks require less experience than you may think.
I've recently had to accept that I'm about halfway through my working life, (early 40s), and there's no way I can keep coding for the next 25 years. In today's business climate, jobs are too precarious, and I can't take a chance that I'll get laid off and not be able to find a job. So now, I'm getting my masters and moving into (shudder) management.
You'd be surprised how much technical knowledge is needed in management, however. System architecture and project management, effectively performed, are skills in high demand. I feel like, even though I prefer coding, I'm positioned well for the remaining 25 years of my career.
I managed to squeeze an almost 20 year career out of coding, and have had a great time. I'm at the end of that path now, however. Time to get on a new one that has solid employment and advancement opportunities for people in their 40s, 50s, and beyond.
I'm gonna miss it though!!!
As an 'old coder' (30 languages since 1968), I can tell you the natural process, that being one of evolution, is for the seniors to become managers. Move up, it's where you belong.
Sorry, but many companies aren't interested in hiring scraggly-bearded hotshot hacker-wannabes to write payroll code. They're looking for stable and mature people who will show up, on time, everyday. Not finger-signing really cool dudes who part-tay every weekend then come in with hangovers on Monday and spend the rest of the week trying to put undetectable backdoors into the check printing code or copy the executive payroll file for their own enjoyment.
The poster who noted that leading-edge programming languages are only leading-edge for a couple of weeks is absolutely correct. COBOL may not be cool, but it was once leading-edge and has persisted because it works. Want to take bets on whether applications written in COBOL or applications written in (enter name of flashy new language here) are more likely to still be running in 20 years>
There are always going to be more and more college graduates coming who are willing to code for less money. Younger people who are willing to work longer and harder who may not have established a family of their own yet.
The demand is going down and the supply is growing fast.
The real shortage is COMPETENT management. If you learn and can implement real software management practices, then your more marketable.
"Code Monkeys" are dime a dozen, and most younglings dont pay much attention to the management practices of software development endevours until after they are in the business a while.
Just a tip for professional growth...
I've been programming since 1968, from vacuum tubes and punched cards to today, custom OSs, drivers, softare and hardware testing, web sites, networking, firmware, translators, and all sorts of jobs, some boring, most interesting, some exciting (like the one using a real gun, had to test with Michael Jackson playing real loud to drown out the shots :-). I was laid off in September when the company shifted direction to a Windows project which they planned to convert to Linux, but not yet, and I know next to nothing about Windows (in fact, that was why I got the original job years before). Haven't even had a response to any resume yet. Northern California, no where near the bay area, and I like that.
I do NOT attribute my dismal job search with age, I have never felt my age was a problem. I believe my problem right now is that I am a jack of many trades and master of only a few. I am a good employee, havbe always worked smart, not hard, 8-9 hour days, never had a job which expected 12 hour days, but I have no problem with them in emergencies and rushes, just not days on end for months and years. I have worked with people who routinely put in 12 hour days, and frankly, their code sucked hind tails.
I think it is a matter of so many programmers out there that companies can hire the best buzzword match, if it doesn't work out, fire them and try again. Or a new project comes along, one new skill required, fire the old buzzword match, find a new one. I have learned Java three times, always got the job done, but didn't use it again for several years, and it had changed enough in between to require partial relearning.
But I do not think my age is a problem.
Infuriate left and right
Where I work, almost all of the tech people are in their 50's. Unfortunately, none have taken the time to learn about new technology, so things like token ring, Novell 3.51, and crappy X.25 modems are the norm and will continue to be until these people retire. I myself am "old." But I keep up on new tech and no matter what I do I am always met with fierce resistance because everyone fears change or doesn't understand how the new technology works. It seems to me that when most people get as old as me, they don't care anymore, they figure they aren't going to advance any farther than they are now, so they do just enough work not to get fired until they retire.
I've been pushing hard to get some of the younger applicants hired, people just out of college with a fresh look and new ideas about how we should do things, and the younger guys we've hired are doing some amazingly brilliant things. Unfortunately, they are not well liked by the older guys because they are taking away the things that keep these guys coming into work every day.
I'd still hire "old" people, but only if their resume showed strong skills with new technology and new ways of designing/doing things.
The advantages of going to grad school, particularly when slightly older, during a recession are numerous. I did it during the last two recessions (MSc in the early eighties, a Ph.D. and a couple postdocs during the early nineties), so I speak from experience:
the net boom started in the late 90's, it was common for 20 somethings to fill a company. It wasn't because 20 is like the prime of your logical abilities in life! It was because there were damn few programmers older! There had been few jobs, especially for totally self taught people... and oh, there were few self taught people because there was no PC around if you were older than say 10-15 circa 1980. We were the first wave of computers programmers in any popular sense... the idea of "personal" computer software and consumer software such as games.
I learned computers on the school computer in the closet somewhere, the schools I was in got computer labs just as I left them, and that was still a couple years before other schools were getting them (there were dilligent pro-computer math teachers at my junior and high school).
I'm used to being and old timer. When I was 27 I was already an old timer at these startups. It's like being the oldest sibling, you are oldest even when you are 7 and the little brother is 4.
So we're still here ten years later (7=10 true enough for software engineering purposes), don't be suprised. In ten years you'll notice the ages go up to the 40's. When were 60+... well you get the idea.
Computers are not a thing of the youth. The
Startups might still have 20 year olds becuase they can risk more... but many companies or well funded startups will continue to have ages that rise to my generations level with a few baby boomer guru's flitting about (if they are not busy buying the Seattle Seahawks or something).
In places where computers have existed for fifty years (like science, banking, government, universities etc.) you see the full age range. Not because those places are more conservative. It's because the semi-specialized employees hang around where they know how to make a living.
Young executives and managers are another thing entirely.
-pyrrho
Those 40+ workers won't have a snowball's chance in hell in the current market. Roughly what anyone that doesn't currently have a job, I might add.
Not only that, but I suspect that many people with CS degrees - the technical rough equivilent of an Engineering degree or such - are getting a mere fraction of what other people in technically inclined career paths are getting. The situation doesn't look like it's going to improve, either - at least not within the decade, and probably longer.
I see tech workers having several options from which to chose from. The available options are probably not anything that will happen without a fairly large pull on the government from the private citizens of the US: civil liberties have been pretty low on the totem pole of things to do for the government of late.
The first thing that could be done would probably be to form a union. Many people in the tech industry protest this it seems, though, because they might see 'union' being attributed to 'lower' work, such as manual labor. However, I do not see this as meaning that it shouldn't be done, or that it would be bad for tech workers if it were done. It would provide for wage and sallary standardization for specific tasks and job requirements. Granted, the people with lucrative 200k$/year jobs would probably lose out.
Another option - and probably the best - is to get a government licsensure board set up, such as what conventional engineers have. This would act positively on several fronts. First, it would change being a 'tech worker' from being simply that - someone with technical skills that is seen by management to perform menial technical tasks - to a trained and licensed professional.
Then, in turn, commericial software could not be sold without a licensed programmer's 'signature'. (This could work much like the current engineer scenario of a single engineer watching over draftsmen - the real programmers (people that hvae been programming for years, with many languages, etc - programming managers, basically, instead of the clueless IT Managers we have now) look over, debug, and LART the 'coders'. Granted, there'd probably be a higher ratio of programmers/coders than there is of engineers/draftsman, simply because it takes a lot more man hours to review code than it does to look over a blueprint.
Additionally, this would do several things for the quality of code. It would increase, one, because there would at least be a minimal level of competence on a given project (as shown by the licensure test taken by the programmer).
Second, an programmer putting his stamp of approval on a project is much more likely to pay attention to the overall quality of the product, since his license is on the line. There will have to be some more thought done on how to determine whether or not a programmer is responsible for a problem with his software, of course, but I think it can be safely said that large vulnerabilities and inherrently insecure software design would result in such a license revocation. It would, of course, be determined by the governmental licensure board.
Thirdly, this would be a positive long-term thing because all the Indian and Asian imigrants that are currently working here without their blue cards, and many with, would not be able to work in the capacity of programmer. Hopefully 'coders' would have to be licensed too, a requirement being that they be a civizen.
Similar rules can be drawn up for system administration, although I'll argue that the infastructure is already largely there. sysadmins follow previously defined guidelines, for the most part, and work within a boundry. They have things like Cisco's intensive certification program which is largely respected in its higher manifestations. Etc.
The fact of the matter is, the software industry has been going through an 'industrial revolution' of sorts, similar to what occured about 100 years ago. Ideas have been formulated, mistakes have been made, and now we're still going over step 1 and 2 wi
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
I went through a tough transition from techie/code writer to manager. I hire people old or young that will improve my team. Sometimes that means young people with enthusiasm and a misplaced sense of what the latest technology can really accomplish and sometimes it means hiring someone older who has lived through several "revolutions" in programming that will "forever change" the IT world. The more experienced (often but not always older) programmer/analysts are the better listeners who remember that our primary purpose is to build software systems that people can use intuitively to accomplish their work more effectively. They are also the ones that can resist the temptation to build "clever" code remembering from past code maintenance nightmares that just because something is possible doesn't mean it is good idea.
Lately, to help screen applicants we have found it is extremely useful to test and interview. This quickly helps us identify those with a balance of technical and communication skills. It is remarkable how few applicants carefully listen to our questions before answering. Most use every question as a starting point to launch into a detailed technical diatribe of their favorite projects, scattering acronyms throughout, forgetting that only one of the interview committee members (who have all been introduced and identified by position) has a technical background suitable to understand their answer.
Summary - those managers who want the best team members will find ways that do not prohibit older programmers from making it through the screening process. We will occasionally miss the truly gifted but this is unfortunately but part of risk management.
"In fact, most people I see in this business fell into it from other fields entirely. I've only met a few out here in the real world that actually went to school specifically for programming. Most got degrees in other fields."
I've been in the industry since I graduated... with an English degree. Most of the EECS graduates I've worked with were... salespeople. Most of the admins, programmers, engineers, and trouble techs have been liberal arts types, chefs, and general knock-abouts who get involved because there's no jobs in the field they came from and this stuff is fun.
There's a basic dichotomy in mindset here: those who think that school is for education and those who think that school is for socialization. If you think of school as a factory which is churning out skilled individuals, you're a) probably disappointed with the American school system and b) probably going to be on the dustheap in ten to twenty years, whether through personal burnout or skill rust.
School to me was a piece of paper that I knew would open doors with people who think papers are important; but I did enough research ahead of time to see that few of the people I respected had studied what they were doing for a living. So I took a degree that I cared about and that I thought would be fun. I had a great time, I learned interesting stuff, I met cool people, and when I was done the BA degree opened doors just like a BS degree would have done.
YMMV.
"Nothing was broken, and it's been fixed." -- Jon Carroll
On my last Job (all staff laid off on Dec. 31, 2k3) I shared the office with the Senior Developer, a 40 year old with 20 years expierience in Pascal/Delphi Developement who had a University Diploma in Informatics (that's what it's called in germany, go figure...). :-) )) who new all those new goodies and he has the RL expierience. I'd pick him over any hotshot podknocker on *any* IT related project I can think of. And I'd advise anybody to do the same. 3 Days with him are more worth than 2 weeks with a team of twens with all but a handfull of coding-years each. The same would count if he were fifty or just before retirement.
He didn't know zilch 'bout OSS, Linux and the lot. I went about evangelizing him and six months later he was way ahead of me in gcc, Python, Java/Netbeans and co.
I was/am the young guy (well, sort of young (32
We suffer more in our imagination than in reality. - Seneca