Perhaps the most common and vexing problem that many technology companies face today is finding good developers. I have worked with a variety of companies over time, some of which have been more successful than others in the war for coding talent. I’ve also gotten great input from Lucas Nelson, my colleague at Gotham Ventures and himself an accomplished developer. Here are a few of the strategies and attributes of the more effective companies:
- Hire great developers. This statement may seem like an infinite loop, but it’s true. The most successful tech talent recruiting companies are those who already have good talent in-house, even if they are a start-up with one developer. Good developers want to work with other gifted programmers, and less experienced team members want to learn from the best.
- Start at the top. This observation is a corollary to #1. If one of the most important factors in hiring good developers is having good developers, then the first member of the development team you hire is critical. Take the time when starting a company to find the right technical co-founder if you are not that person. This should be someone who has led team(s) of developers before – developers who will follow him or her to the next company. Luring this person is not easy, as anyone that fits this bill is probably very gainfully employed. S/he will only leave for a great vision and significant opportunity for impact and personal upside. If you are struggling to expand your development team early in the life of your company, consider bringing in a new, senior member of the team. It is very difficult to do so, but well worth it. Again, great people want to work with other great people.
- Do something interesting. Most people want to work on something that interests, challenges, excites them. Most developers are no different, and, in my experience, many are motivated by the intrinsic nature of their work even more than are people in other functions. The most attractive companies are therefore those doing interesting things from a technology perspective. They are truly innovating, not just making another website or app. For those companies that are pursuing a more pedestrian product path, if at all possible, use newer programming languages, databases, and/or development environments.
- Get the word out. Tell the world what’s interesting about the technology your company is developing. Write a blog that includes your big thoughts on your product category – demonstrate thought leadership. Host hackathons. Host and attend Meetups. Host regular happy hours and encourage your employees to bring friends from outside the company.
- Make recruiting everyone’s job. All the stakeholders for your company (employees, investors, advisers, probably even customers) should know what positions are open. Provide incentives for employees to refer candidates, both in the form of recognition and cash (in the event that a referral leads to a hire and the new employee stays for, say, a year). Don’t be afraid to be generous on the cash compensation. Remember, in many cases, the alternative channel might be a recruiter who could charge a third of the new hire’s salary for its services.
- Develop a pipeline. As you scale your development team, build relationships with nearby university computer science and math departments. If you are doing 1-5, you should have employees who can help you do this. Encourage visits and internships by students.
- Cover your bases. You probably already tried job boards. Just make sure you are focused on active, developer-specific job boards like GitHub. LinkedIn is also great, particularly for senior talent. Also for senior people, don’t hesitate to pay a good recruiter if you are not meeting with success in a reasonable time frame. They can be expensive, but can also be worthwhile.