Is experience better than talent?
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

I have been thinking a lot about the difference between experience and talent lately. Part of this is because I am going through the recruitment process again and I am having to make decisions that fall soundly across the divide.
Of course people can be experienced and talented, I count myself as someone who does cross the divide but as I get older I do find that my experience is invaluable in making less mistakes, plus I build much larger code structured without having to plan as much and therefore less refactoring occurs and less of my time is taken up planning.
Brain Power
Counter to this my raw brain power I am sure is going down (slowly I hope) part of this I recognize as poor short term memory, because I have to relate back to function declarations or constants quite frequently. I would also say that larger logic problems fit less easily in my head and I find myself expressing the problem on paper to help me solve it.
So my dilemma is that although the general theory goes that more experienced people are better l find myself thinking that this is more because over longer periods of time it is more obvious that someone does have talent and not because they are necessarily any better.
Learning
Programming is a task of constantly learning. However much I think I know about any particular subject there is always something more to learn. So going back to my original point is raw talent a better bet than experience? As with everything it is actually never black and white.
Interviewing
I always find it easier to interview younger programmers. The reason? Because as you progress through your career you are likely to have changed jobs a few times and learn to cope better in interviews (granted this is not always the case) in contrast if it is your First interview you are relying on your wits alone.
As I say this is not a hard and fast rule but it is a definite trend. How does this help? Well it certainly goes against EU law (not sure about US) as obviously we cannot discriminate against age but the reality is that programming is a very intensive mental task and requires high levels of concentration over long periods of time. Anyone who’s says that they can keep up the same levels at 50 as they were at 20 is lying. But again at 50 you will have seen it all and perhaps still produce the same amount of work through making less mistakes or better planning.
But at 50 how much more would one have to pay?
Conclusion
I have made a whole load of generalizations (it’s a talent) and I have based a lot on the role being a pure programmer and ignoring the fact people move into various team leading / management roles as you get older. I am not sure I am any clearer in my own mind but this was kind of a mental exercise and I hope it made you think.
Comment by Dinah on 16 January 2008:
experience can beat youth any time-
do not allow yourself to play the poor me
old age game-
play the wise sage game and win with
age and wisdom!!!!!!!!!!!!!!!!!!!!!!!
djc
Pingback by Wayne State Web Communications Blog » Blog Archive » [Friday Links] The Busy Week Edition on 18 January 2008:
[...] Is experience better than talent? [...]
Pingback by Dark Side of the Carton » Programmers: Experience vs Talent on 18 January 2008:
[...] Halstead recently asked himself the [...]
Comment by Steve Goodman on 19 January 2008:
This is really only in reference to your generalization that age is inversely proportional to raw brain power. I would argue that your brain power isn’t declining, but rather the metrics which we use to measure brain power are distinctly geared towards the type of mental processing we do in school.
The type of thinking we’re trained to do from elementary school through undergraduate work is very black and white: 8 is greater than 5, if A then B then C, etc. Obviously, as the work gets more advanced, it takes more effort and energy to find the right answer, or a good answer to open ended questions.
In the working world though, rightness and wrongness take time to develop. There is often no absolute standard to refer to. Was it the right decision to build your own CMS rather than buy one? Was this the right hire? Time will tell.
As we transition from controlled academic environments where we find out on Tuesday what our grade is, to areas where there isn’t such immediate success feedback on our choices and answers, it’s easy to think we aren’t as sharp as we once were. However, I think it is simply a natural effect of feedback being a lot less obvious.
Comment by Raza Imam on 19 January 2008:
Good developers are easy to find, but people who understand what you’re trying to do and are fanatically committed to do things better isn’t. We look for talent and the ability to learn vs experience as a rule of thumb. It’s hard to break bad habits of developers with more experience. Again, there’s no single answer as it is usually dictated by the needs of the project, level of expertise you currently have, etc.
I own a Chicago-based offshore development firm and we talk to lots of startups that outsourced development work… and now they’re disgruntled and unhappy with their vendors. So when we work with clients our developers have to be super sharp (to make up for the natural bias against cheap offshore developers) Our focus isn’t on technology as much as it is on our problem solving attitude. We’re not the biggest, we’re not the cheapest, and we aren’t rocket scientists… but we’re tenacious as heck.
On the flip side, hiring developers is a headache. We run into the following problems:
1). Newbie developers are a good long-term investment, but there’s a steep learning curve associated with hiring and nurturing them into superstars.
2). Experienced developers have big egos and have usually picked up a lot of bad habits over the years. Breaking these habits isn’t worth the headache.
3). Bad developers like to inflate their credentials and salary histories. We’ve gotta be really meticulous here and test them like crazy.
4). All-star developers aren’t sitting on the street with a ‘Hire Me’ sign on their chest. We have to build a company that attracts great talent… or at least people with the potential to be great. It costs a lot of money, but it’s worth the investment in the long-term.
5). Once you’ve got great developers, you have to keep them stimulated or they’ll drop you like Jessica Simpson dropped Nick LaWhatsHisFace. The pressure is on me (the marketing wing of the house) to find clients that are doing cool, innovative stuff.
6). Convincing our good developers to graduate into PM’s and coach the next generation of talent. This requires more convincing for some than for others, but it means we have to understand their true aspirations.
The list goes on… but it definitely keeps us busy. We’re currently looking for 3 developers at our offshore center in Pakistan. It’s bittersweet because Pakistan’s outsourcing industry is still in its infancy so attrition isn’t as bad as in India… but finding good talent is still pretty hard.
Unless I invent the next million dollar fad a la Pet Rocks, Sea Monkeys, Tickle Me Elmo… I’m gonna have to figure out how to hire good developers.
Raza Imam
http://BoycottSoftwareSweatshops.com
Comment by sas on 19 January 2008:
Yes, you have made a lot of generalizations.
Comment by Mike on 23 January 2008:
If an experienced developer doesn’t have talent are they worth the hire?
With a talented developer the experience will come.
I feel the position you are hiring for plays a big part in how this question is ultimately answered.
Pingback by Блог программиста » Архив блога » Что лучше, опыт или талант? on 26 January 2008:
[...] смысл надеюсь предал. Оригинал на английском читаем здесь. От себя хочется добавить, что очень важно уметь [...]
Comment by JeanHuguesRobert on 19 February 2008:
Is experience better than talent?
Yes. Says the experienced.
No. Says the talented.
Comment by Pete Ruth on 19 February 2008:
Find the most talented experienced candidates and hire them. One good programmer is worth a slew of mediocrities, and experience pays dividends. It’s usually non-programmers who come up with these types of questions, because they are looking for a simple solution to a very complex situation. Talent may be good when you know the right path, but experience can be big help you avoid the wrong path. Young talented programmers are coders finding their way; experienced programmers with the right skills are worth the trouble. Why, it’s less expensive in the long run. One more thing: programming isn’t rocket science or beurosurgery!
Comment by Pete Ruth on 19 February 2008:
Find the most talented experienced candidates and hire them. One good programmer is worth a slew of mediocrities, and experience pays dividends. It’s usually non-programmers who come up with these types of questions, because they are looking for a simple solution to a very complex situation. Talent may be good when you know the right path, but experience can be big help in avoiding the wrong path. Young talented programmers are coders finding their way; experienced programmers with the right skills are worth the trouble. Why? It’s less expensive in the long run. One more thing: programming isn’t rocket science or neurosurgery!
Comment by PHP Encoder on 27 February 2008:
Agreed that with a talented developer the experience will come. I think talented experienced candidate is better. But you should give a chance for talented person to become experienced one.