Whenever you need a software developer, you’ll surely want to make sure the developer you hire is not only great at what he does, but trustworthy as well. Note that it can be a bit tricky to separate the truly good developers from the slackers and you’ll really need to be skilled at hiring people with real talent. You will need not only intuition, but also technical acumen, social networking skills, and process management. Difficult as it may be to find them, good developers are out there; you simply need to know where to look and how to find them.
It can be especially difficult to find a good developer if you are running a start-up business because not many developers who know that they’re good at what they do are willing to work at a start-up. You will have to find truly creative ways of convincing him/her that a career with your company is the right path for him/her to take. You have to develop in them the same kind of passion that you have for your business. You have to convince them that starting a career with your company could very well be the big break they’ve been waiting for.
Another challenge you have to face is that of evaluating the skills and qualities of each candidate you are considering. It can be quite difficult to gauge how innovative and creative a person is. It can also be a bit difficult to determine whether a candidate is a team player or not. How do you know that the person is professional enough to properly handle constructive criticism? How do you know that a candidate has the kind of character and personality you are looking for? How do you know a candidate is the right fit for your company?
How to Find a Top-notch Developer
Here are a few tips on how you can locate a good software developer without having too much difficulty:
1. Check Open Source Projects
Most developers have projects that can be found on such sites as github.com or sourceforge.net. If you see one of your prospects with projects on such sites, check the project and understand it. Try to determine how much time and effort the developer put into that project. Does it look like it was hurriedly completed over a single weekend? Does it look as if the developer dedicated an entire year on the project but failed to prepare documentation for it? If you have a developer friend, you may want to ask him for his own assessment.
2. Conduct a Technical Interview
Hiring a software developer without conducting a technical interview is akin to renting the first apartment you come across without checking if it fits your specific requirements. You might end up having to deal with endless problems such as leaking pipes and the presence of rodents. The best way you can differentiate one developer’s experience from another is by have them go through a technical interview where you ask them to write some code. If they balk at doing a technical interview, he probably isn’t the developer you’re looking for.
3. Be on the Lookout for Those Who Break the Mold
You will know that a developer is top-notch when he breaks the mold that shapes the typical 9-to-5 employee. For example, a developer doesn’t have to be a university graduate for him to be good at what he does. If he didn’t finish his formal education, it is often a good idea to look into why. What if the candidate dropped out in his junior year because he was already working on his own projects at the time? He just might have the kind of passion for his craft that you want in a developer.
4. Observe the Developer’s Work Style
A developer’s personal work style largely determines how that developer will function when working on a team project. Ask about how they handled team projects in the past. Their answer should tell you if they work well with others and if they’re honest enough to acknowledge their own strengths and weaknesses. If any of the candidates provides you with stock answers such as, “We divided the work equally among us,” remove them from your short list; they probably aren’t dedicated or creative enough for you.
5. Look for a Broad Language Set
Let’s say one candidate you are screening turns out to be a top-notch C++ developer and another turns out to be a mediocre Java programmer. Which one should you pick? You’d do well to go for the C++ developer. He may not currently be familiar with Java, but anyone who does great at what he currently does has great potential to learn and do well in other things as well. In the same way, a person who is no good at what he currently does probably won’t be any good for what you need him to do as well. Note as well that ace developers tend to learn new language very quickly.
How to Attract a Top-notch Developer
As mentioned earlier, you will have to convince an ace developer that working with you is an excellent career move for his part. Here are a few tips on how to go about this challenging task:
1. Ditch Tradition
If you plan to innovate the tech world with your business, then you may want to start by innovating your recruitment process. Don’t go through the usual employee hiring process. Be creative. Let’s say there’s a popular thought leader or industry influencer who’s coming out with a new publication. Head out to the bookstore the minute the publication is released and then insert your job advertisement within the pages. Whenever a software enthusiast picks up a copy of the publication, your ad will literally fall in front of him. Of course, you have to make sure the ad itself is creatively made.
2. Think of Being a Start-up as an Advantage
If you’re already thinking that being a start-up makes it impossible for you to find a truly gifted developer, then you’ve already lost. Instead of adopting such a defeatist mindset, you’d be better off thinking of your start-up status as a huge advantage! Remember that Google started out as a garage start-up; those who were with the project from the start are likely the most successful members of the team today. When you think of your project as the next big thing to hit the web, it’ll be much easier to convince top-caliber people to join you.
3. Hint at Your Vision
Since you’ve chosen to start a business in technology, you’re most likely planning something fresh, unique, and creative to do with tech. This is the kind of “something special” many passionate developers will be willing to work on. In fact, this could be something a top-notch developer will be excited to work on. Any project that presents them with the opportunity to invent something new is sure to catch their attention.
4. Find Their Digital Dwelling Places
You probably already know that software developers spend much of their time online, but do you know exactly where? Find out which specific sites they frequent and start engaging on those sites as well. The opportunities you have to offer needs to be seen by the right people, which is why you need to be where those people are!
5. Reach Out
Those who are great at what they do know they’re great. They aren’t likely to be actively seeking work because they probably have at least a couple of projects lined up all the time. It is your job to go out and find them, and then reach out to them. Think of them as ripe apples. They won’t just fall into the palm of your hand; you’ll have to pluck them from the tree.
Some of the best places for you to find top-notch technical talent are conferences, blogs, technical postings, and open source code contributors. Technical talents typically converge at technical conferences, so it would definitely be a good idea for you to attend some. Even if you don’t find a developer who can work with you, you just might meet someone who can recommend a highly-qualified candidate.
Technical posts and blogs, for their part, can be an excellent source of insight regarding a developer’s style, technical acumen, writing skills, and manner of approaching problems. These insights will help you determine whether you should offer the job to a particular developer or not. And as mentioned earlier, open source projects allows you to check developer’s projects and evaluate their code samples, which will help you decide whether to reach out or not.
If you’re pressed for time or on a tight budget, it can indeed be very difficult to find an excellent software developer; we can understand the stress you will likely feel. By using the above tips as a guide, it should be much easier to find someone who is not only very talented, but also shares your vision, your passion, and your work ethics. Good luck!