PC Pro

DAVID NORTH

How do you hire high-quality programmer­s during a pandemic? And what lessons should we learn for the future? David shares his experience­s

- david@dnorth.net

How do you hire high-quality programmer­s during a pandemic? And what lessons should we learn for the future? Guest columnist David shares his experience­s.

Good help, as the cliché goes, is hard to find. That’ s always been so, but by March 2020 I thought I had figured out the challenge of finding new software developers for my team. We had a process: an initial phone call followed by a face-to-face interview. After that, our new hires were in the office with us, where getting them up to speed was a well-trodden path that we were practiced at walking. Then everything changed.

We were in the middle of recruiting a new developer as the UK went into the first lockdown, so there wasn’t much time to stop and think.

In common with all but the biggest companies, the majority of our new hires are sourced via recruiters. Although several recruiting firms we work with furloughed staff because of a general drop in activity, we experience­d no more than the usual difficulty in sourcing plausible candidates for interview. But, how to interview them?

Even at the worst points of the pandemic, travel and meetings for work purposes were still allowed. However, some candidates were shielding or had household members doing so – discrimina­ting against them by insisting on a face-to-face interview would have put us on dangerous ground ethically and legally, as well as restrictin­g the available talent. Even those who could have ventured out were understand­ably reluctant to do so during lockdown, and the same concerns applied to our staff carrying out the interviews.

We have done a handful of in-person interviews over the past year, but having to open the windows to achieve good ventilatio­n (regardless of how cold it is outside), and wearing masks, are not conducive to a pleasant experience for either side.

So we needed a new process. The first step could still be a phone call, but rather than faff about with arranging work phones for staff to use at home, we found it easier and cheaper to switch to video calls for both stages. (Don’t be tempted to use your personal phone for this sort of thing, though – the boundaries between home and work have been blurred enough over the past 18 months without risking your personal number ending up in the hands of candidates and recruiters.)

Our video calling platform of choice is Microsoft Teams, mostly because we already had Microsoft

365 subscripti­ons. Other than the somewhat ropey Linux and Mac clients, we’ve found it very reliable. Our practice is to send the URL for the Teams meeting out to the candidate (usually via the recruiter) in advance. Although some of the candidates installed the desktop Teams client beforehand, it works so well in a browser that we stopped asking people to do that. I can only recall one candidate among dozens having a problem connecting.

For those who find it easier to take a phone call, we have a handful of Business Voice licences for Teams, which allow the meeting organiser to dial in arbitrary phone numbers – so we just add the candidate’s mobile to a Teams call.

While we’ve all become more familiar with other people’s kitchens, living rooms and spare bedrooms over the past year, it helps to avoid distractio­ns in an interview situation. To this end, Teams has a “blur my background” feature that works well and is less of a distractio­n than the virtual background­s that Zoom made popular.

One side effect of the pandemic has been that the suspension of commuting for many has resulted in different (or longer) working hours. And while some candidates find it convenient to squeeze in an interview outside their normal working hours, we’re quite strict with ourselves about not scheduling interviews too far outside of the 9-5. They’re hard work and don’t deserve to be squeezed in at the end of a busy day when people are not at their best.

Second steps

So that largely solved our first interview problems. Now the tricky second album.

A large part of our second stage interview involved working through a couple of programmin­g problems with the candidate on a whiteboard. We’d been pondering changing this for a while anyway – particular­ly for more experience­d candidates, it would seem more realistic to use an actual computer.

We considered screen-sharing a full IDE, but it didn’t feel desirable to give candidates the ability to run arbitrary code on our laptops. We could have rustled up a machine, but in the end we paid for a subscripti­on to CoderPad ( coderpad.io). This

“CoderPad lets you replay the interview to see how the candidate made progress”

provides a choice of all the major programmin­g languages, and gives a shared environmen­t that candidates can access via a URL. They can write code and run it, with access to the standard library for the language, and all participan­ts can see what’s being typed.

CoderPad also lets you replay the interview afterwards to see how the candidate made progress. It even has a drawing mode – not as good as a whiteboard, but as good as any environmen­t where you have to draw with a mouse or trackpad.

We did find it useful and fair to drop a hint to candidates about the old process, though – “if the solution to this problem fits on a whiteboard, it can’t be very many lines of code”.

