"Logan's Run" Syndrome In Programming
Ian Lamont writes "InfoWorld has an interesting analysis of the reasons behind the relative dearth of programmers over the age of 40. While some people may assume that the recession has provided a handy cover for age discrimination, a closer look suggests that it's the nature of IT itself to push its elderly workers out, in what the article describes as a 'Logan's Run'-like marketplace. A bunch of factors are listed as reasons, including management's misunderstanding of the ways in which developers work: 'Any developer can tell you that not all C or PHP or Java programmers are created equal; some are vastly more productive or creative. However, unless or until there is a way to explicitly demonstrate the productivity differential between a good programmer and a mediocre one, inexperienced or nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory. Cheaper young 'uns will work longer hours and produce more code. The very concept of viewing experience as an asset for raising productivity is a non-factor — much to the detriment of the developer workplace.'"
I have no idea if I'm an outlier, but with a blind preference for intellectual depth, rigor, and creativity, I tend to see what I figured was normal: more experienced candidates often come out ahead. Not always, but often. More experience unsurpisingly equals more age. The best are often bringing decades of experience, MA or PhD level credentials, and the ineffable things that come from having been there and done that in a lot of different trenches. They often cost more (though not all that much more), and they're worth it.
I know the corporate world at large has this patrician idea about pay related to seniority - whereas I come from the pay-for-value mindset. There is a good observation in the article about older folks making more and therefore being victims of cost cutting. I'm sure this happens as well, but in my world the observation is meaningless. A senior software engineer will get a good salary - more than enough to support an upper middle-class lifestyle (albeit not at the level of an attorney or an anesthesiologist), regardless of their age. If they ask for too much, they will be unemployed; if they tire of unemployment, they bring their compensation demands back in line with their value. I find most people have a very good grasp of the labor market, especially with the advent of widely available salary suvery data.
I have a couple of friends in their 50's who joke about becoming obsolete. I associate this with actually getting tired of keeping up with an industry that reinvintents itself so often, and therefore, not keeping up. There's a trap there, too: a kind of local maxima where, for a while, being an expert in Cobol or IBM mainframes is not only easier than learning Java, but will pay more and more, as you become more and more rare. Until one day you look for your next job and it just... isn't there.
Historically IT has suffered from a lack of technical depth at the top. Companies wanted wise old hands with management experience in charge, even if those wise old hands needed an assistant to print their emails every day (true story, multiple companies). As the next generation rises through the ranks, you will have more middle management, SVP, and ultimately COO, CEO, etc types that have real first-hand knowledge of technology. Eventually the corporate world will lose some of its notortious and costly blindness towards talent, and both hiring and strategy will become more objective and less bullshit-driven.
Tired of Political Trolls? Opt Out!
And it's present in many industries/areas. No one wants anyone over 40 for rock, screen writers are ignored if they're over 40, since "They don't know what it's like to be a kid."
The list goes on.
In programming, I think it's foolish. People are getting caught up on the techniques, and not the theories. Unfortunately, techniques become quickly dated, and irrelevant, while theory always will be useful
..........FULL STOP.
The problem is not about Age: is about Money. You having X years of experience you want X amount of money. Managers think that they can replace that with somebody cheaper (Why you can get somebody that have experience and can produce good code better than 3 when we can get 10 from India making 15,000 a year and no benefits)
Sorry Boys and Girls we ALL are in the same boat.
P.S In the defense of Indian programmers they are in the same bad position (I think even worst than ours). Having X amount of years of experience = job moved to China. So 14,000 is OK with me and you do not have any recourse.
Please remember that is not the corporations where the problem lies. Is the rich people that benefit from the corporations (hey they have a very expensive life )
Cheers
Caitlin
I was once "fired" because I was the "old hand" in a department that had a sudden influx of developers over ten years junior to me. Yes, I sued and won based on age discrimination. From my standpoint, managers hire younger workers because they'll work longer hours for less pay, and are less likely to have the "encumbrace" of families to keep them from working OT, or that call them away because someone's home sick, or has to be run to an appointment. Also, the boss usually prefers people his own age who'll go drinking at Bennigans every night with him.
Approaching the age of 40 at break neck speeds, I am going to find out how true it is that there are no old coders.
But frankly, I don't think it is going to be a huge issue unless 40 turns out to be a really magical number. I have had no problems before. Granted, junior positions are no longer open to me, but then, why would I want to?
I have found that at least in Holland there is a real shortage of good web developers, people who can not just put up a website but maintain it and worse, debug somebody elses mess. There are tons of LAMP developers it seems, and yet companies can't find them. But you got to be able to deliver, how many of the programmers who complain they can't find a job really just aren't any good?
In fact in an interview Backbase, an small but international developer said in "De Pers" that they were so desperate for experienced developers they had put a freeze on hiring juniors because they did not have the people to train/lead them.
Yes, some companies might prefer to hire someone young, but these tend to be the grindhouses of the industry, were they churn out project after project with no quality for a low low price. You all know them, the companies that do government IT. If you IT department still insists you run IE6, then you got one of them.
But there are countless more companies that do try to work for their money were experience and maturity are needed to keep the enthusiasm of the younger developers in line. There has to be someone who can actually debug a third party app if the shit hits the fan and do it without constant hand holding. There is in development and certainly web-development a lot of grunt work that is really a waste to put a senior on, but I have seen what junior's today are 'capable' of. Or rather not capable. It is the parts of a project that go beyond the "teach yourself X in 24 hours" books or even school. It is the years of experience encountering all kind of problems that turn a junior into a senior.
A smart company therefor has both kinds, the juniors for the grind work and to bring in new ideas, the seniors to keep it all running smoothly.
And if your company ain't smart enough for that? Move on as fast as possible.
BUT I just re-read the summary AND the article and there is a problem. The article is about IT-workers while the summary is about programmers. I have started to notice that there is a difference to the point that developers really aren't part of IT at all. I always thought we were, but others disagree.
So, is the article about how their are no old help-desk jockey's? And could this be because there is a job for senior dev's but not for senior printer unjammers? Just what is IT? A 60+ senior developer is a respectable position, if you are 60+ and still have to install new PC's you screwed up and a kid can do your job cheaper.
In conclusion, I am not all that worried. Any company not willing to hire a 40+ developer with over 2 decades experience on countless successful projects, I wouldn't want to work for anyway.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
The politics is much lower on the production support side, which gets you out of most of the BS. No requirements drift, fewer communications problems, no crunch-to-meet-the-deadline, etc. So the move's been good for me.
But I've also noticed that my tolerance for BS in every area of my life has dropped as I've aged. Like the time when a grocery clerk had some apples and a box of cereal on the weigh station while she was weighing the apples. I pointed out to her that she was weighing the cereal at the same time as the apples and the weight / price would be wrong. "No," she indicated, "the scanner will read the cereal and get the price right." After a couple of minutes a manager came over, removed the cereal and weighed the apples. I left before she explained the issue to the clerk, who was still wondering how the apples dropped by a pound.
It's become quite a struggle, as I grow older, not to stand up and shout whenever someone makes a decision solely for political reasons, or when they don't understand the value of training employees of any age bracket, or when I work for someone who's incapable of making a decision. In my younger days it was easier simply to ignore it, but now in my late-50's it's sometimes quite an effort to ignore the BS that comes my way.
People talk about how you should "pick your battles." Walking away from the BS, on my terms, was my way to pick my battles.
I jumped out of being a professional programmer, once I found out that it was taking too many hours away from family time.
When I started as a programmer, was newly married, no kids, didn't mind long hours, and giving the job priority over home time.
Started a family, then once I realized I wasn't getting to spend time with my little ones: career change.
No regrets, but I do miss the self-image of being a professional computer geek :)
Uh, Linux geek since 1999.
The only comment this 49 year old is that I produce twice as much code as the youngens in my 40 hr work week, than they do in their 60 hrs (yes I do have a lot of domain knowledge to go along with some experience and libraries I have developed). I actually hit my timelines, give reasonably accurate estimates. But only earn 30% more. Then again, I have three department heads arguing over who gets me next... My favorite was a contract I did where the company policy was to hire 34 NEW graduates and pay them almost nothing with the monkey-bible theory. I made a TON of money when they need to call in some experience to get their software to work. I wish more companies would do this :)
I'm the same age Bill Gates and started coding the same way: teletype to nearby college from my high high school. I've noted two changes in coding ability over the decades: (1) I could keep 20-30 pending ideas (features, bugs) in my mind while coding when young. Now I use a notepad for this. (2) I haven't done an all-nighter in a while. But 10-12 hour sessions still happen.
Other than that I can still devour a language manual and do useful coding in a day. And I have a huge repetoire of ideas which go in and out fashion over the years as hardware and software evolves. Much of design is "deja vu, all over again" to quote a baseball philosopher.
The thoughts that everyone old folks in /. were once the young 'uns scares the crap out of me.
/.er be nice to the older co-workers!
Jokes aside, we were all young, inexperience programmers at some point of time in our life, unfortunately. Somebody more experienced have shown me the ropes before I got better (besides just ME thinking that I am good). Just hope I didn't cause too much pain for other "more experienced" co-worker when I was younger.
Conclusion: Young
We just filled a senior level programmer position with someone in their 50s. This person had a great resume, and did an awesome job in their interview - blew pretty much everyone else we looked at away. I'd say he's easily 1000X better than the last young intern we had (now a grad student in CS). I'd say most of the programmers here are in their late 30s to mid 40s. A few are older (50ish). I'm a young one here, a "senior" software engineer by title at the age of 30.
We're actually considering going after some young blood and spending the effort to mentor them because we have such a hard time recruiting older developers.
I'm not sure a career change is a future reality, unless that's what you desire. I'm 47 and still highly sought by the various teams where I work. I have a broad background as an application/system programmer *and* system administrator (Unix and Windows) which allows me to develop solutions and, possibly more importantly, debug issues that others with narrower backgrounds simply cannot do. In other words, I get the hard problems - which have to be solved.
It must have been something you assimilated. . . .
(Disclaimer: I'm a systems guy, not a programmer, but a very similar truth holds for us as well when it comes to age discrimination.)
I'm only 35, and I'm starting to see this creeping in on me also. Here's a couple of random observations I've actually (not anecdotally) experienced:
I only see a couple solutions. A concerted effort could be made to make managerment aware of the actual cost of a project vs. the salary differential. I doubt that will work. You can also become one of those consultants, and get paid loads of money to clean up messes. However, that's not for everyone...it requires tons of hard work, business savvy and is not at all stable. Try raising a family with no health insurance and a non-guaranteed income stream, especially in a high-cost-of-living area.
I admit that I'm pretty lucky. I've managed to land at companies that don't seem to mind paying a little extra for someone who really knows their stuff. The price of admission for jobs like that is the willingness to invest in yourself constantly. Taking classes or buying software/hardware/books for training, even on your own time, is the best way to keep current. That way, companies get the best of both worlds...someone who knows the latest tech, and knows enough not to implement something half-baked because they want their weekends free. :-) Unfortunately, that stereotype of the COBOL guy sitting in the corner has a little bit of truth to it, and it means we end up gettting painted with the same brush.
One other choice would require a much different mindset than there is now...accept a lower salary and make up the difference by saving and investing carefully. I've been doing this anyway, because I know there will come a time where companies stop paying for IT talent and I'm going to be forced to take a huge paycut. Everyone I know, young or old, spends money like their income is never going to decrease. Live within your means so you can last through the bad times that are coming with the next wave of globalization.
Microsoft gets a lot of grief on this board, but this is something they certainly do right. They have like 7-8 different levels of "programmer"-- you can serve your entire career writing software and never feel like you need to switch jobs to get a raise or get your ideas heard at the company.
Comment of the year
The problem is not that "anybody can program any system," because as you said that's not true. The problem is the gatekeepers of salary and status simply cannot tell the difference between those who can and those who cannot. Thus there is not much career progression in programming.
Depends. For people that have degrees in CS and EE (specially advanced ones) and years of experience, it is very rare that they don't have a career progression in programming.
Or, in IT Computing, career progression depends on the degree of specialization and breath of knowledge. In the Java world, for example, it pays not only to be a good Java programmer, but also
The thing is that, it is true that there is no career progression in programming. But that is true because programming by itself is not the only thing at play, nor the one isolated thing in which we build specialization and breath of experience.
I am somewhat older and charge an appropriate rate for experience. During this process of aging I have been told I am worth 2.5 times a less experienced programmer, but they can get the less experienced programmer for 1/2 my rate. Now do you really think I even want to work for that company when their management considers the younger programmer a better deal. DPHB at work ... (Dilbert( Pointed Hair Boss) reference.)
... It makes for repeat business later... All ya can do is warn 'em.
Sadly the differential in requested rate in the down economy is less and they often still get junior contractors in and I get a shorted but much more lucrative contract to clean up the mess. Unfortunately if you just fix a bad design to work, then they're left with a bad design. And the DPHBs that cycle this way aren't interested in the real fix to the problem. So
Big Tip: Take your girlfriend or wife or sheepishly wander in on your own and pick up some men's hair color or spring for the bucks to get a better job done at a salon. Then trim all but the most recent 5 to 10 years (depending on prestige clients) from the resume. Make sure all relevant experience is mentioned somewhere even if just a skills list. They can't actually ask you your age.
Gramps can eat the polar bear, use the skin and bones to make a boat, and come back and kick yer butt.
- Tjp
I am in wallow with my inner money grubbing capitalistic pig. ... Oink!
absent some kind of organized labor movement -- which programmers are notoriously, irrationally averse to
IMHO, this aversion is not as irrational as it might first appear. As you probably know well, many programmers are firm believers in meritocracy; those who can produce elegant solutions to complex problems with clear and concise code are both admired and respected by their peers while those who cannot are not. Contrast this with a common problem in organized labor, rewarding seniority regardless of merit, and you see the principal objection that most programmers have to unionization. If the union rewards members strictly on the basis of merit then it adds nothing worth paying dues for above and beyond the marketplace itself, which also rewards merit and not just seniority. In other words, how does a union benefit the best programmers who could do just as well in the free market?
I am 45. I am a much better programmer now than I was in my younger years. For one thing, I am a more mature person, and deal with people and business situations in a more mature manner and I am less likely do make some of the social mistakes I made in my youth. On the technical side, I have seen a lot of problems in the past and have a more intuitive grasp on how to solve permutations of problems I've seen before. I also tend to be more logical in my approach. Well, for whatever reason, I am a better programmer. However, I have definitely been the target of hiring discrimination. For example, there is one company for which I interviewed and I easily aced all their interview questions and the job was similar to other jobs I have done. But I studied the company and noticed that the average age was 27 and they had between 70 and 100 employees, so that is very difficult to do. I asked myself, why would they hire me. They don't hire people over thirty. Of course, they did not. In another situation, when I was still in my 30s, I was part of a team that was interviewing a candidate. My team mates made such incredible exclamations as, "he graduated from college before I was born." I pointed out that that was age discrimination and the room suddenly became quiet. I was never allowed to interview anyone at that company again.