Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?

Old Folks Can Code, Too 260

Ethelred Unraed writes "Wired News has a story about how "older" programmers and engineers--over 35--are having difficulties finding work, even though their skill level is as high or higher than the young guns out there. " We've heard this numerous times before, but it's still an interesting, albeit strange, phenomenon. I would say part of it has to do with the lack of lives that many of the younger folks have (I'm including myself). What do you folks think?
This discussion has been archived. No new comments can be posted.

Old Folks Can Code, Too

Comments Filter:
  • Now there is reason to believe that the last
    message was a troll, BUT...
    The main reason I do not consider writing HTML
    coding is because there are no control structures.
    Heck, there aren't really even any data structures.
    But I myself would get upset if people saw what I do all day (PHP/perl webapps with financial data) and said, "You call HTML programming?"
  • Remember that when you're still getting bug reports on a version you shipped three years ago. For that matter, when the code that is due in 6 months gets done in ontl 6.5, and the necessary re-write will only take another 5.

    There is a need for more expensive veterans and less expensive entry and jr level in any shop. Ever notice that games companies tend to have the youngest staffs, and are the most likely to release way late and half done?

    That's not to say the younger programmers don't have a place, they certainly do. It's just to say that an unbalanced department will always spell trouble in the end.

  • you're part of the problem.

    Anyone who feels comfortable in "age discrimintation" now is contributing to an overall acceptance of this practice.

    Do not ask for whom the bell tolls ...
  • Interesting. I'm 41 and looking for a job right now. I live in Seattle, I have a heavy resume (or at least I think so) including financial, hard-core C++/Unix/VMS/whatever development, financial, scientific apps. Now I'm a contractor writing COM objects. I've encountered this phenomenon several times. I get rejections like "everyone who interviewed you was very impressed but we don't have a position where we could leverage your extensive skill set." Translation: you're overqualified and we can do with a younger & cheaper programmer. What I find interesting is that the companies where I get this treatment are the most bullshit in terms of their business plan. In the case of the one above, it's a .com with a brain-dead-on-arrival concept. Which suggests that they don't need heavy skills because all they plan to do is cash out and screw the investors still standing when the music stops.

    Of course, that could be sour grapes. But then I have other contacts with companies that are more established, have serious balance sheets, a high degree of professionalism and their attitude is "what can we do to make you want to work here?"

    I guess the moral of the story is that a thing is worth what someone will pay for it. If there are a lot of buyers out there refusing the over 40 goods, then it may depress the price a bit. But there are a lot of people who know their business and can pretty accurately judge the value of investing in skill & experience. I try not to let it get to me.

    I ain't workin no 70 hour week. And I get paid well too. I'll take the options, but only if they're not an inside joke among the early investors.
  • Some of the bloat I've seen made the code slower AND harder to maintain. Consider: There is a bug in the program. Do you want to look through 5000 lines of code or 10000?

    Often, nasty race conditions that are hard to find seem to just go away when the code is made more efficient. It's not magic, it's just that bugs hide easily in bloat.

    Keep in mind, it's experiance that tells me that a 10% slowdown here makes no difference, but a 0.10% slowdown here will kill the product.

  • I want to know what's up with all the news stories
    I've seen recently about "Teenagers with Hot Technology Jobs". They're always about some kid who got hired because of his "advanced coding skills" (HTML). Sheesh, I'm a teenager and I'd like to get a high paying job because of my "advanced coding skills", but all the ISP's, etc. in my area require NT, and MS Office experience (gee, I do have standards, ya know).
  • Thanks for the warning -- I only have a few years to cash in my stock options and start my own overvalued .com firm before I'm obsolete!
  • Tell me about it; I just got into IT two years ago (I'm now 33 as well) after 7 years in arts administration (an international music festival). I feel like I have so much more to learn and offer an employer, but they probably won't want it.

    Thank God I at least can still pass for 26; I may have to start lying about my age soon!
  • Younger programmers fill the needs of companies in areas where experience and education are not needed to complete the task. If they are used for anything else than the company has no clue. If you are an older programmer that never went to college or learned anything other than coding, then what do you expect would happen to you?. Software design takes much more than just knowing "code". In fact it exsists independant of any specific language or algorithim you will read in a book someplace. Taking problems from the real world and solving them in the virtual, takes education and experience. Those who do not agree are responsible for all the software you ever used that sucked.
  • "Hey, Everybody! Look at me! I'm NOT ECONOMICALLY VIABLE!"

    as I recall, though, it was a machine gun, not a shotgun, in the fast food restaurant. On the golf course, it was a shotgun. I think.

    "I'm going home."

  • Right on. Craft, or even art form. Elegance counts, especially if you're trying to build something really robust that you can get your investment back out of over a few years.

    Some companies care about quality more than others.
  • Congrats on the success, but let me tell you - in
    most cases the workers in the age between 20-25 tend to be a little naive in the business world. Especially if they just graduated college. Me? well Im 29 with no degree and in a top-paying development position. I win out again and again to grads...Experience does it all....If c++ is hot, then you better learn c++, if java is hot you better learn java. To think that in an industry as dynamic as software development that you will only need to learn one set of tools is complete ignorance. The illusion is that your ego==worth.


  • Well, Marx's view obviously makes no sense in this field and era considering that so many tech companies are anything but profitable. :)
  • My guess is that Y2K fiasco probably has a lot to do with older programmer's problems.

    Suppose you're some high level suit who's just had to shell out a lot of money to some consultants to fix some Y2K problems. You've learned it was so expensive because no one in your shop really knew what the code was doing anymore. The consultant shows you some reports that have been being printed out for the past 2 years that got sent from Office A to Office B and Office B just threw the reports in the trash.

    Now, what are you going to think of the programmers who built this system, and who have been on your staff maintaining it for the past XX years ? If it was me, I would probably think these guys had no clue what they were doing, and didn't really deserve the money they were getting. I would be looking for new blood, and if it came from younger folks who I can pay with table scraps, so much the better.

    For my coding generation, I see the same thing occuring with 4GLs such as PowerBuilder, Visual Basic, and other propriatry development environments. These will be maintained by folks who invested a lot of time and effort learning the systems, and then never bothered learning another thing for the rest of their careers. The apps will have to be replaced once they too become an unbearable burden. A lot of consultants who still know how to develop in these system will get rich.

    However, employeers will start looking at people of my coding generation as the evil 4GLs, with their evil propriatary development systems, and their ultra fat clients. I doubt it will make much of a difference that I will have not done a lot work with 4GLs, just as I doubt it makes much of a difference whether older programmers today has ever coded with COBOL.

    I think the lesson here is to not only keep your skill set clean, buit to also do your best to make sure the systems you worked on don't come back to haunt you later in your career. This means making sure your code is maintainable, and that it will be able to be moved along to new technologies as they become available. Don't code in closed, propriatary systems, document what you do code, make sure you capture your requirements.

    (In the long run, I think tools that will help in the maintenance and transformation of large code bases will be just as important to the Open Source movement as end user GUIs.)

    - Jude
  • I've seen no reduction in job offers or other forms of discrimination and I'm 50. I think the secret has been that I've never tried to expand past the title of "Programmer". I'm not a "C++ Programmer" or a "VB Programmer" or even an "Intel Programmer". I do it all. If its a machine, I talk to it and make it beg. That flexibility has great rewards; no boredom in the job, not locked into one language or one platform. If Intel and MickeySoft both went out of business, I'd have a job tomorrow. I think that's where some of the other "old folks" have gone wrong. They've locked themselves into a language or a platform. Frankly, 5 years experience in one mix is about all I can tolerate. After that, there has to be something new.
  • Marx is deader than Elvis. So is communism.

    I work for a boss who is also a friend. We agreed on what I would do and how much I would get paid (cash, benefits, etc., including a laptop and mobile phone, software, etc.) My work is contract software development for clients, and occasionally other things like interim management of IT departments.

    I've worked as an independent contractor, member of an IT department for finance and chemical companies, and as an employee of Australia's biggest privately owned computer company.

    I despair for you if you think that any arrangement where you employ others for your own profit is inherently evil. You need professional help. Nothing in this world of any size gets done unless people get organised and motivated, and to paraphrase Samuel Johnson (yes, he's dead too) few sensible people work without money in mind.

    Another quote for the more rabid communist Linux tree-huggers to consider came from Sam also: "None but a blockhead ever wrote except for money". I'm not saying all or even most open source developers should be tarred with this brush, but I find rabid zealotry of all forms most repellent.

    I'm nearly 45. I've been doing development on a variety of platforms, including win16/32, OS/2, HP/UX and Linux for the last five years. Before that I was an IT manager, and I can tell you that programming is a much safer employment proposition than management. I know I could go out tomorrow and have a well-paying development or project management contract within a week. The high profile companies in SV and on NasDaq may have been started by twentysomethings, but there are plenty of companies out there who have been around a lot longer; there is a shortage of IT staff in Australia at present and most are desperate for competent people of any age. Of course, if you started as a COBOL programmer 25 years ago (I did) and havent been prepared to learn modern software and development techniques, you probably deserve to go down with the dinosaurs (and Karl Marx) once the Y2K panic subsides. Of course in Oz, the government are introducing a GST hot on the heels of Y2K which means those developers will then have a whole swag of new legacy updates to take care of.

    What am I doing now? Developing a complex web/database application in Perl, XML, Javescript and HTML. The only constant is change.
  • I'm worried now. I've got 3 years to change the world then I'm washed up?
  • by Lumpy ( 12016 ) on Tuesday July 27, 1999 @03:53AM (#1781575) Homepage
    most older programmers are looked upon as "old weight" by management. I.E. we suck up more resources because we want a pension, insurance, dont want to work 90 hours a week, we actually take those vacation days... etc... It's as hemos said... we have a life and a family. and that isn't in the plan with the "company". at 30-40 you have only 20 more productive years left. then you will retire and become a burden on the company... they dont look at the fact that you gave your LIFE to them and they can give you a nice little reward, they look at it as that the company is doing you a favor by hiring you in the first place (they are not, you are doing them a favor) and that you should worship them...

    It's all the new/old corperate management idiocy.. no brains all pocketbook.
  • Gee, I'm still learning everyday, though my employer has lots of older people, so I'm not too worried.

    Of course, there's no way in heck I'd take a job involving more than 45+ hours a week either, something that younger folks seem to enjoy.

  • Obviously salary requirements are too high, but I'm almost out off the running and I have yet to find a first job in IT. I would settle for nothing to get a job right now but it still doesn't happen. Maybe the issue isn't age but a sickness of Microsoft that older engineers develop. Let's face it. If you don't have a love for Microsoft, you don't work.
  • I am not suprized at all to hear that younger people are getting more work. And, I think it's in part due to corprate sterotypes, in a way diffrent than your thinking.

    It's not the skill, it's the pay. Programmers are in high demand. Young talented programmers will often take thier first few jobs with a "wow, look how much they are going to pay me" attitude. The corporate world sits back and thinks "heh, they don't know how much were _were_ willing to pay to get this job done."

    Of course it sounds all screwed up, but I think the older the potential employee is, the less likely a company is to think 1) here is someone we can exploit, 2) here is someone who doesn't know what we actually can offer them to work here.

    MAJOR DISCLAIMER: Althought I know a few programmers as friends and/or family, I am not one, I am a chemist, so, what do I know? :P

  • One of the biggest problems i've noticed with
    programmers in general is a tendency to decide,
    when faced with complex code that they don't
    completely understand, that the existing code
    is broken in some fashion and needs to be
    replaced/rewritten --- which of course wastes
    a lot of time and energy, and leads to a new
    code base which solved (maybe) problems in the
    original code while introducing (always) problems
    which weren't there before.

    We're a (relatively) young industry, which
    seems to encourage impatience --- rather than
    spending enough time coming to understand why
    things work the way they do, it's preferred to
    slash and replace ...
  • In my department here there are 5 of us. I'm the youngest at 24, but the others are 27, 45, 51, 55. Me and the 27yr old could leave and there would be a burden on the others, but nothing that dramatic. Any of the older people leave and we're screwed. They know too much about how this place works (its a factory with a lot of automated stuff). My company would never knowingly get rid of them. I on the other hand....
    As for hiring - the 51 yr old was hired 2 years ago.
  • Heh. Speak for yourself. While I'm more expensive than a puppy just out of college, I don't earn $90K either (or even $50K, for that matter).

    Of course, out here in the hinterlands $35K to $45K is real money... as vs. in the Silicon Valley, where that would not pay the yearly rent on a studio apartment in Sunnyvale!


  • The percentage of guys to girls at CMU is about the same (around 90% male) but I've never noticed any difference in ability (and CMU isn't exactly an easy school for computer science majors -- at least until they graduate).

  • by ChrisRijk ( 1818 ) on Tuesday July 27, 1999 @04:04AM (#1781586)
    She's been coding most of the time since she was about 20. She gets paid quite a lot and deserves it too - she's very very good.

    I've started programming a "mere" 15 years ago.

    We used to live in South Africa, and in 1980 the company she worked for had a dedicated line built to our house (to connect a terminal to their mainframe), so she could work from home while raising us kids. First time this happened in the country I believe. That's how much they valued her. (such things are far cheaper these days of course...)

  • I stated programing in the vacuum tube era when a BIG IBM had 2000 words in the primary memory which was a drum (sort of a cylinder shiped disk) Worked 30 years for a big corporation and was downsized out the door when "we don't write software, we buy it."

    I work under contract now and have the advantage that techincally I retired from the big corporation and have retiree health insurance and a fairly large retirement account for my eminent future.

    No one wants to hire an old man in a traditional salaried job, but I guess they expect me to live long enough to finish a 6 month project.
  • by fable2112 ( 46114 ) on Tuesday July 27, 1999 @04:07AM (#1781589) Homepage

    "Respect your elders."

    A local friend of mine (via the SCA) is a software test engineer at a large local company. She's also old enough to be my mom.

    She can also code the pants off of any of my local contemporaries. And while she is single (giving weight to the argument that she could do this because she has no life), she finds the time to: sing in her church choir, participate quite actively in the SCA, make most of her own clothes ("everything but underwear, jeans, T-shirts, and shoes," she claims -- I think shoes are next on her list), and work a good bit on her woodcutting/furniture-building hobby.

    She recently got recognized for 25 years of service at a company that is continually "downsizing" its people out of their jobs. (Anyone from my neck of the woods knows which company, and possibly even the lady in question.)

    As you can see, I have a heck of a lot of respect and admiration for this woman. So do most of my friends my age. And she seems to like having us around, since she has no children of her own and likes passing on knowledge about everything from computers to drop-spindles.

    Should the fool company she works for be ungrateful enough to downsize her, any place else would be incredibly lucky to have her. But they'd take one look at her (since she does not exactly look young), or see her "25 years of service," and ignore her in favor of new blood.

    Indeed, that will be a sad day. *knocks on wood that The Company leaves her job alone*
  • One the other hand, you young turks have never had the experience of having to fit real functionality in 140k, and that often shows.

    The folks I talk with (and I'm unemployed, I mean a contractor, so I talk with a lot) don't seem to think that is such a valuable skill. In fact, they view bragging about it as a red flag.

    The important forces in application development change over time. In the days of TSRs and the small machines they ran on a small footprint wasn't just cool, it was a requirement. It cost money, but that was OK because machines cost more. It was never about how cool and efficient it was to write a small program in the abstract. It was about how cool it was to spend 15K in labor to save 150K in machines costs. That is the only reason why folks were 'allowed' to spend some much time tweaking applications.

    From that perspective, I agree that "It's Money".

    However, times have changed. So have the relevant forces. I've been programming on micros since 82, so I know the constraints associated with underpowered machines trying to do too large a task (insert appropriate Sagan quote here). They simply don't apply in most applications today. The forces have changed. The 15K that was spent optimizing a routine a decade ago is time wasted on a machine that executes the critical path in a blink of an eye anyway. In fact, the forces resolve in the opposite direction.

    The 'elegant' solution in todays world is frequently the bloated over architected one that allows for the application to be crystal clear in it's functionality at the expense of cycles used to process the load. This means applying software patterns, having design reviews and implementing code that the dude fresh out of school (you know, the poor goof who is going to be maintaining the code base when you move on to more interesting things) can undestand it and respond quickly in the face of downtime (HELLO EBAY!) or changing requirements (HELLO AMAZON!).

    Of course, I'm making a complex subject simple. The main point is that it IS about money as you assert, but the variables used to calculate cost change over time and older programmers sometimes miss the transition.

    Finally, let me state, for my own piece of mind and those other over the hillers, that those old timers that DO make the transition are frequently worth their weight in code. They have the experience AND have learned a bit about sorting out when to apply which bits.


  • The problem with code bloat is that it's that much more code to maintain. Simple, elegant algorithms are much easier to maintain than huge amorphous masses that splash all over the place. The huge algorithm may actually be FASTER -- in fact, to get ultimate speed you often have to use sophisticated but bulky algorithms that make the code extremely hard to debug and maintain -- but it will be that much more "stuff" to maintain.

    This isn't rocket science by any means. The number of lines of debugged code that a programmer can write in a day is fairly constant no matter how large the program or what language is used. Thus it makes sense to use simple compact algorithms whenever possible (sometimes, due to performance requirements, it's not possible). But that, alas, appears to be a dying art.

  • I think the poster meant to say:

    Girls can't recognize a troll, everyone knows that.

    Hope this helps.


  • yeah , i see the trend for older folks with lives, but i think it has more to do with folks with lives as i am 27 and everyone is overly eager to take me onboad, until i tell them i'm married, with children...GO FIGURE....
  • A SAVINGS ACCOUNT? You've got to be joking.

    What a young worker wants is a high-yield (read "stock based") IRA or 401k. Don't be scared off by volatility -- this is your *retirement*. You're not planning on taking this money out next week. All the daytrading street hassle and recession/growth cycle is just noise on that that kind of time scale. Compare compounded returns at 4-ish percent to 20-ish percent. Yikes!

    This is before the enormous benefit provided by tax defferral.

    Savings accounts are only marginally better than stuffing cash in your mattress.

    [carreening into full rant mode...]

    The thing I don't understand is this "pension" thing. Please correct me if I'm wrong (I've never been offered one), but a traditional "pension" works something thing like this?

    You're applying for a job. Your boss tells you "OK, if you're still working here when you're 65, I'll pay you N dollars a month until you die. But if I fire you before then, you get nothing."

    Hey wow, what a sweet deal! Thanks boss, I'll get right to work! I'm staying here for LIFE! Gee, I hope I don't get "laid off" when I'm older! Gosh, the economy's so bad, I sure am lucky to have a nice boss like you to take care of me!

    Luckily we (in the USA) don't have to rely *solely* on our boss to support us when we're old -- we have the Federal Government to force us to spend our wages on nuclear weapons -- oh, whoops, I meant "invest in a giant Ponzi scheme" -- wait er... it's "save for our retirement"! Ha ha! That's it. Little slip there.

    Yes, the government knows how to save money so much better than us mere "individuals". I'm glad it has our best interests at heart.

  • Geez, so that's why I got my first programming job at 25 in Montreal, Canada:) Age discrimination is a fact of life, there's just different discrimination in different places.

    I agree with laxative. You're best defense against all of this, whatever your age, is to Save, save, sAvE. You'll make more through investing and sheltering your earnings than you will at work. That's why I was able to happily retire at age 29.

  • Learning the ins and outs of a particular industry is years of work. If I am an expert in, say, factory automation, I can share my knowledge as freely as I like with the youngsters, secure in the knowledge that it will be years before they have the knowledge to threaten my job and by that time I will have moved on (either professionally, or knowledge-wise).

    Older folks who have experience in fields outside of the computer industry are especially valuable to many companies. For example, if you spent ten years as an insurance agent, and now are entering the computer field, you will be very valuable to every company that writes software aimed at the insurance industry.

    The problem is that these companies are usually in rather boring places like Memphis or Dallas, rather than being in the Silicon Valley. This means that people who have invested their entire career into walking that Silicon Valley treadmill are poorly situated for making the transition to later-life geekhood, especially since they probably know little about business practices in already-established industries, which is the one thing that makes older workers valuable. And especially since they'll have to take a pay cut from the bloated Silicon Valley salaries (a $90K Silicon Valley salary suddenly becomes a $40K Dallas salary), meaning that many who have run up large credit card debts or bought houses that have lost half their value or etc. are in bad position...


  • The problem is that it's not the employees doing the pigeon-holing, it's the employers.

    For example, I spent three years programming in a dBase-style environment. I wanted to do SQL because I'd done some prototype demos of a next-generation of our product using MySQL (the production version would probably have used Empress, but the project got cancelled), and it was a ton faster, easier, and NEATER than doing dBase. With the HR mechatroids it was "hmm, you don't have experience with Oracle version X on Solaris version Y? NEXT!".

    The point being that the skills were there, but HR stuck me into the "dBase guy" rut and said "nope, sorry, no SQL for you."

    Anyhow: I'm currently working at a job where I was hired for one thing, then pressed into service doing another thing entirely (something somewhat new to me but well within my skill level) and having a blast. If we want to keep people in the computer business that's what has to happen -- employers have to look at these expensive people that they're hiring, and realize that hey, just because he's a great C++ programmer doesn't mean he wouldn't appreciate the chance to learn Java. If diversity is the salt of life, too many hackers are on the bland diet, doing the same old same old day after day after day after day ....


  • I'm 36. I've been at it since I was 15. Didn't learn UNIX until my daughter was born about 6 years ago, and just at the right time.

    I find I am in very high demand, and the forecast is that this won't change much for the next 36 years. I make great money, and its only getting better. Personally I think this is an urban myth perpetuated by people who are tired of acquiring new skills.

    -da Video Ranger
  • I'm not the proclaimed expert on the subject, but it seems to me that younger people will work for cheaper than older people. While programmers older than 35 are more likely to have families, kids, nice cars with high insurance, etc, they usually need a bit more money to support this lifestyle, whereas a 20odd year old kid coming straight out of college most likely lives in an apartment and has the car they have been driving since high school, unless they have been lucky to have more money. Also, it is more likely that someone over 35 is more interested in having more benefits and retirement than someone in their twenties, not to mention, if they have a family, they are less likely to be able to work as many hours as they would want to spend some time at home. Then there's the fact that younger people will have less work experience under their belts, which allows companies to have an excuse to pay them less money than they might have to pay someone with 15-20 years of experience. I also notice many companies have been hiring people right out of high school and training them, because it is easier to train them and mold them to work for the company this way.
  • I think you might have missed a joke or two in there.
  • This might be considered flamebait, but
    your message brings up a point that I think
    is worth considering:

    Maybe the problem is lame management,
    at least to a certain extent.

    As an example of the type of thing I'm talking
    about: a former co-worker of mine, with
    two to three years of Windows programming
    experience, recently interviewed for a job
    at an (unnamed) e-commerce business that wanted
    to use a windows database backend to run their
    site. One of the few technical questions he
    was asked was: "how comfortable do you feel
    with windows programming?" ... and this by the
    'senior architect' on the project.

    As soon as I heard the story of his interview,
    I was convinced that the company he was
    interviewing with was more or less doomed
    to have this project fail: if the architect
    can't ask intelligent technical questions,
    how can he architect?

    If there are a lot of companies out there
    like this --- as you said, the companies which
    don't want to hire you because you are
    overqualified usually have lame business plans ---
    then it makes sense: companies managed by
    people who just rushed into the industry to
    cash in on the big cash cow and don't actually
    understand it are operating entirely upon
    the public image of programmers: if you
    aren't a young hacker, you obviously aren't
    right for us ...

  • I think that this might be in part due to the "pigeonholing" of people based on skills. Once you're known as the C++ guy or the VB guy (no flames please!), IMHO it's hard to bridge over to another language and even harder to move to completely different technology.

    Just a brief note. I myself have programmed in over 40 languages, I can say for a fact that once you get the first 6-8 languages down moving on and learning new languages begins to become easier and easier. True, you might not have the expert skill set in that new language, however you have general coding experience and a firm understanding of how the computer works.

    Older programmers that pidgeon-hole themselves into just one skill set are asking for trouble with the way technology changes. Being digital of course means there is little security when costs of change are small, especially if you are just starting up and thus there is no change.

    I'm building a start-up myself at the moment and looking to hire, but the truth is that I cannot afford full price for a programmer. Most older programmers are going to have family to support and thus need the money more than the stock options. I would prefer older programmers, because as an older programmer myself, I know how limited college students are.

    I primarily look for hackers currently, someone who loves to do what they do and try to offer a good wage, but as noted I cannot pay people what they are worth.


  • Interesting comments from an anonymous coward. You're the second person today to call me an asshole and a terrible person to work for based on your not liking my opinion. That's your perogative, I suppose.

    I hire people because they can work with people. That indicates social skills, as does the ability to function in interpersonal relationships. I have little use for people who have difficulty talking with people or expressing their opinions or ideas, or people who just seem to make enemies where ever they go. They best work alone and therefore usually don't make it into a team environment. If that makes me an asshole, so be it. But before you bring down your mighty gavel of supreme ruling on me, know that I haven't heard much complaint from my coworkers, nor have I heard such complaints from anyone working under me.

    Keep the personal stuff personal. I said that interpersonal skills play a part in my hiring and you jump down my throat for that? Perhaps it's wrong of me to ask if they can do analog design or have power electronics experience too. Good thing you aren't applying for a job with the company I work for. You guys usually quit within a couple months, if you make it in at all.

    PS - I am a geek. Always have been and probably always have been.
  • I like your arguements that (degree != great programmer) and I also agree wholeheartedly that (great programmer != good thinker/problem solver). I'd never meant to draw that conclusion. I was disagreeing with the original poster implying that the only people worth hiring were the grads or about-to-be grads.

    As far as lack of degree casting qualities in doubt -- I don't buy it. I've seen people with degrees that didn't have the people skills or thought capability to social engineer a woman's phone number (incredible as it sounds) -- we had one hired he a while ago in the development group.

    He could analyze something in such fine detail and with such exquisite accuracy it made you weep. But not because he could do these things so well, but rather that he couldn't come up with an original thought or procedure to save his soul. And he had his Electrical Engineering degree. I wonder if he'll ever make his P.Eng.

    I don't have either, but I work and communicate with them every day. Yes, they are a very bright group but no, the degree didn't get them that. It was inside from the start and the degree perhaps refined it.

    (conversely, I know people -- and these are usually the far more interesting ones because they've had to be more resourceful -- who haven't the degree but there isn't a soul alive who could touch them. Again, I work with one of these people and he is my mentor.)
  • This is no bullshit and you will believe it
    when it happens to you. I went thru this 9 years
    ago and lost my home in the process. This was
    during the recession.

    The responses were diverse but it always went
    around the fact that I was over qualified.
    One person told me that I was too old. I was
    40 at the time.

    Look at ads, many say 2-5 years of experience.
    They mean it, no less than 2 years and no more
    than 5 years. The belief is that a young person
    is easier to control and can be forced to
    do more unpaid overtime than older folks who
    have been thru this bullshit before.
  • I am 22 and working at Unisys. They have been through a very bad period of layoffs and forced retirements that only ended about a year and a half ago. The ones who were left had been there for decades. Part of Unisys' recovery plan has been to increase the number of new hires coming right from college to 40%. They still have a long way to go and in my group I am the only one not married and there is only one other programmer without kids and a nice Unisys Ten Year Award.
    The main reason for this push has been to invigorate the company with new ideas. There is also the more financial reason that younger programmers are less expensive. The key to survival for older programmers is to prove that you are worth the extra cost, that you have all the things the young guys do and more (and many of them do).
    This isn't just the programming field, though. In any field a person is expected to move up the success ladder. People who switch careers, start late, or just didn't go where the rest of the world expected them to suffer. It's a grim reminder of how important your college major is.
    It's also a shame becase I have a learned a tremendous amount from my elders at Unisys. These men and women are the hard core programmers. They suffered through the early days of punch cards, baud modems, no GUIs (although to some that is a gift in disguise), no IDEs, and systems that about half as powerful as your watch.
    Give some respect to these "old masters" because without them there wouldn't be any of the things we take for granted today.
  • The sentiment around here is that if they aren't burnt-out by age 35-40 then they probably aren't any good.

    Hmmm, I asked around here and the sentiment is that if young pups can't last as successful programmers into their 40's and beyond they probably should pick a career that won't stress them so much, like sweeping floors or flipping burgers.

    You want to go out in a blaze of glory while you're young? fine, just don't expect anyone to look at you twice after you go nova.
  • Not only is an older programmer typically not going to want to work the crazy hours he did when younger, but he's going to want to get paid a lot more too.

    Why hire a 15-20yr veteran for $90K, when you can get a 5yr guy for half that?

    Of course it's a bargain if you NEED that experience, but there are a lot more coding jock jobs available than ones that really use experience.

  • Disclaimer: My programming skills are minimal, but I work with programmers and figure I have some insight into HR requirements for technical staff.

    I think it comes down to the area you're working in, but there's some real cultural change going on as tech stuff gets mainstreamed. Old IT measures of productivity (e.g. lines of code) aren't really relevant for today's development processes.

    Any internet developer will tell you that service demands and change orders are increasing as sane development timeframes give way to marketing exigencies. The end result in internet-based development is that the average high-level programmer spends increasing amounts of time in meetings and client management with nutcase marketing people who don't have a clue about what is actually required to make something work, they just want it by tomorrow.

    I think an important part of being a programmer in that kind of environment is how well you manage that problem, and how happy you can keep the client. The young folks' solution of working 80hrs a week does the job in the interim, but it's not really sustainable. The most successful jobs come from situations where the techies have been able to communicate to clients how long stuff takes, and that this gets built into an overall development timeline. That takes experience, both at a coding level and a communications/service level.

    In my experience, a lot of people brought up in the pre-internet I.T. environment simply don't have the communication and customer service skills to survive in a new development culture which is no longer isolated from other business processes; and in which suddenly all sorts of dumb people have an investment in the development timeline. Old-school (not old) IT people are just not responsive: you don't get any feedback on how feasible something is until it's too late, or they don't bother with issues which they don't see as being relevant to what they're interested in (e.g. how a website looks). That's not always true of course, and I think the older programmers with customer service skills are truly in demand, and will be more in demand as companies realise that you can't replace experience with another graduate.

    But I think the bottom line for me is that programmers who can pro-actively communicate about what they do to non-technical people are in demand, no matter what their age.


  • I'm 22 and I work as a programmer in a bank's IS department.

    While I understand where the article is comming from, I can't accept it as truth in any way. I'm the only "kid" around here, everyone else is at least 13 years older than I am. I consider myself to be fairly good, having been programming since I was 12 years old, and yet I still find myself almost completely reliant on the older guys with 15 plus years of experience in order to get a job done. Why ? Because the older hackers have a much broader understanding of the business, software design, and how things actually work.

    While I obsess over where to insert Binary trees in a program, where I can write perl programs to display web content, they think of how this would have value. Many of these guys/gals HAVE stayed on top of technology, many of them use that technology almost as well as I [c|w]ould. But in the same light, a lot of them aren't obsessed with finding new jobs, they are happy where they are, feeding their families, and still get to code without the stress of the punk kid goes through trying to make his reputation, or find his 'ultimate job'.

    Respect your elders ! :)

  • Thanks Eric, I was starting to wonder if maybe there was something wrong with me after all. :) I'm glad someone else believes in this.

    I think that 35 is too young, for me it started when I was about 42 (47 now). We aren't in a recession right now either, I shudder to think what that's going to be like.

    I've also learned what I needed to know from manuals as I needed it. I do embedded assembly code for DSP processors as a contractor and the typical situation is that the part is brand new with a new instruction set, and sometimes, new architecture.

    I think a large part of the problem is the job shops that have taken over the market. The people running these places don't understand the computer field and are forced to use really unrealistic tools like buzzword resume searches and age to determine suitability. I've never experienced age discrimination interviewing in an engineering department, its just difficult to get that far these days. It's usually someone I've worked for before that calls me.


  • What I meant was that filling a job with an overqualified candidate isn't cost effective, so as you get older you're going to be competing for the smaller number of jobs that need your level of experience, and are willing to pay for it.

    BTW, I built my first computer (a NASCOM-1 with a 1MHz Z80) in 1978.... ;-)

  • I had a greying geek... come to my NT workstation and have difficulty navigating to the floppy drive.

    Hey, I resemble that remark! I remember the condensation from our oh-so-wise NT sysadmins because I had trouble doing several basic tasks under NT.

    They thought I was a stale old fogey; I thought it was proof that NT has serious useability flaws when experience with several other OSes is an active hinderance to a newcomer. (Quick, where do put the control to turn off the system?!)

    But if I'm so out-of-touch, why were they terrified -- to the point of attempting to get management to stop me -- when I got fed up with their bullshit and picked up a couple O'Reilly NT/MSCE books? To paraphrase Sir Winston Churchhill, the next morning I was no longer ignorant, but they were still incompetent.

    More generally, with experience you realize that the same things have to be done by every system. The only differences in how they are done. A lot of us fogeys (I'm 38) strongly dislike MS applications because the heavy emphasis on GUIs and "wizards" (a horrid corruption of hacker term) gets in our way *and* prevents the youngsters from developing the experience necessary to distinguish between the solution to the problem and the tools available to implement that solution.
  • Can we please stop this worshiping of GUIs as being the defining characteristic of modern software? I keep hearing people talk about GUI skills as being skills of the new day, and I keep hearing people complain that some technique or other is useless becuase it doesn't work with GUI code.

    The fact is, if the GUI is really a significant part of a program, then either:

    1) The program isn't that intellectually challenging, as it's just a bunch of GUI code.

  • Can we please stop this worshiping of GUIs as being the defining characteristic of modern software? I've even heard people complain that some technique or another is useless becuase it won't work on "real" code--ie, code that is all GUI and no substance.

    But what about:

  • Most programming work is sweatshop slop. Pick up programming from a high school class, the web, or a few books, fool around on the side for a year or so, and you're perfectly capable of handling the majority of programming jobs that require a college degree. I'm not just talking about web and database glue work either.

    Most programming jobs are grunt intensive. Hire enough people and you can do all sorts of goofy things, like writing giant windowed applications in systems-level languages like C, or coding 200K line programs without any up front design. This is the norm.

    It takes a few years of working to realize this. Then you start wondering what's gone wrong. Why has "Use the best language for the task" degenerated into "Use C++ for everything"? Why do we continually ignore all the lessons learned ages ago and outlined in books like The Mythical Man Month and The Psychology of Computer Programming? Why do we have to live with horrendous architecture XYZ when better alternatives have been around for twenty years?

    Eventually it gets tiring, and you start to view high school-level programming as something for junior employees to do, so you can do cushier work like writing and reviewing specs and organizing projects. The problem is, if you do that for too long--more than three years--you might find it difficult to get hired elsewhere, unless you're in an industry with a lot of big players, like telecom. You're in worse shape if you completely avoid the management track before you start to tire of it all.

    It also gets frustrating after a while having to always throw away a huge base of knowledge and start in on the "new" thing. "Too bad, old fart," might be a flippant reply, until you realize that what you're currently into now might be cast aside after you've spent years becoming the expert on it (Linux, Perl, CGI, Apache, whatever). Remember, UNIX was in a major downhill death slide that was only stopped by the Web. ESR and RMS have gotten their second chances.
  • Can we please stop this worshiping of GUIs as being the defining characteristic of modern software? I've even heard people complain that some technique or another is useless because it won't work on "real" code--ie, code that is all GUI and no substance.

    But what about:

    - satellite control
    - Internet search engines
    - medical devices

    just to quickly name a few? The important parts of these things don't have a GUI involved. Coding GUIs is just one general skill--a relatively easy one when you think about stuff like the above.

  • Can we please stop this worshiping of GUIs as being the defining characteristic of modern software? I've even heard people complain that some technique or another is useless because it won't work on "real" code--ie, code that is all GUI and no substance.

    But what about:

    - network infrastructure
    - missile guidance
    - WWW search engines
    - medical devices

    just to quickly name a few? The important parts of these things don't have a GUI involved. Coding GUIs is just one general skill.

    The really important things aren't changing that fast. In fact, from the little time I do spend with older guys, I'm reminded of just how much of whippersnappers *haven't* caught on to, that *they* knew decades ago.

  • Well, I'm currently working, so...

    Anyway, I'm talking about code I cleaned up, written by someone who had no concept of efficiency. It worked fine in a test environment, but in the real world, it became unmanagably slow.

    I got paid a lot to clean that up, too.

    Virtual memory has made people sloppy. I'm not talking about saving bits and bytes. I am talking about simply knowing that

    new char a[100];


    new char a[100000];

    are different, performancewise. A lot of younger programmers have no concept of that, and so produce slower code. I've done the latter when it made sense. The key is knowing that there is a potential issue. It is part of good design to know all the issues.

  • I would paste, but /. doesn't allow

    So read this :) []

  • Don't sweat too much over the code, if you can help it. It's going to be exactly like that for a long time to come. I have never done a "fresh" programming job without having a pile of language references in my lap, and I am becoming used to the fact that I probably never will.

    Every new job has its challenges. If you welcome these, and remain open to them, then you can never be daunted or go out of style.

  • I think you may be misunderstanding them, coming from your youthful point-of-view. Perhaps those who do what is required of them, and are not interested in the "exciting new" technologies, have learned that there is truly nothing new under the sun, and are content with their roles. And maybe they are more interested in their real lives than in the esoteric subjects which fascinate the idealistic young and inexperienced. Who knows what truly goes on in the heart and mind of the humble meditator?

  • assembly, pfff... plz, nobody uses that crap anymore.

    html is REAL programming. excuse me but html can do animated gifs and blinking text. c'mon!! lets see some assembly coder do that in 2 lines or less. i think not.

    That's the problem with old timers they just don't realize superior technology when they see it: windows, activex, word macros, VB. nope, they get stuck with 30 year old technology: mainframes, unix, assembler, c. they just can't see progress like us teenagers.


  • dont want to work 90 hours a week

    I think you mean "have a life, thus cannot be tricked into working 90-hour weeks". :-)

    Anyway, any remote excuse for quoting Dilbert is a good one:

    PHB: - Are you a COBOL programmer?
    Bob the Dinosaur: - No, but the likeness has been pointed out to me.

  • why do people have so many children? There just isn't enough room for them...

    Two children equals zero population growth :)

    Besides, children are life, everything else is an illusion.

  • machine gun

    Nothing so large: An Uzi, IIRC.

    Excellent movie, by the way: Had a very European feel to it, not much "emotifying" music but just a plot spiralling towards the final confrontation, as it should be. Funniest scene: When he fumbles with an anti-tank rocket and a twelve year old kid instructs him how to use it.

  • Whats Vi? Don't know any vi. Hate it... ;)
  • OK, that's certainly true. A team usually needs more coders than designers and only one lead. On the bright side (for those approaching or past 35) There are less of us than when we were inexperianced coders. I suppose the question is, which narrowed more, us or the jobs that need us?

  • I learned how to program for 'embedded systems' on the job at a previous company. They needed the code for a new device, and I was a tech there. I got the rare opportunity to move into coding, and wrote all or most of the code for three lines of devices while in their employ. Part of it at technician's pay, and part as a software engineer. It was 100% assembly language, in 4 and 8 bit controllers.

    It's cool to write code for a 4-bit processor with 8K of program memory and 512 bytes of Data memory. It's not exactly a honcho platform, but then it gets embedded into thousands of devices that you can point to and say your code is governing the operation of.
  • Young people have lots of energy but the majority lack breadth, education, and are rather stupid. Many are highschool drop outs with programming monomania and highly inflated egos. Older programmers tend to be better educated, have a deeper skill set, write technically better code. They make a lot less noise too. I see no problem in our market with experienced people in their 40's and 50's landing senior level programming jobs.
  • by Anonymous Coward
    Something that was mentioned in the Wired article which I found particularly interesting was the mentioned lack of "salient skills" in older programmers. It seems strange to me that a programmer wouldn't continue to upgrade their skills over time. I mean, if you're not interested in the management career track, then you must be coding because you *like* technology, right?

    I think that this might be in part due to the "pigeonholing" of people based on skills. Once you're known as the C++ guy or the VB guy (no flames please!), IMHO it's hard to bridge over to another language and even harder to move to completely different technology.

  • If I were a PHB, I'd much rather employ two kids whom I can bully around easily for the price of some older guy who not only has a lot of (authoritative) knowledge, but also knows it.

    And what Real Manager cares if the kids can't get it done? They're easy to blame anyway. Try that with the vintage programmer guy.
  • Apologies for my inexperience with automatic firearms. Perhaps it was an Uzi. At that point, he was walking around with quite a nice sackful of guns, so presumably he just grabbed whatever was most convenient.

    I think the movie could best be described as a bitter sarcastic look at everything thats wrong with American society, focused around the journey of one man "going home" through Los Angeles. The bit with the anti-tank rocket was amusing, but I think the director was trying to bring in one more sting against the state of urban decay; a young child knows more about using weapons of mass destruction than a man who has worked his whole life in the defense industry. I especially liked the bit where he goes nuts in the convenience store, smashing up everything, and then pays for his soda.

    "Maybe if you wrote it in f*cking English, I could understand it."

  • I think you are bang-on. People who are still in programming at the age of thirty-five are either a waste of space or extremely expensive (sometimes both :) compared with young, eager, cheap types a few years out of school.

    Young men with no lives (and I'll include myself in this :) make almost ideal employees in programming environments - they don't ask for much money (relatively) and they are prepared to work long(ish) hours.
  • Well, I am 46 and I still hack code as well as manage a department of twenty-to-forty-somethings. Age is irrelevant to me. What matters is are you in tune with your profession? Are you current with the goings on in your field? Can you work effectively in a team and with little supervisions? Bottom line- can you execute! And by the way, I am always looking for folks with hardware and software architectural modeling experience. See for more information. - Patrick Reilly, Asst. Director, Intel Computing Enhancement Architecture Lab, Chandler, AZ
  • I understand that there are many issues in programming and that sometimes speed and efficiency are important. Even in business applications.

    That said, to build on your example.

    new char a[100];
    new char a[100000];

    I guess I would argue that the code bloat and innefficiency of

    std::string a;

    is probably the appropriate balance. Trading off runtime speed and memory re-allocation with not easily being able to screw things up.

    And if you're not in C++. Well, that might be a red flag too.


  • Here in the upper midwest at a Medical Device manufacturer, I am one of the younger people on my team, and I am 39. We're developing critical life-care embedded code (implanted devices.) I guess in more volatile fields where quality doesn't impact safety as much, maybe they can hire people right out of school. There seems to be a shortage of embedded-system techies, and I don't see that being addressed in schools. With the further 'mainstreaming' of Computer Science and programming curriculums, there just aren't as many people coming into the field of programming right down to the wire, on hardware platforms, as there are the more office types. I know there continues to be a real shortage of people who can sling embedded code, and I don't see much draw to get people into it, as opposed to higher level programming.
  • I turn 35 if four years. My wife and I have one kid now, and hopefully two by then. I will truly be set apart from the young guns with no life, and refuse to put in more than 10 hours a day regularly.

    But in the 8 productive hours I work a day, I can kick the tail off of anybody I work with, so where's that put me? Will I be wondering about a job then?

    I doubt it. In my area (DC), there's a drastic talent shortage. Companies are downright obnoxious with their recruiting practices, and there's no shortage of jobs.

    If people are having trouble finding work, maybe they should just move here!
  • Contractors, however, do have an advantage that no one has mentioned yet.

    The fact that they serve for a fixed amount of time means that they can be shown the door after their contract is up and there should be no hard feelings on either side. On the other hand, if a permanent employee is let go, for either good or bad reasons, that termination will resonate with the other permanent employees and may cause problems.

    I once managed a technical support department for which we hired a lot of part-time students. I seldom had need to can anybody since most of the students would be gone in a semester or so.

    This meant that the full-time employees could breathe a little easier. If the boss came to me and said we needed to cut down on salaries, I did not think about layoffs. I simply hired fewer part-time people.

    No matter what you may think of the management of your company, they do not like to fire people. It ain't no fun for anyone.

    Oh,just so you know, I'm 56. Pretty soon I need to figure out what I want to do when I grow up.

  • The 1st RFC for FTP is older than I am.

    The worst programmers i ever worked with were
    game programmers. age matters not; its the paradigm. very hard it is to keep them from tear-assing through code. Old-time DOS hacks tend to be the best. that vintage had to learn the science of being bit-efficient AND the art of managing complexity. Coding without a net, so to speak...

  • At 34, I'm a near-geezer. (8 months to go!)

    There have been a number of occasions recently where co-workers have come to me ("Mr. C++") with a variety of questions that they have been wrestling with for a while, typically hours. In almost every case, I've been able to solve the problem in less than a minute up to a few minutes. Sometimes you get what you pay for.
  • Yeah, after hitting the post button, I remembered it was a machinegun.

    They just couldn't get the order right!
  • I agree in general, but then, there are times it is better to use the flat array rather than the vector. (Though believe me, having rolled my own dynamic arrays multiple times, I adore std::vector.)
  • Ahhh... there's the key
    the older guy knows some things that he will never EVER tell you... you must hold information.. KEY information hostage from other workers and management at all costs! this keeps you valuable and will make management think before laying off the old guy. Never ever show a co-sorker anything in your bag of tricks, and if you have to teach teach only what is needed to get that job done and no more! A programmer is only as good as the inside information and secret mojo that he/she has with them. after that you'er a bag of flesh.

    dont trust your boss or any co-worker... they are not looking out for your best interests by any means.
  • I'm coming up 40 in six months and have had lots of problems progressing upwards. The most annoying thing has to be that almost inevitable shift into management.

    I was very lucky a couple of years ago though when I got together with four other friends and we started our own business (the youngest of us is 34).

    Now I get to ply the skills I'm interested in plying. What I can do is whatever the company says I can do. I don't have to wear a suit. We're now flat-out working on bringing more Linux applications to the world to run on our web hosting service. If I had of stayed working for other people I'd be running another COBOL project, late, and with a bunch of useless know-nothings that just sent me home each night frustrated.

    Although there's still a certain amount of 'management' it can be many and varied as well since I do 'Financial Controller', 'Account Manager' and 'Sales' as well as the more traditional (for a Programmer/Analyst) 'Team Leader' and 'Project Manager' roles.

    It was scary when we first started, and six months in was just about desperation, but we've just had our second anniversary and we're over the hump with things looking better and better.
  • It probably doesn't have as much to do with their actual age...

    it probably has more to do with the fact that older, more experienced programmers, because of their experience, will command a higher salary. In this world of a million and one high tech startups who don't want to/can't pay somebody like this what they're worth, that's the way the chips fall.

    That doesn't mean it's right, though. If I had a chance I'd hire one of these "old" guys who could probably read a page of assembler and tell you what it was over some MIS/business school, point-n-click trained Windows weenie any day. These are the guys when faced with a command line go "uhhhh....Where's the Start button!!!???"

    Kind of like the old guy who you take your car to, he'd listen to it for a second, and tell you exactly what's opposed to the kid who has to get out the scan tool and the meters and plug it in and look up all the codes in the book....yadda yadda.

    They're *more* likely to have 'hacker-like tendencies' in my opinion. More likely to *not* be marketing controlled droids, and more likely to know more about the 'real world.' Hire 'Em!!!

  • "...even though their skill level is as high or higher than the young guns out there."
    This may be true if you attempt to measure skill level by counting technical terms on a resume and multiply by years of experience. However, in my personal experience, most older poeple don't know what the hell they are doing. Maybe this is because younger people are not afraid to admit that they don't know something, so they learn more? What I can say for sure is, given the choice between someone with a college degree who has been working with computers for 30 yrs, and a high school drop out linux hacker, you get way better work, and more of it, from the high school drop out. Just so you know where I am coming from, I do have a college degree (BS in CS) and have been out of school for about 3 yrs. I learned a lot in college and totally enjoyed it (it was hard and I had to pay my own way through it, but I got a lot out of it), but my I would be way better of right now in terms of money and career if I had quit in high school and just stayed home and coded.
  • It is a real life example that I have run into more than once. And yes, they do do different things. However, lots of people throw around string objects when they don't need to, creating bloated programs. Since both calls allow

    string str = GetName()

    Many programmers think they are the same, and since "string GetName()" works, they use it without thought.
  • Sure, there are girls who can code, just not a lot of them. Just from my own experience, all my computer science classes have been around 90% male. About half of the males, but all the females, didn't have a clue what was going on. Apparently the girls who can code don't attend my school.
  • My coding mum's 65. Actually, she does modelling and less code, but she hasn't slowed down. And they love her at work because she frequently brings cookies. No, I am not kidding. And yes, her cookies are very good.

    Most modelling agencies aren't interested in 65 year olds; I'm glad your mom can still find work. But then, I don't think I'd want her cookies; I wouldn't want my computer at work to leave any evidence that I've been browsing models on company time...

    -- YeOldeGnurd, age 36, going on 16.

    Bravery, Kindness, Clarity, Honesty, Compassion, Generosity

  • by jabber ( 13196 ) on Tuesday July 27, 1999 @04:30AM (#1781686) Homepage
    Let me start off by saying that I'm 26.

    Now... At a previous job (a jr. H.S.), I've worked with people half my age. It was their job to design a web site, and mine to channel them. They were eager, but knew less than necessary to be dangerous. And I was an old fogey to them.

    At the current job, as a S.E. I work with people who have been with this company longer then I have been alive. Some have trenchmind and are severely threatened by younger workers who have new and in-demand skills. These folks are scared of being discarded, and rightly so. They've given their lives to a company that would drop them like a bad habit, if they see profit in doing so. After working your whole professional life in a niche, there's no where else to go, and retirement looms real large at 55+... Fortunatelly, the mentally hamstrung are a minority within the set of older developers.

    Here's the point of the post, older developers (not 35+ but 45+ in my case) have so much domain knowledge, so much experience, and so much professional common sense that they are effectively priceless to the company. Even if the company doesn't see it that way. These guys (and gals) have decades of experience that can not be replaced with OOP, CASE, RAD or any other buzzword.

    They serve as sages, mentors and wells of knowledge to us, the junior developers. They are responsible for system architectures, legacy system migration and evolution guidance and sanity checks for the rest of us.

    They do not pull the 60+ hour weeks, nor should they have to. After I beat my head against a problem for a week, and can't account for some old quirk that makes no sense to me, all it often takes is a couple of questions to one of these guys, and the light dawns. They know where we came from, and they're better judges of where we're going then we are.

    Older developers are invaluable to those of us who work in legacy and mixed environments. These systems were designed from a different perspective. Their implementations were limited by storage and performance, and we often can not even think in these terms.

    Just try to do Y2K work knowing C++ and Java, without the aid of the COBOL guru who nursed the system from punch cards...
  • My team is looking for senior full timers, and can't find any. One of the issues with looking at the "older" folks is that by the time you hit 35, you're likely to have had a fair amount of management experience. The team I'm on is run by a couple of 30yr olds (old in their own right!). There is sometimes an illusion that a 35yr old with 7 years of management experience will only want the job if he can run the place -- that he will have trouble taking direction from a young'un. Maybe that's not true, but it's a tough risk. We hired a consultant who had about 20 years industry experience, and although in the interview he said "I'll do whatever you need me to do", a few months in he basically demonstrated that he thought we were ridiculous, didn't listen to what we asked of him, and went off and did his own thing.

    We're in a tough market right now. 80% of the resumes we get are for contract work. Of those, more than half are outrageously overpriced and underexperienced -- "I've got 2 years out of school! I read a book on servlets once! Pay me $120/hr!" When we find a fulltimer who doesn't look like he'll make a powerplay to take over the team, we usually jump all over that opportunity.

  • Everything I say here is a generalization. There will be exceptions to every statement, but I hope we all know the difference between anecdotes and trends.

    Older workers have several advantages over their younger peers. Foremost among these is that they generally have both a breadth and depth of experience that their younger peers. They're more likely to have seen something similar to the current problem, remember the tradeoffs and pitfalls of various solutions, etc. They often have better communication and interpersonal skills than younger folk. Lastly, there's nothing about coding that favors the young, unlike for example mountain-bike racing. It's a sedentary intellectual activity, and like any such activity people get better at it when they do it more, and older programmers have done it more.

    There are also major downsides to older workers. They do tend to be more expensive. Depth of experience is of no (or even negative) value if it's in the wrong area. Single-machine FORTRAN or COBOL skills on an OS that hardly exists any more might not be all that valuable when programming is done in C++ or Java in a distributed environment using CORBA etc. With the rate of change in this industry it is essential for anyone to keep up with the latest technologies, even if it means that sometimes you'll "waste time" learning a technology that drops off everyone's radar screens when the next competing standard comes along. C'est la vie. Contrary to popular belief, old dogs can learn new tricks, but too many people both young and old don't make the effort; the only difference is that the young one's laziness hasn't caught up with them yet.

    There's one area where I defy conventional wisdom: amount of work. Yes, younger people - especially single ones - are more likely to work longer hours. They're also more likely to spend half of those hours surfing the web, on IRC/MOO, playing Quake, etc. Older people are likely to work fewer hours because of family commitments and so on, more likely to take sick leave, probably have more vacation time, but in my experience they do have a better work ethic. 40 hours of "work" is 40 hours of work instead of 70 hours of "work" being evenly split between real work and play. Overall, I think the older folks I've worked with got more done on a per-week basis than the younger ones who put in longer hours. YMMV.

    Overall, I think we need both. I've long since abandoned the "one size fits all" philosophy, and that applies to personnel too. I think the best projects combine the experience and discipline of a few older workers with the energy and exuberance of a few younger ones. I've worked at companies that were unbalanced in both directions, and both suck.
  • by ucblockhead ( 63650 ) on Tuesday July 27, 1999 @04:46AM (#1781695) Homepage Journal
    As someone who is rapidily approaching old age (34), perhaps I can give some insight for the youn 'uns.

    Maintaining a successful career as a programmer is not an easy thing. It is not like being a plumber, where you learn your trade and then perhaps do a little studying from time to time. You have to be careful and you have to be observant.

    I found myself oh so close to trouble recently because while everyone else was moving towards Windows and the internet, I was spending my working time as an OS/2 programmer. Why? Well, they paid me gobs. It almost killed my career, though, as I found when I finally got fed up with that place. Recruiters looked not at my ten years experience, but at my relatively weak Windows experience. Fortunately, I was able to leverage what Windows I had and some application domain knowledge into a new job that, while is lower paying, will give me a killer resume.

    The lesson? Money isn't everything. It is really easy to get sucked into high paying jobs that are death to your career. It is also very easy to become complacent, and say to yourself that you'll start looking for a new job in a few months.

    Before the anti-Windows flames start, let me say that I am busy practicing my Linux programming at home. Which brings me to another problem. Off-time experience is no experience from the standpoint of most employers. You can be the biggest Linux expert in the world, but if you can't point to a job where your title was "Linux developer" or a test you passed with "Linux" in the title, many prospective employers won't want to hear from you.

    (Actually, I suspect most Linux shops are better about this. My experience was with Windows, where I'd written much in my spare time only to be confronted with questions on my lack of Windows experience. However, as Linux grows in popularity, you'll find more "old-school" employers who think exactly like that.)

    So even if you think you know technology "X", go take a class in "X". Sure, you'll be bored, but you'll have that all-important piece of paper saying you know it. Get any certifications you can, even if you think that tests are a poor indication of ability. Many employers don't, and that is what is important.

    Another big cause of this problem is the way salaries top out for programmers. When I was younger, my salary grew with leaps and bounds. Now, I am pretty much near the top, which means most companies are loath to pay more. That can be hard psychologically if you've gotten used to the hefty raise every year. One way around it is to become a contractor, though that has its own pitfalls. (Biggest one: no one will pay to train you.)

    Finally, don't wed yourself to a technology. Don't think of yourself as a linux programmer. Think of yourself as a programmer who is doing linux right now. Believe me, you'll be better off, regardless of how superior linux is, both because superiority is not a guarantee of survival and because something better may well come along. Lots of OS/2 programmers felt the same way. Stick your nose into lots of things, even Windows. (You'll need to hold it, believe me...) Take lots of classes. Try to get your employer to assign you a variety of tasks. And above all, keep a keen eye on those technological currents, even when you've settled down with a wife and a mortgage.

  • >Only yesterday, I had a greying geek, who was probably hot stuff in the mainframe days, come to my NT workstation, and have difficulty navigating to the floppy drive.

    While I generally agree with what you say, you do need to be careful about what evidence you use to conclude that someone else is clueless. Does not knowing a particular technique on a particular OS invalidate 20+ years of design experience? I know that's not what you're saying, but often what people think is based on very little more than that. It helps to remember that this guy might laugh at the way you stumble when you're in his favored environment.

    There's a common tendency to assume that things we know are worth knowing, and things we don't know are just junk. It's an especially common tendency among young and technically-inclined people, which is why we see it constantly in the Windows vs. Linux flame-wars. The Windows zealots think you're an idiot if you don't know COM or config.sys, the Linux zealots think you're an idiot if you don't know CORBA or /etc/init.d, and those of us who've lived through a few rounds of such wars just roll our eyes.

    The point is that the most valuable skills often turn out to be the ones that we ourselves do not have, that we might have considered obscure and useless until the very moment that we tripped over a situation where they were needed. Maybe someone else's skills really are useless and outdated, maybe that guy is a stuck-in-his-ways old relic, but we should be very hesitant lest we make that determination too quickly and have to eat our hats later.
  • I've seen both types of older programmers. On the one hand, I've had to deal with a FORTRAN-66 programmer who couldn't get the hang of either GUIs or the Internet. While I may have sympathy for this sort of fellow, it wouldn't extend to any payroll under my control.

    OTOH, I've run into the guru who keeps up with the latest tech, and knows the old stuff. He doesn't have to write a line of code to increase our productivity; he earns his keep just by helping the rest of us with our programming issues. Having somebody who has been there and done that is invaluable.

    The smart employer will see the difference, and discriminate accordingly. Having a guru on your team may be worth two or three newbies; the guru makes the newbies more effective.

  • by dillon_rinker ( 17944 ) on Tuesday July 27, 1999 @05:33AM (#1781736) Homepage
    40 hours of "work" is 40 hours of work instead of 70 hours of "work" being evenly split between real work and play.

    I'd also suggest that if you know how to do the job right the first time, you don't have to stay until 2:00 am debugging it. I've been on both sides of this. Of course, the boss sees the guy working when he leaves and still there when he comes back the next morning and thinks "what dedication!" Then he sees the guy who is strictly 9-5 and thinks "Here for the paycheck..." Never mind the fact that the all-nighter barely gets working code in by the deadline while the 9-5er codes, tests, debugs, is done with the days work by noon, and spends the rest of the day telling the all-nighter what he did wrong the night before.

    Of course, there are those who know what they're doing, have been doing it since they were nine, and STILL stay until 5:00 am. Double these peoples' salary and make them take off two weeks three times a year. Get them any training they want, and find projects for them that will challenge them. Whatever you do, don't let them get away...
  • There were two bulls standing atop a ridge overlooking a lush green valley where their herd were grazing. The young bull, eyes full of fire and a spring in his step, turned to the old bull, who was a little slower than he used to be, and said "I have an idea! Let's run down there and screw a cow!" The old bull turned slowly to look at the youngster and replied with a chuckle, "I have a better idea. Let's walk, and screw 'em all."

    An overworked developer with no life, who is constantly "running down the hill," is likely to provide a lot of half-baked solutions and spend most of those forty extra hours each week correcting mistakes made in haste. It is much better to "walk down" and give oneself time to develop a properly crafted solution in the first place.

    Having "a life" is important, too. Wasn't it Einstein who remarked that the key to his talents was imagination, not necessarily intelligence? It's difficult to be imaginative, creative, or thorough when you're burned out and sick of your work.

  • >I'd also suggest that if you know how to do the job right the first time, you don't have to stay until 2:00 am debugging it...

    I know we all hate "me too" posts, but...amen, brother! I could not agree more with your post.
  • Money's the thing. Companies are always willing to pay contractors more than salaried employees (even counting benefits).

    I suspect that a big part of it is that if an older programmer were paid the salaray he was "worth" (given supply and demand) he would make more than his manager. Managers don't like that as it conflicts with the corporate class structure. So instead, they pay a contractor even more, but because this is outside the salary structure, they can pretend they are still more highly paid than their employees.

    A company I used to contract for once offered me a salaried position. The salary they were offering me was quite literally 60% of what I was making as contracting full time for them (and my contract house had better benefits.) And they wondered why I laughed at them...

  • You need to learn some economics.

    Your conclusion would be true only if there was some definition of value which held equal for everyone. The basis of economics is two people exchanging things for things they want more. For instance, to me a CD is worth more than the 15 dollars it takes to get it. To the store, the money is worth more. No one gets shafted.

    In exchange for my time and labor, I get benefits, pay, and some intangible benefits such as meeting people, learning things, and job satifaction. I don't feel in any way shafted (at my current job anyway).

    Further, the amount of work you produce isn't linear. Two people working together can create something that neither one seperately could ever do. The combined result could be worth more than individual work. The company can then give the workers what they would've earned seperately and still make profit. So who loses?

    It is true that evil companies exist, but I don't agree that it is necessary.

    P.S. I realize my buying a CD example ignores MP3, artist rights, monopoly, and other issues where people in fact are shafted, but that is tangent to my main point.

Things equal to nothing else are equal to each other.