The strength of best software outsourcing companies lies in employing top-notch specialists. That’s why it’s not uncommon for people who make the first steps in the outsourcing world to have some doubts if the developers are as good as they are advertised and clients often decide to additionally verify potential developers themselves during the initial stages of cooperation.
Our experience shows that almost always after several candidates provided by the outsourcing partner are accepted by the client, enough trust is built to stop organizing additional interviews. At the same time, it’s crucial to know how your partner verifies candidates and what can you do to make sure that you will work with developers that suit the project to the T. That’s why we decided to share with you how we approach the recruitment process and what our clients add to our verification before the mentioned trust is built. If you’re scrolling over the internet to find a way, to ensure the quality of outsourced developers will meet your standards – you came to the right place. What’s more, even before the COVID related lockdown the interview meetings between client representatives and potential candidates were conducted remotely so if you choose to delay or even freeze cooperation launch not being able to meet the developers in person – you can exploit methods battle-tested by our partners and proceed with the process in a 100% remote manner.
The road that each candidate takes before he/she joins the team in our company consists of 4 steps – being found by one of our recruitment specialists, getting through screening call, performing well during the complex interview with our manager and tech specialist, and finally, only if the candidate manages to ensure us that he/she is the right person for the job, we present him/her to the client. Despite this article is focused on the two final steps of the process, let’s quickly recap the first ones before moving to the core to show you the whole picture. It also can’t be omitted that with a growing shortage of talent within the IT market recruitment process is a two-way street – all the meetings are not only for the company to verify the candidate but also for the candidate to check if the project, company, managers, and possibilities to grow fit his/hers needs. But that’s another story that we will cover in the future.
Once we establish the requirements with the Client, our HR specialists source top talent both from internal bases as well as straight from the market (we utilize direct search, job boards, run referral programs, and cooperate with universities to have access to a wide candidate base). Soon after people with the best fit are found our recruiters hold the first screening call during which they present our company, project, and inquire more information about the candidate – former projects they were developing, experience with particular technologies, methodologies, their level of English, required salary and so on. During the call, they also check if the potential candidate is communicative and if they can get along without any obstacles. If the confirmed background matches the job requirements and the potential candidate shows interest in the cooperation, then comes the time for the most important part – the recruitment meeting.
The recruitment interview with the potential employees involves the Project Manager/Development Director responsible for the project and one of our Senior Developers – we’re always choosing the person that has extensive experience with the desired scope of work and technologies. Before the global lockdown we used to meet on our premises but now to maintain social distancing we’re running these meetings remotely. Since software developers are experienced with remote collaboration in general, running the meeting online is not the problem. Because rather than using some fancy tests or questionnaires during the meeting we rely mostly on live coding and conversation, the only additional tool that’s needed is an online video call app. Going back on track through – the interview goal is to verify candidates’ technical skills and experience as well as soft skills and communicativeness. Although in the real-life situation both aspects mix during the meeting for the sake of this article, we’ll divide it into two parts – covering soft skills evaluation at first and then proceed to the technical part.
Since we’re recruiting people after the general ways of working are established with the client, we already know according to what methodology the project will be run and what experience is going to be crucial to make the communication smooth and sound. What’s more, typically we try to build the core of the team with the people we know and have already worked with. That’s why the PM who would be responsible for the projects knows their work and communication styles and preferences. If the cooperation would run in the mixed teams model we always discuss thoroughly communication models that our client’s internal developers favour to choose people that will easily find themselves around the team. Because there is no objective test to check the soft skills we mostly rely on our well-seasoned PMs who worked with countless specialist and in the majority of cases have the gut feeling that allows choosing people that would be communicative team players who have all the soft skills that makes them more than coders. Starting with casual talks, through the technical interview to meeting summary – during all these steps the candidate is observed to recognize how he/she acts and approaches the tasks. Clearly, sometimes everyone makes wrong decision but there’s no reason for beating around the bush – no test, and no one has 100% accuracy. However, in the vast majority of cases, our Project Managers are right and if the candidate manages to get over the technical part of the interview as well, he/she finally fits the team and the following cooperation is flawless.
As mentioned before the technical part of the interview is conducted by one of our senior specialists who has extensive knowledge and experience with technologies used in the particular project. On the primary level, the goal is to verify if the really person knows the required elements he/she claims to be familiar with . But the most important part of the meeting is to check “how the candidate thinks”, what drives him/her and how he/she solves problems. What’s crucial is to verify the “basics”, since solid foundations are what allow the best developers to work effectively in a rapidly changing environment of complex software development projects. We have seen people that could handle even difficult tasks but at the same time can’t explain why they did it like that and how it works. And they are not the people we’re looking for. We do not work with coders but with developers, who see the whole picture, understand why they do something in a certain way, so as a result when the project requires going out of the box they are ready to create rather than rewrite the same code lines over and over. The actual course of the meeting depends on the preferences of our reviewer but almost always it includes not only questions and conversation over technical matters but also live-coding. Some of our Software Development Directors prefer to also provide the candidate with a short test before the meeting so they can verify on what aspects should they focus more during the interview beforehand but that’s not a general rule. Since we can’t use “real-life tasks” due to confidential agreements, we either use already prepared complex tasks that cover particular technology stacks or prepare something that would reflect the challenges which are frequently found in the project that we recruit for. If the candidate manages to deal with all the challenges that he/she is given we present him/her to Client for whom we run the recruitment process. And that leads us to the final step of the process…
In most cases, if our clients decide to run additional interview meetings, they verify the same aspects as we do during our internal interview but the person responsible for the evaluations is one of their internal employees. Often, apart from the technical specialist, these meetings involve the PM, if there is one on the client-side, and someone from the HR department. Our experience shows that because the candidates already passed our verification, the online meeting with Client’s representatives is much shorter and focused on something specific to the project rather than general knowledge related to the technology in which the candidate works.
What worth mentioning is that we see differences in approach to candidates related to client companies’ internal culture. We saw interviews focused strictly on the technical aspects as well as ones that only briefly touched the technical experience and emphasize communication skills and work approach. These almost always reflect the company’s internal culture but at the same time, we believe that if you decide to run additional verification its best to find the golden mean. Rather than focusing on one extreme only, both soft and hard skills should be verified because the combination of these two elements is what separates the best developers from the average ones. But what if your project requires unusual skillsets and general verification is not enough for you to fell convinced that the candidate have what’s needed?
The additional interview with the candidate is more important if the company’s internal processes differ from the frequently used. In these cases, many highly skilled developers might not have experience with particular methodologies so it’s best to verify if and how they would fit. To illustrate what we have in mind let us use one of our partnerships. Our client needed to expand the development capabilities and hired us for this reason. The company managed the project according to Extreme Programming methodology and used pair programming. That made searching for candidates experienced with these processes much more difficult than in case of “usual” scrum projects. That’s why the first recruitments involved an additional online interview, hosted by our client, during which candidate selected through our internal process had a chance to try pair programming in a simulated environment. This way our client could see how he/she cooperates with his/her pair to make sure that “real life” cooperation would be smooth and effective. Additionally, since our developers are often paired with client’s internal employees running the meeting online was as close to real cooperation as possible.
The same goes for specific, unusual positions. Once, we had once to recruit a person for an unusual role, so finding someone experienced exactly with the scope of work was almost impossible. That’s why after we managed to select the person that in our opinion combined the experience and skills needed to deliver what was necessary, our client decided to run complex candidate verification on his own. The process included 2 online interviews, providing tasks corresponding to the scope of work in this position to be prepared in between the meetings, and then “defending” these during the second one. All of that allowed our client to verify how the candidate would deal with all the tasks related to this role and since the project is still ongoing we can reveal that it was a perfect choice. Therefore if your project requires specific skills, it is best to precisely talk your needs through with your outsourcing partner and establish the process that would allow ensuring the person chosen for the role would fit right in and be capable of delivering what’s needed. But although that would allow to cover all the skills/experience related requirements you might have, in some cases that might still not be enough.
Having worked and still cooperating with companies related to financial services we know that some of them require to run background checks related to credit history and criminal records. Obtaining such certificates is limited by the applicable law regulations, therefore, this issue must be considered individually in specific cases. Making the long story short – we had already acquired such certificates several times for our clients so if your company policy require running background check and they are acceptable by the polish law we can guide you through the process so it won’t cause any difficulties.
Recruiting top-notch specialists is a never-ending journey that requires solid foundations and constant improvements. But utilizing battle-tested practices allow mitigating the risk of employing the unsuitable people. If you recently start or are about to launch external cooperation and wonder if the developers would meet your standards, we’re positive that no respectable software outsourcing company would give you a hard time for running additional recruitment interviews. Depending on the complexity of the project and your operations that might only be a short 30 min talk or multistage process as in described examples. But it also might require additional steps that, even though we’re in business for 20+ years, would be unexpected. Never be afraid to talk your needs through with the outsourcing partner you select and use the combined experienced to create methods that fit your reality and let you ensure working with top professionals.