In face-to-face second interviews, we usually call in a colleague part way through if things are going well, to provide a second opinion on the candidate. When doing these over video, we have found it best to have two or more interviewe­rs from the start, so one person can handle the tech while the other is engaging with the candidate.

Debriefing with the rest of the interview panel after a call is in some ways easier than after an in-person interview: as long as you start a fresh call, there’s no risk of the candidate overhearin­g you. Not necessaril­y the case when in a ground-floor meeting room with the windows open.

Many of our candidates, like us, have multi-monitor setups. This does lead to one downside of video interviews: the camera is usually above one monitor (especially if it’s built into the laptop), and the temptation is to have the other parties on one monitor and the CoderPad session on the other. So you can end up with the candidate not looking at you for three quarters of the time.

This can usually be solved by tiling the people and the code side by side on one monitor (if it’s big enough), but it’s a minor point as long as you understand what’s happening.

Hired or fired?

So, after some trial and error, that’s been our new hiring process. Does it work? Well, in April 2020 we took the plunge and made our first ever developer hire without having met the person face to face. And in the year since then, we’ve hired five more under similar circumstan­ces (and so far, retained all of them).

Hiring is only the first step, of course. In the before times, our onboarding process for new staff involved lots of pair programmin­g, as a good way to bring new staff up to speed with the tools, and also to transfer knowledge about the code. Meanwhile, it was easy in an openplan office to spot when people were getting stuck and easy for them to ask for help.

Step one of doing this remotely has been sorting out the equipment. Our existing staff were all working on laptops anyway, but we had to perfect our process for setting them up in advance and shipping them to new starters – including having them set up to access our VPN back to the office network. We also had to think about how to get people’s login credential­s to them for day one in the most secure way possible without personal interactio­n.

Lenovo has been our laptop brand of choice for a long time – two things we like about them are that they’re possible for ordinary mortals to apply at least some upgrades to, and the webcams are reasonably serviceabl­e.

Step two has been continuing with the pair programmin­g approach, but this time using a screen share/ remote control (again via Teams). We find it significan­tly more draining, physically if not mentally, to do this remotely, so we try to limit the number of hours in the day we do it for, and back it up with the wider team being available to advise over instant messaging.

We also pay particular attention to giving new staff good reading material – both on screen and off. Books still have a place, and in these days of back-to-back video calls, reading one can be a respite.

All of our staff have a weekly one-to-one meeting with their manager, but we try and take these especially seriously for new starters. There’s a great temptation to have a superficia­l 90-second conversati­on, especially if it’s the fifth video call of the day. So we do our best to make it the first or second, and encourage both sides to say what’s on their mind.

It’s not all new challenges to tackle, of course: there have been some benefits to the fully remote process. Recruiting for graduates especially is a bit easier without geographic­al constraint­s. We’ve interviewe­d people from all corners of the UK, and it’s much more efficient for both us and the candidate not to have to ship them down from (for example) Aberdeen for the sake of a 90-minute conversati­on.

With the threat of Covid receding, we’ve already decided that we won’t be sticking with 100% remote working, but equally we won’t be reverting to five days a week in the office. Will we keep our remote interview process?

The current answer is “at least some of it”. If we’re asking candidates to work in our office for some of the week, a face-to-face interview provides a useful opportunit­y for them to see it and meet more of the team. On the other hand, sticking with video calls for the first interview (and potentiall­y a second one for candidates with long distances to travel), and using a computer rather than a whiteboard to do coding interviews, are likely to stay.

“In the year since April 2020, we’ve hired five more under similar circumstan­ces”

 ??  ?? RIGHT CoderPad in action – beware candidates with a dual-monitor setup
RIGHT CoderPad in action – beware candidates with a dual-monitor setup
 ??  ?? David North runs the software developmen­t team at CoreFiling in Oxford.
David North runs the software developmen­t team at CoreFiling in Oxford.
 ??  ?? ABOVE Distributi­on of staff at the peak of the pandemic last winter. We made it work
ABOVE Distributi­on of staff at the peak of the pandemic last winter. We made it work
 ??  ??

Newspapers in English

Newspapers from United Kingdom