

Ask HN: Is age an issue? - clueless123

I am an old coder. I've being coding since the TRS80 model 1.. bla bla bla..<p>My question is: Honestly, in today's "hackers news" world, is age an issue when hiring <i>developers</i> ?<p>I ask not because I have trouble getting jobs (For years I've been a contractor at various Fortune 100's and I'am doing good), but because I keep getting asked crazy stuff at interviews.. like:
 "what is my favorite Java class" or What is the signature of XYZ class or the kind of stuff that my IDE does for me..<p>I might be suffering from early ICRS disease.. but don't see the value of memorizing ever changing API's (strut,spring,hibernate,ibatis, etc ) when google is one click away.!<p>Anyway.. be brutal, give me your thoughts...
======
scottw
I'll say "sort of."

If I'm a good manager, I'll take you for who you are and evaluate you
individually. I know a handful of _awesome_ coders over 50 who are awesome
primarily because they a) work really hard, b) learn new stuff all the time,
and c) have a ton of valuable experience.

However, _most_ of the programmers over 50 I know aren't good because they
occasionally lack a), but nearly always lack b).

If I'm a bad manager, I'll likely lump you in with the majority of codgers I
know and not give you a fair shake. I'm sorry, but I think most managers are
bad managers, and most of the time people are going to judge you before they
know you.

------
sophacles
(warning: some pretty broad generalizations ahead)

From what I've seen, it depends on the area in which you want to program. The
areas that fetishize the new (for being new) have a tendency to dislike
experienced/older people. Particularly noticeable amongst web frontend people
I've worked with. In places with deep domain voodoo or that fetishize the
better (systems, networking, and so on) old is not a barrier, and experience
is valued.

As for ridiculous questions about apis... I have done well for myself by
answering those types of questions with things like: "my ide does that, so I
don't know" and "who cares?" -- sure I've "lost out" on a few code monkey
jobs, but instead I've had some pretty cool stuff to work on.

------
mbrubeck
Some companies want someone who is already an expert at a particular tool.
Some have good reasons for this, some bad.

Also, you'll find that a bunch of programmers these days basically consider
Java to be the entire programming universe. Many of them have gone through
university and several jobs without being exposed to anything else. They don't
really consider the fact that could be experienced programmers who have no
Java knowledge, and they don't consider it a fad or a passing thing. I suggest
seeking out companies that are working with Python, Ruby, Perl, Scala, etc. -
not because of the tools themselves, but because they tend to expect that
candidates will be learning new tools and languages all the time.

Yes, you will probably be discriminated against by some companies.
Fortunately, there are companies out there that don't. I expect the latter
category will grow as the overall developer population ages. (Remember, our
entire _industry_ has grown from almost nothing in just 30-40 years.) At my
current company, at least one engineer is a grandfather and several people
have children near my age (and I'm a parent myself).

------
brk
Without blathering on too much...

Yes, age is an issue.

If you are too young, there is a worry that you will be some combination of
immature, inexperienced, difficult, unreliable.

If you are too old, there is a worry that you will be some combination of less
productive, untrainable, unreliable, demotivated, coasting.

When dealing at either of these extremes, you may find it helpful to adjust
your resume to be short with an entry at the end "further detailed experience
available on request" (ie: to hide your 20 year work history, or your 5 year
work history), and/or do a phone interview first (so that your apparent age is
less obvious) to build interest.

YMMV

~~~
clueless123
Actually, I am not asking for "getting a job" purposes.. I am asking for more
practical reasons. like in: what is your opinion/experience about old coders
continuing to code after 50 :)

~~~
peterhi
The problem can be that when your hair starts to go grey people either expect
you to be some sort of certified genius or completely out of touch (granddad).

Of course in the world of blue chip consulting this can be seen as good thing.
The mature / older consultant talking to the mature / older client can work
wonders for a business relationship.

Small startups unfortunately can either assume that the older you are the less
'up to date' you are and that your skills and experience somehow don't
translate to the hip world of the startup.

Also smaller companies expect that they will have to pay older people more
than a younger person, and the truth is younger people will work for less as
they have less commitments.

I am 48 and joined a small company this year. It's a relaxed place and the
fact that I an nearly 20 years older than my manager is not a problem.

So it can work out.

YMMV

------
markkanof
Regarding the detailed questions about APIs, I think that can sometimes
indicate an interviewer that hasn't really given much thought to the type of
skills that are needed to do the job. I've been guilty of this myself. Asking
quiz type questions that really only test the candidates ability to memorize
and don't reveal anything about how they think about problems.

As I've grown in my abilities and experience it's become obvious to me that
how people solve problems and if they write maintainable code is much more
important than if they know some minutia about the development platform. I've
worked with people that could answer all the quiz type questions, but just
didn't really have the mental ability to reason about and implement an elegant
solution to a complex problem.

