Ctrl-Alt-Delete: The Planned Obsolescence of Old Coders
Old coders never die, they just become middle managers.
Each year, 600 coders gather to talk shop at a conference in New York called PyGotham. The organizers know how male and white the tech industry is, so they make a special effort to recruit a diverse speaker lineup. They promote the event on mailing lists for women and people of color who code, and they run a workshop for women in tech to encourage them to submit talks. The organizers ask speakers to fill out a demographic survey so they can track the progress of the conference’s diversity.
I serve on the conference committee, and after PyGotham ended this year, I realized I had made no effort to reach one group in particular: older coders. Compared to the underrepresentation of women and minorities in tech, the scarcity of programmers in their forties and beyond has mostly escaped notice. There are no Meetups or mailing lists for them in New York, no prominent advocacy organizations devoted to them. Although I will seek older programmers to speak at PyGotham next year, I don’t yet know where to look.
The software industry is overwhelmingly young. The median age of Google and Amazon employees is 30, whereas the median age of American workers is 42. A 2018 Stack Overflow survey of 100,000 programmers around the world found that three-quarters of them were under 35. Periodic posts on Hacker News ask, “What happens to older developers?” Anxious developers in their late thirties chime in and identify themselves as among the “older.”
I turned 40 this October, and I have worked seven years in the same job at a database company called MongoDB in New York City. Many programmers my age have gone back to school to switch careers or have become managers. I am committed to a lifetime as a programmer, but my career path for the decades to come is not well-marked. I know disturbingly few engineers older than me whose examples I can follow. Where have all the older coders gone, and what are the career prospects for those of us who remain?
In 2007, Mark Zuckerberg, then 22, said out loud what many in the software industry think: “Young people are just smarter.” Twelve years later, the lack of older programmers is still little studied compared to other dimensions of diversity. Google’s annual diversity report, for example, counts how many women or people of color it employs. Microsoft tallies its American Indian and Alaskan Native staff, and Apple is proud to hire veterans. It is commendable that these companies have revealed some measures of their diversity, but there is an omission: None report their age distribution.
Ari Rapkin Blenkhorn is a 47-year-old engineer who says she quit her last full-time job because the company, she says, wanted “a crowd of cheap youngsters. They didn’t want to support more senior people with established careers.” Her employer, which she requested not be named, valued her professional connections but did not invest in that network by sending her to conferences. “I believe they really didn’t understand why this was important or how my attending a research conference was different from junior developers attending technical training.”
Blenkhorn says that once she was back on the job market, the ageism she experienced was compounded by sexism. Despite her profound technical achievements, she was dismissed by recruiters as irrelevant and dull, as a “mom.” She recently completed a PhD in computer science and hopes the education will improve her chances in the job market.
Kevin Stevens, a 55-year-old programmer, faced a similar attitude when he applied for a position at Stack Exchange six years ago. He was interviewed by a younger engineer who told him, “I’m always surprised when older programmers keep up on technology.” Stevens was rejected for the job. He now works as a programmer at a hospitality company where he says his age is not an issue.
For other programmers, the outcomes can be far worse. A 2018 investigation by ProPublica’s Peter Gosselin and Ariana Tobin into age discrimination at IBM found that starting around 2014, the company attempted to reinvent itself by replacing older workers with younger ones. It laid off veteran employees by the thousands and strong-armed others into retiring. One 60-year-old systems engineer named Ed Kishkill was sent a layoff notice and told he had three months to find another job at IBM. Despite his decades of experience, he was rejected for all other positions. By the time of the ProPublica article’s publication, Kishkill was working as a Staples store clerk.
Lifelong programmers must keep their skills up to date, but they are in a race against time in a constantly transforming industry. According to a 2018 research paper, skills change faster in science, technology, engineering, and mathematics (STEM) jobs than in other industries, and the headlong rate of change for programmers is especially severe. Kadeem L. Noray, one of the paper’s authors, says that “STEM is more skills-oriented that other fields,” valuing short-lived competencies over durable wisdom. For each skill a STEM professional learns, another becomes obsolete, leaving little chance for accumulating skills and increasing salary.
Although starting salaries in tech are famously high, their advantage compared to other fields is halved in the first decade of employment. “This is something most economists just don’t know,” Noray says. A 2017 report from Hired.com found that salary offers were actually lower for tech workers over 50 than for younger ones. Therefore, many STEM workers switch to professions that change more slowly in search of sustained salary growth. At the age of 24, 89 percent of STEM majors have STEM jobs, but at 35 years old, the number declines to 71 percent and continues to fall thereafter.
One way coders can get off the skills treadmill but stay in the industry is by becoming managers. A 54-year-old engineer in Massachusetts tells me, “My company has an obvious track for new people: They come in as developers and move up the chain into management.”
But management is not right for everyone. Sue LoVerso, a 54-year-old senior staff engineer at MongoDB, told me, “There are personality characteristics that managers need, but I’m an introvert, and solving technical problems is what interests me.” A 63-year-old Google engineer says his brief time as a manager was uncomfortable: “I knew I could rely on myself to do a job, but I couldn’t figure out how to rely on other people.”
As an alternative to the management track, Google, Microsoft, and other large companies define an “individual contributor (IC) track,” a ladder of job titles for senior engineers that rises in parallel to the management ladder. The IC track lets engineers climb a seniority ladder without forsaking the craft they love.
But the IC track is flawed. The programmers I spoke with said that promotion is slower on the IC track, and the distinctions between titles are blurry. According to David Golden, a 45-year-old engineer at MongoDB, “In the development-only track, there’s a bigger hurdle for me to move to the next level. It’s not clear how you get from one to the other and whether it’s something you can actually do anything about.”
Based on interviews with a half-dozen programmers, it is clear to me that companies should create a qualitatively different role for their most senior individual contributors. Candidates for such roles would be judged by their past effectiveness, the same as managers are, not by a fast-churning checklist of skills. Greater clarity would mean engineers could climb the ladder faster, and the prestige and renewed intellectual challenge of each level would keep programmers motivated into their fifties and sixties.
Proven engineers who occupy the most senior roles should be deployed to solve the hardest problems on the most critical projects. Their roles should emphasize technical leadership through writing, speaking, and mentoring.
Because of their deep knowledge and broad experience, older programmers are able to translate their knowledge into ordinary terms, which puts them in a position to act as ambassadors to the nonprogramming world. Ari Blenkhorn filled this role when she led a cloth simulation project at the special effects studio Industrial Light and Magic. “Yoda’s robe, Harry Potter’s Quidditch cloak, the Dementors’ robes—all of that was the software that I helped develop,” she says. “I needed to speak the language of both the physics simulation research team and the animation team. They don’t think about partial differential equations. They think about cloth that’s silky and stretchy and ripples in the wind.”
I am fortunate: My company responded to my midcareer ennui with empathy and has allowed me to embark on a journey of professional exploration. This year, I am rotating among three teams for a few months each to decide what I want to be when I grow up.
Other companies might not be so generous. I especially worry for older women and people of color in the industry, who are subject to combined biases. Companies must define meaningful levels for programmers advancing on the IC track. Meanwhile, programmers should be more proactive, organizing and pressuring companies to combat age bias. Unions can standardize salaries and protect senior employees from layoffs; doing so would also likely narrow racial and gender wage gaps.
Making the software industry more welcoming to coders past their thirties and creating roles suited for very experienced programmers will make companies more effective and more fair. These changes will also benefit the rest of us — in a society increasingly governed by software and algorithms, programmers must gain some wisdom to match their power. They must learn from recent incidents of hacking, biased algorithms, and online incitement of genocide. The only way to do that is for older coders to stay in the industry long enough to pass their knowledge to their successors. Cultivating lifelong coders will ensure that the lessons learned today are still remembered 50 years from now.