What do you think about hiring, tech leads? (No. 52)

This week we're going to dive into a topic I've been avoiding--hiring

Hey tech leads,

It’s a new week, and a new topic—hiring. I haven’t talked about hiring at all in all my tech lead writings and various broadcasts, so far. 

I’ve been reluctant to get into it because it’s such a huge topic. There is so much out there already. So many books. Medium posts. Companies have departments focused on it. There are armies of recruiters doing it. There’s a cottage industry of consultants focused on it. It is a huge topic, kind of like tech leadership, but it’s one I haven’t really felt like I have a particularly unique point of view on.


Today’s letter is free! 👍

Get on the list to get all the emails in this week’s topics and other series!


However, it did cross my mind that, as tech leads or engineering managers, that you are looking to me to provide some workable guidance—some clarity, certainty, and confidence—about how to be effective in your role. And so, I think I’m letting you down by not giving you something that is at least useful and actionable about hiring.

And besides, when I started researching the topic, I noticed that it suffers from a lot of the same problems as Googling for “tech lead”: millions of hits but very little actionable insight. The articles, podcasts, posts, and blogs are all over the place. They contradict each other. They’re too high level or too low level. Most of the stuff may or may not have anything to do with your role or company. Should you really do the hard-core Google/Silicon Valley style hiring? What questions should you be asking? What should you be looking for? 

Let’s talk about hiring this week!

This week we’re going to think about some of the dimensions of this thing called hiring. Our goal at the end of the week is to have some kind of working model we can use as tech leads that’s more useful than all that haphazard “guidance,” or the dry training you might get at your company.

Of course, there’s a big limit to what we can accomplish in one week.

Don’t expect a robust, production grade model for hiring that’s going to settle the hiring processes for all time! My goal is far more modest: I’m hoping to draw some early contours of that we can evolve over the months and years to follow. Hopefully it will be helpful to you, even if the model we come up with is sketchy.

Let’s step back: what is hiring anyway?

For the fun of it, let’s just talk at a high, abstract level of what hiring is and what your role as a tech lead is. This is kind of obvious, but let’s walk through it. Why do we hire? 

Software engineering teams typically hire when they have 

  1. more work than they can handle with the existing team or need to get features done more quickly or 

  2. need some kind of specialized skill on the team, like someone with more experience and leadership, a specific skillset like React, or even a tech lead.

Duh.

Teams are immutable

But let’s abstract it a bit and think about a different context. Imagine you’re leading a soccer team, and you need to add more team members — forget about the rules about number of players or positions. First, your team already has a dynamic, a way of working, a culture. As the coach, you’ve been working on the team culture for a long time. It’s immutable in its current configuration.

When you add another player, the team will never be quite the same. The new person will change the dynamic. 

And there are implications for the new person. We’ve all been one at one point or another. It takes a moment to adapt the team and (a) fit into the other personalities, and (b) match whatever the team’s performance expectations are. Of course, you bring your own skills, experience, culture, personality, but those are going to be influenced by the other personalities and team’s expectations. 

In other words, hiring and joining teams is a really interesting human dynamic.

Focus first on team roles, responsibilities, and expectations

When we’re busy, we’re not focusing on these abstractions. 

Indeed, the hiring process is often thought of as acquiring resources or people to assign to roles to accomplish certain needs. This is a fact of life, and it’s why we hire people. We hire people in business because we want to turn a profit. Even in a non-profit, we need to accomplish an outcome. Returning to our prior example, we put a goalie on the soccer team to protect the net. Fullbacks fill a role. Senior engineers fill other roles. Tech leads fill a different role.

Thus, as a tech lead, the most foundational part of interviewing and hiring is thinking hard about whether the candidate you’re reviewing can fill the role. Can they do the job you need them to do? 

Likewise, for the person involved (the candidate), they should also have the opportunity to have a really strong understanding of the expectations. That way they

  1. know whether they can rise to meet the expectations and

  2. have a chance to demonstrate during the hiring process—to both show off and test themselves.

Too often the interview process seems to disconnect the interview process from those bullet points on the job description and the expectations, which is frustrating for everyone.

But generally, I think of these roles as minimal expectations. All they typically do is announce that “I’ll do this; you’ll do that.” If you get this right, at least you should have a functioning team. But it doesn’t do anything to guarantee high performance.

Hiring beyond roles and responsibilities

Once you’ve satisfied yourself on the basic role-based inquiry, which is critical, I think your more important role as a tech lead participating in an interview is thinking hard about how well this person is going to fit into the team.

Are they going to excel and be engaged based on your understanding of the team (note this requires you to have a strong understanding of your team’s culture). Will the team be stronger with this person?

If you paid attention to what I wrote earlier, then you’ll know that the hiring process is going to change your team. So of course, the other part of the hiring process is to try to figure out how the team will be different, and hopefully better, if you add this person. Of course, you can’t know with 100% certainty during the interview process how things will be weeks or years from now, but I’m 99% sure your current interview questions aren’t calculated to figure this out. 


The Podcast 🎧

To prepare for today’s issue, I recorded a few ideas after a long drive through the desert with kids—not my best work! Click here to listen anyway!


Thanks for reading! ❤️

Have a nice weekend tech leads!

If you enjoyed today’s email blast, share with a friend. Your friend can subscribe too!


For more-