I wonder how much ageism is due to the fact that basic coding skills can really atrophy in senior developers who quit writing code years ago and are full-time architects/managers.
I’ve interviewed more than a handful of highly accomplished people with decades of experience as developers and then engineering managers who couldn’t answer extremely basic coding questions (I’m not talking about Leetcode-esque BS, I mean stuff closer to FizzBuzz). Places that are looking to hire senior developers who are actually still proficient coders will of course pass on those people, which can lead to a self-perpetuating cycle of ageism.
I have no doubt that when these people were actually still coding, they could have answered my questions in their sleep. Quitting coding for engineering management really does one a disservice IMO. I’ve also had the pleasure of working with people with decades of experience who never quit coding even as senior managers and their level of competence and productivity is astounding.
Charity Majors wrote a couple of blog posts on the subject that I’ve tried to bring in to my workplace with varying levels of success. But still I’ve had colleagues express surprise that as an engineering manager I still wanted to get my hands dirty with the code of the systems I own.
Do EM's own systems? Or do they own the teams that own the systems? It's a pretty vague role. We had an EM for about a year, but when he left we didn't replace him. Nothing much changed.
Depends on the team I guess, but if I’m going to be responsible for the quality of the technical implementation then I’m definitely going to understand the implementation, and have input on the choices behind that (even if I will defer to the engineers for most of them).
It’s baffling to me that managers are given coding screens. As an IC I really don’t want to deal with a manager’s half thought out PR’s slapped together in between meetings.
Perhaps some shops give a light meeting load. But “manager code” has a stigma for a reason.
I think there are way more companies than you think that give manager-level devs a light enough management load that they are able to (and are expected to) write extremely high quality code (indeed, some of the highest quality code in the whole company). They are also expected to carefully review code written by their subordinates.
When hiring, these people are given coding tests just as a pulse check to make sure they can actually code, since so many manager-level devs have apparently lost that ability.
I think there is a disconnect between manager-level devs who expect a glorified project manager position with zero coding requirements (and are thus insulted and shocked and assume it’s ageism when they’re given coding tests they cannot pass) and companies that expect their principals to hack on code until retirement. And while blatant ageism is clearly a problem in the industry, I’d bet that at least some of it stems from this disconnect.
A lot of managers go back to being ICs because they don’t get enough time to code. Also, spending too much time in people management can set your career back as switching jobs is much harder (its easier to switch jobs as a senior SWE than a senior manager since people management cultures change a lot between companies). At some point, people managers specialize beyond coding into something else other than a SWE…they are no longer acting also as tech leads.
IMHO management should fix at least one bug per annum. I've suffered way too many management types who fold to business pressures which result in friction to development volition. I feel like if they maintained a small level of experience in dev they wouldn't fold so easy.
I've had similar experiences interviewing candidates, but it's been across the age range. I've never interviewed anyone who has forgotten how to code, but I have interviewed a lot of people who never learned in the first place.
If this is the case, then it would only compound the problem. Early 20s and never actually learned to code? If you stumble through the interview, a company might still take a chance on you, attributing your apparent lack of coding ability to being junior. 40+ and never learned to code, yet “fell upwards” into a management role that doesn’t require any actual technical skills? Good luck getting hired anywhere else; when your lack of actual skills becomes apparent during the interview, it will not be charitably brushed aside.
i agree with your point and it is why I have resisted becoming a manager at my current role at a FAANG.
I was previously a manager for my team at my previous company. However I got to both manage, and continue developing.
After switching companies, I've been offered management positions multiple times. However the reality is that at a FAANG, you rarely see managers who get time on the box anymore.
I know a lot of managers who are happy to not split the time between management and dev work, and power to them. However I don't want to risk the atrophy of skills.
When I interviewed here, the biggest concern most people had in my interview panel was "you've been managing. Can you still dev in a non management role?"
Frankly that's how a lot of the industry is. Managers don't get the time to dev. Many like that aspect, but if you're planning to leave, well good luck because you won't be able to hold your own against the people you managed when vying for a non managerial role.
I've seen decided my best path is to be an individual contributor who has more weight. Effectively a lead (currently) or principal dev. It's the closest I can get to both ends of the spectrum.
Management is a different career path though and coding is not one of the skills they require even for software management jobs. The problem is really more applicable to senior technical roles like tech leads, architects, where it is actually reasonable to expect them to be able to code.
The problem is that it's not really treated as a different career path by many people.
Lots of people leave management roles and try and apply for IC roles at other companies. It's also really difficult to go from management at one company to management at another for many people.
The 'I can't code architects' is definitely a common thing, but I suggest it's kind of a different problem.
But for dudes that are coding though, it's cool to see how 'I have solved this problem 100 times already' comes through in solving a problem sometimes.
I have no doubt that when these people were actually still coding, they could have answered my questions in their sleep. Quitting coding for engineering management really does one a disservice IMO. I’ve also had the pleasure of working with people with decades of experience who never quit coding even as senior managers and their level of competence and productivity is astounding.