------
Travis
One bias that might be working against you is actually your longevity in the
field. Coding turns over quickly; lots of programmers move to other fields or
move up the ranks. To a lot of hiring managers, staying in the same career for
a long time indicates an unwillingness or inability to try new things. For a
secretary position, not such a big deal. For a fast field like programming,
appearing static is definitely a problem (unless you're in a niche field).

------
maddalab
Yes, age is an issue but only at some organizations and you are probably
better off staying away.

A couple of observations on interviews focussed on api's -

I do not have a problem with being asked a question on specific api if I have
listed it in my skill sets. I would not expect to answer an api question on
struts FrontRequestProcessor just because I have MVC listed on my resume.

Usually when I have been asked such questions, it has been when interviewing
with junior to mid level programmers, all of them significantly 'younger' than
me.

The older folks have all transitioned into managerial function, some of them
know the engineering terms obtained from reading technical publications but
have not written code in a while.

Organizations with an emphasis on such questions tend to more often than not
lack an "engineering culture". Emphasis is placed on delivering requirements
from a backlog rather then innovating on behalf of customers and I would stay
away from them.

Age is an issue, but not at the ones that matter (to me at least)

------
Ixiaus
One of my most valued mentors is in his late fifties. He was easily one of the
top programmers in his field at the time. He can still carry conversations
with me about LISP, Fortran, and C programming as well as PHP, MySQL, and AJAX
development.

He does lack in a few areas where the industry is really nascent; but for the
most part he is 'caught up'. But it isn't because he memorizes APIs, it's
because he as a vested interest in undertanding the _how_ and the _why_ of
things; that one feature of his intellect is the most inspiring for me. He
picks new languages up in days, not months, because he understands the
fundamentals better than anyone I know.

Focus on the how and the why and you will have all of us youngins beat. The
only reason younger people may be ahead is because we aren't "set in our
ways"; unset yourself and be a bit younger. It does wonders for older people
to realize that they can still have dynamic lives.

------
frankus
I'm still a bit of a spring chicken compared to you, but my biggest stumbling
block (at least in the relatively tiny technical job market where I live) is
that interesting generalist jobs don't pay as well as older (i.e. not just out
of college) employees are used to.

The high pay is restricted to employees of big, boring companies and the
occasional startup that wants to hire a guru in some very specific narrow
field.

That's not a problem in itself, but as one becomes accustomed to a higher
salary, one's expenses tend to grow correspondingly: creature comforts have a
way of turning into necessities, possessions accumulate in way that makes a
smaller living space impractical, and dependents and stakeholders multiply.

So to the extent that you're competing on price with low-expenses no-family
just-out-of-college folks, you're at a disadvantage. You need to make and keep
yourself valuable in the other areas employers might look at.

------
Poiesis
Age is not an issue[1]. Ability is an issue. Experience is an issue.

You could be 60 years old and have just started learning software development
last year. The funny part? That still doesn't necessarily tell you much about
the ability level. A year of development experience does tend to put an upper
limit on how experienced you would say this hypothetical 60 year old newbie
is, but it does definitely depend on his/her existing skills and education.

Or you could be Don Knuth, he's 71 right now.

Or, you could be a 60 year old who never got a good education and doesn't care
to.

Knowing someone's age tells you how long it's been since they popped out of
their mom. That's it.

[1]: Obviously there are people who judge based on age, regardless of legal,
moral, or practical reasons not to. What I mean is that age, on its own,
doesn't mean much.

------
nailer
I'm 28. I've been working fulltime for 11 years now and make great money in
the environments you describe.

I would kill to be starting out now: not for the sake of youth, but for:

* top-tier CS courses using dynamically typed langiages.

* English-like languages being considered a 'grown up' solution

* Microsoft not being seen as the solution to everything

* The end of the packaging dependency hell that a lot of Linux distros had

* Element trees for XML

* Not having to repeat the logic in my database and app,

and more.

You might not get the jobs you're applying for, but consider: do you really
want to work at these places? Thousands of people in their early 20s are
working at newer, large-but-rainmaker places like Google and Facebook, or
starting their own great efforts, taking advantage of today's technology not
yesterday's.

------
eugenejen
Memorizing was important when you have no other way to document information.
But I doubt it to be important when you know how to search and
judge/experiment the information recently. Sometime people ask for apis just
to see whether the person had experience with the technology.

At the other hand, remember important facts, theorems, plus good analytical
thinking saving a lot of troubles.

What I find annoying is the education systems make most people
misunderstanding 'good memory' as 'smart'. At the other hand, I see good
problem solving ability as smartness. Not so many educators are as wise as
Richard Feynman's father is in teaching Richard Feynman memorization is not
understanding how a bird's behaviors. It is hard to teach problem solving.

------
hvs
I don't require applicants to have memorized frameworks, APIs, and other
implementation-specific details in my interviews. I ask general
programming/computer science questions that get to their level of knowledge. I
also have them do a programming test before they come to the interview, and
allow them to do it in the language they prefer. Age generally hasn't been an
issue, but most applicants are younger.

