As my personal odometer clicks over to 38 today, I’m thinking about the very real concern of age discrimination in the technology field where many would consider a person wizened at 40. The legal and political considerations associated with this issue make it a very touchy subject that encourages many to tread lightly or avoid discussing it entirely. This is unfortunate, because for both the job-seeker and hiring manager, passive acknowledgement that age-bias is a factor does little to remedy the situation. This Tauran is going to stampede through that china shop and confront the issue head on with in a frank discussion about older programmers and the recruiting process. Along the way I’ll provide advice to both managers and job hunters for overcoming bias that can result in unfair and illegal discrimination.
Let’s start with what I admit is an unabashedly controversial opinion. It is my belief that, for programmers, age discrimination is more pervasive than either racial or gender discrimination during the hiring process. The basis of this sentiment is rooted in the demographics of the software development community which is predominantly comprised of male employees that are on average younger than the labor force in general (McConnell).
I suspect that hiring decisions made and influenced by younger managers who were raised during a period of increased emphasis on achieving racial equality in the wake of the civil rights movement are less likely to reflect race based bias than those of their elders. Further, it is likely not uncommon for the typical young, socially awkward, male software engineer to sometimes give an edge to qualified female candidates if only for some respite from the homogeny of his peers. That said, I also think that older female candidates are victims of more discrimination than older male candidates.
Do you feel me on this? If so, we are both guilty of exposing a personal bias that younger workers are less likely to discriminate in their hiring practices and men as a group are generally prone to using their status as a hiring manager as a personal dating service. While it is certain that both of these preconceptions must be true for some element of the workforce, it is equally true that they are not universal, and it is ambiguous about whether these characterizations are even widespread. The important consideration here is that each of us harbors at least a few innate personal prejudices, and there is a good chance that some of them are going to be inaccurate.
The Two Question Technology Bias Test
Even if you didn’t take the bait on that first point, consider the assumptions at play in the following two question quiz.
(1) What Operating system does the man in this photo prefer?
(2) What makes the following image humorous?
Despite what the guilt mongers would have you believe, prejudice, discrimination, and bias are not fundamental human failings that are uniquely modern and need to be worked out of the system. Instead, instead they are shortcuts wired into our primitive brains that allow us to apply a probabilistic model based on our own experience.
In a survival sense, it provided competitive advantage for our ancestors to assume that a particular lion is prone to violence based on their experience with a completely different lion eating a cousin’s face. The types who argued that maybe this new lion seems nice and deserves a fair shake probably didn’t fare as well as the lion-ist jerk who didn’t trust anything with six inch incisors. Given the eons it took to condition this into us, I don’t think it is feasible to eliminate it from our nature.
Although you can argue that the lion-prejudice pattern is outdated and no longer applicable. Consider the more modern practical applications of bias for programmers in the refactoring movement. Code Smells are little more than prescribed bias against certain coding elements that may or may not indicate real problems. I am not going to go all Gordon Gekko on you and declare that “Bias is Good.” I am just trying to say that in the appropriate context bias can be beneficial.
Conscious acknowledgement of preconceived notions and being vigilantly objective despite experience is critical, however, for managers making recruiting decisions. For the candidate, who is unlikely to suspend the well-shorn biases of society for the duration of an interview, mitigation strategies are in order.
Combating Age Discrimination by Acknowledging Bias and by Mitigation
Let’s talk about a few of the most common perceptions and concerns of hiring managers about hiring older software engineers.
“My current team is full of single 25 year old gamers who talk endlessly about their XBox 360, are they going to accept a married guy who doesn’t go on pub crawls with them?”
Culture fit is an extremely important concern. A considerable degree of employee morale is derived from workplace friendships (Buckingham/Coffman). Faster turnover and the associated costs are a likely outcome of hiring someone who doesn’t fit in with the team. Another major concern is that a poorly integrated team will be less effective at sharing information and mentoring.
Candidate Strategy: Do whatever you can to overcome the idea that you can’t gel with the culture of the organization. If they do a peer interview, focus extra hard on connecting on a personal level with the other team members by trying to find common interests. Learn the neologisms and use them in conversation, but don’t be fake about it or talk patronizingly about them. That will backfire badly and make you seem more even out of touch. Start a blog, get to know twitter, send a thank-you text message after the interview.
Warning: FaceBook is still popular among the 30-somethings, but increasingly considered “geezer-town” by generation-Y. Ultimately, the point isn’t so much to prove you are a hipster (don’t use this word, ever!) , but to show that you can be accepted on a team of younger programmers.
“Does this person still have the potential and desire to continue to keep up with the rapid pace of change in technology?”
This concern is somewhat understandable given that keeping up with the buzzwords d’ jour is exhausting, even for the 20-somethings. It is hard to imagine that 20-30 years of running furiously just to keep up wouldn’t burn out anyone and start them thinking about picking a technology and sticking with it until retirement. This bias is likely a consequence of the manager’s extrapolating their own anxieties out over their own careers and projecting them on the candidate.
Manager Advice: This concern is somewhat justified, but it is also easy to spot in an interview and recent job history. Confirm your assumptions before you dismiss a candidate on these grounds. In any case, be realistic about your expectations for an extended learning cycle in an industry with an average turnover of 18-24 months, or worse.
Candidate Strategy:Over a longer career, your resume is likely to have enough substance to survive some pruning. If possible, de-emphasize or remove references to technologies that might pigeonhole you as resistant to change (FORTRAN, COBOL, Mainframe work, DBase, slide-rule certifications, etc.). Join user groups, get certified, or blog about trendy technologies like Scala, Agile, Ruby, Python, or AJAX then document them in your resume.
“The younger guys can work 15 hours a day fueled by red-bull. This guy is going to be bailing at 4:30 to get the early bird discount at Luby’s so he doesn’t miss Matlock.”
Okay, maybe an exaggeration on both counts, but it is well understood that familial obligations become more pressing as we advance through life. We have all been part of a coding-death march that required late nights or weekend work before a code push and need the team to be there for us. Also, realize that this isn’t a continually increasing trend, empty nesters may have more time to spend at work and in my experience often manage a feat that is impossible for the younger guys, getting to work early.
Manager Advice: Again, don’t make assumptions. If the work environment requires extreme hours or occasional weekend work, be honest and most candidates that can’t hang will self select themselves out of the process or at least be honest about their availability when asked directly.
Candidate Strategy: If they screen you out because they don’t think they’ll get away with treating you like a rented mule, consider yourself lucky you didn’t get the job and pity the person who did.
“Is this guy going to decide to retire soon and force me to re-hire for the position?”
Manager reality check: By some estimates, the average tenure for computer programmers is less than two years. I’d also argue that the turnover risk is much higher for someone earlier in their career, who job-hops to increase their salary and diversify their resume. It is less likely that someone leaving a job within a few years of retirement wouldn’t just retire early rather than start over at a new company.
Candidate Strategy: At the interview, you will likely get a question or two about your career goals. Drop hints by having longer term career goals (5 years+) and don’t bring up retirement unless the interviewer does first.
“Why isn’t this person in management already? What’s wrong with them?”
This one is especially pervasive and controversial. If you need proof, here is an exact quote from a networking forum I frequent: “If I was still a software engineer at the age of 60, I’d deserve to be unemployed. Because that would mean that I hadn’t progressed, or learned anything in my 35+ years as a software engineer.”
Manager Advice: Dude. You are a manager. You KNOW that management, for better or worse, is a totally different job than programmer that requires completely different skills. You can tell a computer to do exactly what you want and it will without fail. People require diplomacy, subtlety, coaxing, and leadership. Also, be realistic. Are you hiring a programmer or a manager? If you need someone to crank out code, wouldn’t you prefer someone who has been doing it for the last 20 years over someone who spent the last 10 creating PowerPoint slides and doing budgets? Remember that you are hiring someone to do a specific job, the recruiting process shouldn’t resemble a Dickens-esque rehashing of where this person made wrong choices in their career path by your subjective standards.
Candidate Strategy: Perhaps the best thing you can do to combat age discrimination is to give in to pressure, use your experience to move into a supervisory role, and then fight the good fight from the other side of the interview table? Aside from that, I’d suggest stressing in your cover letter and interview that you are still in a staff level position by choice and call out other ways that you have progressively provided more value to previous employers.
“This person is probably overpriced because of incremental annual raises and higher expenses associated with having a family.”
Manager Advice: I’m starting to sound like a broken record, but confirm any assumption you are using to make a hire/no-hire decision. It is perfectly reasonable to reject a candidate because they have salary demands you can’t meet, even if it is a result of a long career. You cross the line when you ASSUME that someone is too expensive and don’t give them a chance to even negotiate. I have encountered a number of older programmer candidates with salary expectations that were a real bargain considering their level of expertise.
Candidate Strategy: Most interviewing books will tell you to be downright evasive on the desired salary question and hold out until the employer throws out the first number. While this is good advice for most candidates, it probably does more harm than good for older candidates.
What is your experience?
In the interest of getting the facts, I’d love to hear some job-hunting war-stories from older candidates working as programmers and from managers dealing with integrating older programmers into their teams. Please comment on this article if you have something to share on the subject.