Berlin

November 4 & 5, 2024

New York

September 4 & 5, 2024

Scaling engineering in tough times

Overcoming the challenges of growing your team
August 19, 2021

Before we begin, let’s make one thing clear: if you are fortunate enough to be scaling your engineering team, things could be a lot worse. So tough times are relative. In fact, being able to grow your team is far and away the most positive sign you could have wished for, so what could possibly be tough about it? The answer is: lots! Let’s look at a few challenges.

Scaling fast enough

Hiring is not hard. Hiring good people is hard. It takes time and effort from you and your team. You must be committed to taking time away from writing code and doing other critical things, and resist the urge to just put butts in seats, giving the illusion of progress. Keep in mind that the decisions you make today are going to stay with you for years to come. Hiring fast is almost never the right choice over hiring well.

One way to hire quality people quickly is through acquisition. You get a team that knows how to work together. You likely have a pretty good idea of the kind of work they can do, based on the company’s products. Depending on your circumstances, integrating an entire team may even be easier, if there is a well defined project you can put them on.

We did this effectively when I was at Yahoo!, where we grew the mobile and emerging products group from next to nothing to more than 350 engineers in just a couple of years. The quality was quite high, and the teams were motivated and productive.

Pluralsight advert

Keeping quality high

It’s easy to say you want to hire only the best. It’s a lot harder in practice. If you’re having trouble landing top-quality candidates, the first step is to understand where the problem lies. Do you have a sourcing problem with not enough high-calibre candidates coming through the  door? Do you have a definition problem, where you and the team are not crystal clear on what you’re looking for? This is more common than you might think. Do you have a closing problem, where you make an offer to a prospective candidate but are unable to close the deal? If that’s the case, is it a compensation problem? A company viability problem? Is the work not challenging enough? There could be many reasons. Be systematic about how you analyze the pipeline and where your bottlenecks are.

Another important tool for ensuring quality is high is to inject some independent judgment into the hiring process. This is usually an external committee or member of the interview team outside the hiring group. Their purpose is to help avoid groupthink or making hires out of expedience, rather than for quality. Amazon adds at least one ‘bar raiser’ to each interview team for this purpose. Other companies have hiring committees that have to approve the decision. However you do it, find a way to keep you and your team focused on quality and not succumb to the pressure to hire quickly.

Integrating new hires

If you manage to hire good people, you are not done by a long stretch. Good people who are not brought up to speed, integrated with the rest of your team, and therefore able to contribute to the mission that prompted you to hire them in the first place are not just wasted time: they are a drag on the productive people you have on your team already. Have an onboarding plan for every single employee. Assign a new-hire buddy to answer questions and help people get up to speed. Make sure your team knows that helping to integrate new employees is part of their job. Regularly check in with new employees and their teammates. Investing in integration and training pays massive dividends down the road.

I’ve made the mistake of not focusing on new hire integration, and it was brutal. At Opsware, after severely downsizing and starting to grow again, we found only about a third of new engineers stayed with the company long term. The problem wasn’t bad hires; it was our lack of focus on getting people up to speed. The existing team had been through hell together and was very tightly knit, making it difficult for new employees to break in and be productive. Once we focused on integration, we found a much higher success rate.

Competing for hires

If you’re scaling, chances are that other people are too. Competition can be fierce. Large companies (think FAANG) have stability, great compensation and a choice of projects that can’t be beaten. And the benefits. Oh, the benefits! Startup companies have the fabled big payout, and the allure of getting in on the ground floor of something big.

All of these things have an impact, but keep in mind that by far the most important factors in most candidates’ hiring decisions are the hiring manager, the team, and the work. Presenting these things in the best possible light and having a compelling narrative to address other concerns is key.

Finally, don’t forget to qualify your candidates. At every startup I’ve launched, we’ve had a lot of ‘looky-loos’ who often go quite far down the process. These are engineers who have spent the last five or ten years at Google or another large company, and swear they are ready for startup life. Beware of such people! They rarely make the jump, deciding in the end to stay in their comfy spot.

Not enough candidates

A common problem is a lack of qualified candidates. If the top of the funnel is not full, the bottom is unlikely to yield the results you need. After you’ve exhausted your personal network, the network of your team, the network of your in-house recruiters, what do you do? Contract recruiting is one answer, but often ineffective or too expensive for individual engineers. Trolling LinkedIn and soliciting random resumes is akin to looking for the proverbial needle in a haystack.

I’ve found running value-add networking events to be an effective strategy. Line up some interesting speakers, invite a targeted group of candidates you’re interested in (regardless of whether they’ve expressed interest in you), and let the networking begin. Such events should be long on value to the engineers, short on selling your company. Anything more than a brief introduction is too much. Staff it with your engineering team. Serve good food. The selling will happen naturally. We did this effectively when I was in Facebook’s AI team, for example.

Other possible sources are companies like interviewing.io or Triplebyte. (Full disclosure: I am a small investor in interviewing.io.) They do anonymous technical interviews as a way of screening potential candidates. Results from interviewing.io show a dramatic decrease in hiring costs, because candidates come pre-qualified. It can be a great way to fill your pipeline with quality candidates.

Too many candidates

The opposite problem can also be crippling. Having a stack of resumes might seem like a good thing, but sifting through these to find qualified candidates is time-consuming and error prone. Resumes are often poor predictors of candidate quality, with the proxies that companies use to assess candidates (school, GPA, previous employers, etc.) often proving unreliable and outdated.

If you’ve read the book Moneyball: The Art of Winning an Unfair Game by Michael Lewis (or seen the excellent movie adaptation), you’ll know why I refer to this as the Moneyball problem. Companies tend to want to hire people from marquee schools or companies, or students with high GPAs. In baseball, the game has shifted from buying players to buying runs. In engineering, you need to make a similar shift. You’re not hiring schools or GPAs, you’re hiring quality code. Recent research by Google and others shows that these ‘vanity’ metrics do not strongly correlate with job performance.

So back to that stack of resumes – what can you use to winnow down the pile? I like to look for signs of scrappiness, curiosity, and passion; the person who got through school with an ok GPA, but worked full-time, or raised a family; the person whose work experience may not be impressive, but who has done amazing things on the side as a hobby; the diamond in the rough who has been toiling away, unappreciated, but doing brilliant work.

Conclusion

I’ll leave you where we started ​​– be grateful that you are scaling! It is the single biggest blessing you could have in an engineering team. If you and your team dedicate the time required to hire and integrate, analyze and make continuous improvements to your hiring process, and understand that closing candidates is a sales job, you will be well on your way to success. Happy hiring!

Pluralsight advert