Thoughts on the Technical Track
December 9th, 2014
I saw lizTheDeveloper's post about technical leadership at Simple and I realized that I've been meaning to write about this for a while. I hope to persuade you that there are a number of systemic biases working against a healthy technical career path. I don't think that they're insurmountable, and I don't disagree with Liz's post. But I've never heard of a company clearing all of these hurdles at once.
I was the first person at Etsy with the title of "Principal Engineer," which was the technical equivalent to a directorship (i.e., one level below CTO). I'm not saying this to toot my own horn, but rather so that it's understood that the following comes from someone that was the beneficiary of an existing system.
(Incidentally, I think Etsy is an example of a company whose heart is in the right place, and it's not my intention to single them out.)
To Review, Management is a Job
My views on the merits of having a technical track align with those of many people in our industry. Management is a different job, with different skills. They're not necessarily more difficult skills, they're just different. By and large they're unrelated to the day-to-day labor of the people who build technology products.
It doesn't make any sense to divert your technical talent into a discipline where they will need to stop doing technical work. (That's in the event that they intend to be effective managers, which I concede might be an unrealistic expectation.)
Other people have made this case, so I'll just proceed as if we agree that there must be a way forward for people that are great programmers other than to simply graduate into not programming at all.
Having that way forward is an ideal. There is always a gap between our ideals and reality, and we cannot act as though we've solved a problem simply by articulating it.
Management Just Happens
I have had management responsibility thrust upon me at least four times over the course of my career, and at no point has that been my goal. It just happens. Do you want to be a manager? I will now tell you the secret to becoming a manager in a growing company: just wait.
You have a manager. Eventually, your manager will accrue too many responsibilities, and they will freak out. They will need somebody to take over some of their reports, and that lucky warm body is you.
It is entirely plausible to become a manager accidentally. It might even be the norm.
Technical Track Promotions are Post-Hoc
The process for minting a new manager is: crap, we need another manager. There's no symmetrical forcing function pushing people into the upper ranks of technical leadership.
Mentorship and technical feedback are things everyone does on a functioning engineering team. A technical track "promotion" is merely additional recognition given to someone who is already performing that role notably well.
If the job is already getting done, then filling the job is clearly not a pressing need. Technical promotions are something that happen when it's convenient, which is generally never.
Between the founding of the United States and the end of the 19th century, it was considered tacky for presidential candidates to personally campaign for the job. Instead, they staged an elaborate farce in which they reluctantly answered the call of the nation to serve. Trying to intentionally get a promotion into the technical track is pretty much just like this.
Your work must be recognized, and this is the rub. Let me rephrase: "someone with the power to bestow promotions has to be your fan." To be promoted you have to be a good mentor, but you also have to worry about playing to an audience. That may be executives, or it may be your peers (and potential competitors). Regardless, you're running a weird campaign in which actually saying anything directly about wanting the job would be gauche.
The most qualified individual contributors may become known without ever really doing this on purpose, but that doesn't say much for this as a tenable career goal of the sort that can be counted on.
Society Applies to Idealistic Tech Companies, Too
American society is not a classless oasis. That's a lie we tell ourselves. And the person who knows what everyone else gets paid and can fire you is not in your class.
A technical job does not have equivalent prestige to a management position with an equivalent salary just because you say it does. Even if you conquer this within your own company, it's not true in the rest of the industry, and it's not true in the world at large. In the world our parents live in, it's a big deal to be somebody else's boss.
You're hiring people from the world at large all the time. Without continuous effort a technical track decays to its ground state, where the jobs are second class.
Halfhearted Managers are The Worst
The natural result of a system in which technical promotions can't be counted on and are viewed as suspiciously-maybe-second-class anyway is that people who don't really give a shit about management wind up going into management. Given the choice of waiting for a technical promotion that may never arrive and taking an offer to manage others, almost everyone is going to take the bird in the hand.
Managers that have no passion for management are a blight on society. I can say this because I have been one of them. I was never a good manager, and for that I apologize to anyone that ever had to report to me.
I am not an isolated case. Many people in management are frankly terrible at it. And they would rather have technical track jobs anyway, but they have no idea how to make the switch. A credible technical track is a great way to ensure a higher level of satisfaction and competency among the managers.
Ratios Observed in the Wild Make No Sense
You don't need to take my reasoning about the intrinsic pressure favoring management bloat at face value. You can actually look at the ratio of managers to technical employees at your company.
At one point, I was alone at my level. There were five theoretically-equivalent directors at the time. The ratio was at least that bad on the lower rungs. (I have no idea if this is still true at that company, and it might not be.)
For that to make sense, we'd have to believe a few things that don't stand up to scrutiny. First, we'd have to believe in a very high proclivity among engineers to manage, and I think that betrays our expectations. Not very many of us got into this business with the hope of not actually building things.
Second, we'd have to believe that although it took five directors to effectively manage the organization, only one technical leader was required to advise the same group on the details of the work they do every day.
Promotions Should Not Be Miraculous and Rare
Of course, it wouldn't make logical sense to say that the ratio of individual contributors to managers at a given level must be 1:1. I honestly don't know if 1:2 or 2:1 is closer to correct. The answer is probably contingent, and the relationship might not be linear.
But I think it's important for any company that takes the ideal of having a tenable technical track seriously to put a stake in the ground on this question. It's hard to build a credible technical track, and we need a baseline to grade ourselves against.
I don't think that proceeding with the assumption that leaders will just naturally emerge produces the best results. Adding a self-imposed quota achieves accountability. It acknowledges the possibility that problems can lie in the system of recognition, and not only in the talents of the people in the pool for promotions.
"Do we think that we hire smart people here? Yes? Then we should be able to find N of them worthy of promotion for every manager. If we can't then the problem is most likely to be found in how we're recognizing people for their work."
I know that the word "quota" is verboten for many, and I gleefully await your flames.
Address Prestige with Superpowers
If we think about why managers and technical employees on even salary footing may be perceived to not truly be equals, it comes down to superpowers. The managers have special capabilities that the technical employees don't: hiring, firing, compensation, and the like. Is it possible to give technical employees a different set of superpowers, to address the prestige problem?
Maybe. I don't think that I have seen this done correctly yet. If I had superpowers, they were:
- The ability to work on whatever I wanted.
- The ability to talk to anyone I wanted.
These were indeed powerful, but using them to create positive action was difficult. It would have been easy for me to opt out of projects that I didn't believe in and to do my own thing. I did often do my own thing. But I also worked on projects that I didn't believe in, because I knew that opting out was a selfish act. One of my friends would just be forced to work on it in my place, and sometimes leadership is about jumping on grenades.
Talking to other teams made it possible for me to point out places where resources weren't intelligently allocated. But this also begat mostly negative actions. "Hey, this isn't the best way to use these folks," I'd find myself saying all the time. It was draining, and a bummer.
Giving the technical leadership deeper involvement in the planning process could address this. Of course that would involve dragging the technical leadership to meetings, which I admit is tricky.
I hope I've demonstrated that creating a career path outside of management for technical employees is only the beginning of your problems. It's a good and necessary step, but it's not an achievement by itself.
I'd love to hear from anyone with better ideas. These issues are difficult and I don't claim to have all of the right answers.