Leading a technology team is a significant responsibility. Having great engineers makes all the difference. While not the only key to success, without them you’re certainly toast. Companies that launch without great hackers who can create something that works quickly will find themselves out of runway before there’s a product anyone actually wants to use.
Later on, a company getting traction can be crushed by its own success if it doesn’t employ solid architects and engineers who pay off technical debt before it accumulates, and turn that product into something that can scale. No matter the stage, hiring and keeping great engineering talent will largely determine whether you win or lose.
GreatCall has spent quite some time thinking about how to build and keep a great team. Some of our experiments succeeded. Some failed. After reflecting on both, it’s clear that the most successful strategy is to structure and lead a team in a way that you, personally, would be happy to be part of in any role.
Here are some proven tactics from my team at GreatCall for getting and retaining talent.
Spend Time to Find the Right People
We spend a lot of time with our recruiters. In hot markets like San Diego you have to recruit people who already have a job. The barrier to switching jobs is high, and you’re only going to convince someone to take the risk if it’s a great fit. Make sure your recruiter knows how to sell your position, and knows exactly what you’re looking for.
You have to set the bar high for letting people on your team. That meansyour best people interview and are part of the hiring decisions, even though it takes them away from their regular work. A players hire A players, and B players hire C players (not sure who originated this quote, but it is generally true). It’s not just technical skills that matter. You have to make sure new hires have the right work ethic and fit into your team culture. Bad hires affect the whole team.
Keep Good People
Continuity of knowledge is critical in a growing company, so retention is key.
Some people are motivated by purpose. It really helps if your company does something that most people would consider a good thing. If it doesn’t, come up with a good story. If you can’t come up with a compelling story, you should really question why you or anyone else is working there.
Engineers are often motivated by technology itself, so use the latest frameworks, offer variety, and let them be part of choosing their toolset. Also, remove unnecessary technical obstacles by automating as much as possible. Nothing is more frustrating to a developer than doing something manually over and over again; just goes against a developer’s nature!
Giving people a choice of work also goes a long way. There is a practical middle path between just telling people what to do and all-out anarchy (like the notorious Valve example). Occasionally let people give their 1st, 2nd, 3rd preference for the next project. You still decide what the options are, and ultimately which projects everyone works on, but in our experience most team members end up with their first or second choice -- and they feel pretty good about that.
It seems obvious, but too many people don’t do it often enough. It must be genuine and thoughtful to be effective. Instead of just saying “good job,” point out aspects of the way the job was done well. Let team members see and decide for themselves the work was praiseworthy; it’s much more powerful.
Let people focus and finish the job. Technology teams are always the victim of new priorities; there’s always too much work to be done. You have to manage the complexity, and give as many of your team members the bliss of working on one thing, without interruptions or roadblocks, until they’re done.
Get poor performers out
Nobody likes dealing with poor performers, and every leader hates getting rid of a team member. Deal with it. If you don’t, your entire team will suffer. Good performers on your team will start resenting the poor performers, and eventually you, for not handling it. It’s toxic. Be clear about your expectations with poor performers, and help them figure out a path to meeting them. If you do that genuinely, and they still cannot meet expectations, more often than not they themselves will look for another company, where they are a better fit.
In our experience, the team members who commit to doing what it takes to meet expectations, almost always improve their performance and stay on the team. But you have to be clear -- and increasingly formal about it -- otherwise they continue their poor performance.
These are just a few of the things that have helped us build a great team at GreatCall. While no one can guarantee a path to success, or claim that this is the only one, our leadership team have found out (sometimes the hard way), that focusing on these key points works for us. It’s likely they will work for you, too.