I think this will become a bigger and bigger issue as the programming industry
really starts to mature and you have a large number of developers that never
wanted to move into management.

------
deanj
Age shouldn't be an issue, but it is. I've worked with many young developers
that think anyone over 30 doesn't have a clue.

The real problem is that some developers over 50 refuse to learn new things,
and that gives younger folks a tainted view of all older developers.

Frankly, getting older and having the potential of getting discriminated
against because of my age scares the crap out of me. No way to prove they're
doing it, and never to be hired again, at least as a full timer. Yikes.

------
sammcd
I'm just a college student that codes, so I don't know much about if age is an
issue.

However your backing seems to be because of one specific case. Memorizing ever
changing APIs. Just wanted to say I have the exact same thoughts and I'm
young. I have been asked this type question. My response is usually well I'm
that that familiar with this API since I don't use it, but if I where to do
this with Cocoa (something I am more experienced with) I would do etc.

------
qeorge
There's advantages and disadvantages to older coders. The biggest
disadvantages are that you have a family and responsibilities, and your health
insurance is a lot more expensive.

If you're a great programmer, who's interested in learning new technologies,
that's not such a big deal. But honestly, your "when google is one click away"
comment is not signaling those qualities.

~~~
clueless123
Actually... if you do things right from the beginning, things like money,
health insurance and family responsibilities are much more of a factor on your
30's than on your 50's (If you plan right..)

With reference to Googling stuff comment.. are you saying that you never use
reference sources?

IMHO, When you have a large breath of knowledge that you need to use, it makes
no sense to memorize it.

If I am supporting up a framework that uses spring, I refer to the docs once
or twice, then it stays with me for the duration of the project.. six months
later I am building an app using Python,mplayer,ffmpeg & wxPython and for the
life of me there is now way I can tell you straight-off-my-head how to
configure the hibernate SqlMapClient-what's his face thingy! give me 5
minutes, I'll look it up and i'll be done & tested in 20 mins.

I could go on and on on this to technologies that have not been used since
before most of you where born.. (how many of you remember IRQ14 ?)

The point is: Some things are timeless (vi ?) and I know them solid.. some
others, I refer to use and let go.

I am totally curious.. How about you guys? Do most people remember api
specific stuff for ever ?

~~~
qeorge
Regarding API docs, I'm certainly not saying I have all APIs memorized, or
that you're approach is bad. Its just that the comment you posted sounds like
past employers have asked you to learn things and you've resisted. I suppose
its actually the "I don't see the value" part of that sentence that bothers me
more. Also, I was saying that it sends a bad signal, not that it necessarily
means you're not intellectually curious.

I absolutely agree that some things are timeless, and the breadth of knowledge
an experienced programmer has is their primary advantage. It just seemed
obvious, and you were more interested in disadvantages.

Anyway, just some constructive criticism from a 27-year old business owner.
Best of luck.

------
dfranke
If you're looking for a job as a Java programmer, then I think it's reasonable
for the interviewer to expect you to be able to give some sort of answer to
"what is your favorite Java class". Being asked the signature of a specific
method is pretty bogus, though. If you're getting a lot of questions like
that, then you probably don't want the job whether you're 60 or 20.

------
eli
It shouldn't be, but it absolutely is.

There's a stereotype of what a "good developer" looks like and it isn't
someone over 40. I also think lots of people would feel uncomfortable
supervising someone much older than themselves.

------
bigtech
My TRS-80 had 4K, so the Basic language used one-letter abbreviations for all
the commands. I tried learning Z80 on it, but it was a bit too tough for me;
6502 was a breeze in comparison. fwiw, stick with it if you enjoy it!

------
DanielBMarkham
I think this is a "is it a bug or a feature?" type of conversation. Some folks
will see age as a bug, some as a feature.

I'm in my 40s, so I'm closer to you than the younger crowd. I've also had
quite a bit of experience hiring folks, and it's never been an issue for me.

I once had a contract with a company where the average age was 24 -- and I was
32. During the interview they asked "so do you think age will be an issue?" to
which I replied "Why should it? I love working with people of all ages."

I think as you get older you realize that good programming is in knowledge of
general heuristics and systems, not api calls. But when you're young,
everything new and shiny must be mastered to the fullest extent.

Be aware of this. Always be learning "just enough" of what is new and flashy
in order to be able to develop with it (or look it up and develop with it)
quickly if need be." If you stop learning at the deeper-than-superficial-but-
not-guru level, it's not going to work.

Having said all of that, I think age, as long as you are self-motivated, is a
feature and not a bug. If your head is still in the game, you're going to
bring a lot to the table in terms of tacit knowledge. Having somebody who has
been-there, done-that can be a great boon to a team working in tough
situations.

