You’re hiring your next developer. Before you make an offer, you want to be sure they’re as good as they say they are. You can’t just share your current codebase and ask them to commit a change. Then what?
This is the third of a series talking about interviewing and hiring. Read the first two episodes here:
Previously in this series:
Permanent Hire or Contractor: Assess or not?
Are you hiring an employee or a contractor? In my opinion, this makes a huge difference. Contractor agreements usually come with a 30-day termination clause, and they have a shorter duration than employee contracts. Plus, I expect contractors to be effective from the day 1. When hiring employees, I focus more on their talent and future potential.
Here’s a couple of options:
Skill Assessment
When hiring an employee, you’re looking for a long-term addition to your team. The interview should already have validated their past work, their attitude, and their ambition, giving you a view of their potential. If you really still insist on testing their skills, there are three options.Skill Assessment tool - there are quite few assessment tools for developers out there. They’re quite generic and will give you a view if a developer masters a certain language or not. It certainly won’t tell you if a developer is ready for your application or environment. Plus, these tools are not cheap at all.
Programming Assignment - give them an assignment tailored to your environment. You’ll get a much better view of the type of code they deliver. Unfortunately, it also means they can ask someone else to help them or complete the task. This happens more often than you’d think.
Pair Programming - give them the assignment, but let them do it online, screen-sharing with one of your existing developers. You’ll get to know them a lot better, see how they attack and solve problems, as well as how they communicate.
Keep in mind, the goal isn’t just to assess their technical skills, but also how they analyze a problem, what happens when they get stuck, as well as how they communicate and collaborate. Pair programming is the largest investment in time and effort from your side, but you’ll certainly get the best view of the candidate.
For contractors, you’re hiring for a very specific project or task. If you’re going to use any kind of skill assessment, and you’re hiring developer contractors more often, I’d recommend using a standardized assessment tool.Reference Calls
My favorite. Ask your candidate if someone they’ve worked for recently is willing to take a reference call. A 30-minute call with someone they’ve worked for will give you so much information. How was their speed? Did they need to work with a lead developer, or were they independent? Did they create from scratch or only build fixes and enhancements? How did they behave when they got stuck? What if they screwed up a delivery? How did they compare to others? How did they collaborate?Trial Period
With contractors, I usually include a first month trial period where I can cancel daily. If they were truthful in their interview, you’ll know in the first week you work with them. You’ll see how quickly they’re up and running and get to first code. You’ll see that code. No assessment beats actual work. If they’re not performing, you can let them go immediately. From the ten developers I’ve hired this year (interviews only), we’ve only had to let one go.
Here’s a message I received this morning, after 3 days of work: “We started on the first work item on our backlog. So far, so good. She’s quick to understand and quick to answer. I’ve seen her code and it looks good.”
When interviewing a developer, go in depth on their last project. Ask them how they worked, how their collaboration was, the type of developer role they had and more. There’s so much you can learn from asking questions.
Recap
When hiring an employee, you’re hiring for the future. Focus on their talent, their ambition, their communication and collaboration skills. If you need to do a test, go for a pair programming assignment. And certainly have a reference call!
When hiring a contractor, ask as much as possible in the interview. If you insist on a test, use a standardized assessment tool. Or, have reference call. Most important, include a trial period in the contract - and assess their work in the first week. You’ll know how they work after you give them their first assignment and see their first commits come back.
Now that we’ve covered hiring, in my next story, I’m going into onboarding. If you haven’t already, subscribe below to receive it!