This past weekend several of the developers Phase2 has in the southeast went to a great Drupalcamp Atlanta. One of the most interesting sessions for me was one that was a little out of my normal conference track, the panel on building a better Drupal agency. It was interesting to hear the questions of small agencies and even solo shops trying to figure out how to put together a sustainable business and solve problems for their clients.
One of the questions that came up was about ways to attract and retain developers and in addition to the great responses from the owner’s side that the panel was able to provide I thought I would chime in with some thoughts from the developer side. Since the question is in two parts I'll tackle them separately.
How to find developers
First, I'd suggest starting long before you think you're ready to hire as this process takes time. There are benefits other than just finding the right developer for your business though so it's worth it. The more you approach this as an education and sharing process and not as a hiring process the better. The best way for a small business to find a good developer is to hang out where developers in your area congregate. Find out about meetups in your area for the technology your business uses. Ask the developers there about their current projects and eventually sign up to show off something you've been able to do with the technology to solve problems for your customers that you think is interesting.
It won't take long to get tuned in to what certain developers like to work on and for them to know the type of work you do. When you are eventually ready to hire, you'll already have an idea about which developers are a good fit for your business and which ones aren't. You will also have the perfect starting point to let people know you are interested in hiring and they can spread the word to other developers they know if they think they would be interested. I know I pass along info regularly to people I've worked with in the past if I feel like they'd be a good fit.
Once you've found that perfect fit then the matter turns to keeping the developer. There are hundreds of strategies out there for compensation, motivation and retention. The most important thing will be to tailor all of that advice to each individual developer you have. Here are a few things I feel like Phase2 is always asking to keep making sure it's a great place to work:
- Are the projects we're taking on pushing developers to learn new skills
- Do we have projects with intangible benefits (for a cause we believe in, great clients to work with, etc)
- How does the balance between crunch time and a slower pace look
- Is compensation correct given their skills, contribution and the market
- Does the developer have the equipment, knowledge and authority to get their job done
- Are we working on things that can provide a lasting contribution in addition to the work our clients need done
- Are there any "little things" that we could do that would be meaningful (lunches, conferences, snacks, equipment, etc.)
At the end I think most people, developers included, want to feel like they know what they need to in order to do a good job, have the authority and ability to do it and are fairly treated. There are a lot of ways to make that happen and reflecting on where your business is at periodically will go a long way towards ensuring you make it happen.