Recruitment and Selection Process for Outsourcing Software Development

Hiring top-tier software development talent is a skill in and of itself. Finding the right person for the job relies on a combination of social networking, technical know-how, market expertise, and reading people.

But how do you ensure you’ll end up with the best talent for the job when someone else takes care of the hiring? Often, companies outsource software development projects when they lack the in-house skills, time, or technical expertise to make smart hiring decisions.

In this article, we’ll take an inside look at the recruiting process for outsourcing software, explaining how top nearshore vendors recruit talent and match developers. We’ll focus on the recruitment and selection process best practices used by the pros to identify and evaluate a candidate’s skills, ethics, experience, and fit, to help clients acquire the best talent available.

How Vendors Find Top-Talent

While every outsourcing firm has its own set of internal processes, the recruitment and selection process tends to look something like this:

Sourcing the Best Talent

Recruitment professionals–regardless of who they’re working for–source talent through a variety of sites, profiles, and methods. Here’s a look at some of the channels recruiters use to find qualified development talent:

  • Pipeline. The recruitment process begins way before interviews begin. Recruiters apply a systematic approach for identifying potentially qualified candidates. The process happens much like a salesperson might approach prospecting–looking for leads who match certain candidate profiles.

    For example, that might mean using LinkedIn to find development talent or project managers with specific skills listed in their profiles, making a list of names to contact later.

    Recruiters might also look at sites like SourceForge or GitHub, identifying potential candidates by checking out code contributors on open source projects. What’s nice about this approach is that it allows recruiters to review code samples before reaching out. Developer blogs are another great source of potential candidates, as they provide detailed insight into the developer’s problem-solving capabilities, technical know-how, and their process.

  • Employee Referrals. Employee referrals are one of the best places to find high-quality candidates, regardless of industry or position–and software development is no different. The idea is, quality talent tends to associate with other quality talent–or rather, quality talent won’t risk their reputation by recommending substandard talent. Beyond that, they already have an understanding of what the job entails and qualities and skills someone should bring to the table.
  • Job Boards. Recruiters tend to use job boards when there’s an opening they need to fill. This might include niche job boards that target tech-specific roles–think StackOverflow, AngelList, GitHub–or sites like Glassdoor or Indeed that cover all types of jobs. While referrals and cold outreach methods often yield “better” applicants, job boards are great for reaching a larger pool of candidates.
  • Applicants. Finally, IT recruiters might look at the pool of applicants who reach out directly–be it through a job listing on the company website or a direct email from an interested applicant. Here, recruiters might look toward paid advertising or organic social media posts to reach potential candidates and convince them to apply.

Developer Screening

The next stage of the personnel recruitment and selection process is a developer screening, which is essentially a “pre-interview” phone call where the recruiter aims to determine whether the candidate is indeed a fit for the opening.

At companies like Tiempo Development, candidates are selected for the pre-screen based on their profile, application, etc.. The candidates are then asked more specific questions about their background, technical skills, work ethic, and career goals for further qualification.

IT Recruiters tend to look for technical skills during the sourcing stage, and once they’ve compiled a list of qualified developers, they’ll move into a round of screening calls to get a better sense of which candidates are right for the job.

Here, recruiters will evaluate soft skills, apply technical questions provided by the internal hiring team, combining various methods (e.g., structured interviews, technical assessments, and behavioral questions) to learn more.

While technical skills are a prerequisite for the position, the best recruiters know that technical acumen goes well beyond knowing the right programming languages. They’ll also look at English proficiency, as well as soft skills like creative problem-solving, empathy, and flexibility. Is the candidate a good communicator? Are they proactive? Assertive?

At this stage, applicants may be asked to complete a cultural fit assessment, which aims to ensure candidates are team players who embody the vendor’s values and the skills/mindset required to work within established processes. This might include evaluating communication skills, experience with Agile best practices, remote collaboration, ethics, and more.

Technical Interview

Once a candidate moves past the initial screening, they’ll typically be asked to take a skills assessment to test competency in the programming languages and technologies they’ll need to be successful on the job.

After candidates pass the skills assessment, they’ll complete a technical interview with one of the vendor’s tech leads.

Interviewers will generally ask more detailed questions about the candidate’s experience across the entire development life cycle. Depending on the position requirements, that might include programming languages, deployment and testing practices, Agile and DevOps culture, etc., as well as questions related to the strengths and weaknesses revealed in the results from the skills assessment.

Additionally, tech interviews often involve challenges and assignments. For example, candidates might be asked to work with another applicant or an existing employee on a pair-programming task to evaluate their coding skills and ability to work collaboratively.

Sometimes, interviewers will ask candidates to solve a problem or an ethical dilemma and explain their process. In these cases, there’s no “right answer.” The scenarios help the interviewer to determine how the candidate approaches complex issues and evaluates potential solutions.

Ultimately, the goal of the technical interview is to assess candidates’ technical knowledge, hands-on experience, skills, and abilities as they relate to the needs of the specific job they are applying to. They may also look more closely at recent projects. For example, we look for engineers who have applied skills within a certain time frame to ensure they can deliver the desired outcome for a specific type of project.

How Do Vendors Match Needs to the Client?

We’ve gone over how recruiters find and assess software development talent. How do outsourcing firms determine which developers are the best fit for a specific project?

While every organization follows a slightly different process, here’s a look at how we match talent to client needs at Tiempo Development.

When a new client comes on board, they’ll meet with an account manager to discuss client goals. What skills are they looking for? What outcome do they hope to achieve?

From there, the vendor might look for developers that match client requirements, then set up interviews between clients and developers. The recruiting process for outsourcing software development depends on what type of arrangement the client is looking for, and of course, varies between service providers.

In situations where the client is looking to supplement in-house teams with a handful of outsourced developers, they might choose to interview candidates for each role themselves. Here, clients have an opportunity to learn more about what the developer brings to the table and should aim to answer the following questions during the interview process:

  • What experience does this person have with a specific programming language or technology?
  • Will this person fit in with the internal team?
  • How might they help achieve the desired outcome?
  • Does the candidate have any recommendations for improving the codebase or internal processes based on their experience?
  • What is their typical process like?

In this scenario, the client might choose to have the developer meet with internal staff–especially if they’ll be working closely with the in-house team.

We also have clients looking to hire an entire team. To save time, they may opt instead to interview a project manager or lead developer to run the project. That person might be responsible for selecting the developers, QA testers, etc. for the job themselves, based on the target outcome.

Wrapping Up

A substantial benefit of outsourcing software development is that the recruitment process is outsourced as well. It’s the vendor’s responsibility to find and vet talent, allowing organizations to save time and resources, as well as avoid making mistakes like selecting developers with the wrong skill set.

That said, while the outsourcing company handles the recruitment and selection process, the client is still on the hook for communicating exactly what they’ll need from the provider.

Before you start reaching out to potential outsourcing partners, you’ll need to have a clear idea of what you’re looking for as you evaluate potential outsourcing partners.

Once you’ve nailed down what you’re looking for, you’ll want to look at what kind of talent vendors can offer. What team members do they provide? And what kind of internal resources do those team members have access to (think professional development, learning opportunities, etc.)? What programming languages and technologies are offered? What kind of experience do developers have?

Do they have a process for delivering the desired outcome? For example, at Tiempo, we use formal artifacts to ensure that project requirements are understood and implemented as intended throughout the development cycle.

Look for solution providers who have worked with others in your industry and see if you can read any case studies or look at past work to find out more about whether this is the right partner for you.

Additionally, you’ll want to focus more on outcomes than specific skill sets. Don’t get hung up on a particular language or tool. Instead, be open to feedback and recommendations from developers as they may know of another solution that can get better results.

Tiempo’s nearshore business model offers affordable access to top development talent perfectly aligned to client business objectives. Our high-performing teams collaborate seamlessly with in-house staff–and in many cases–help them improve skills and establish a mature Agile practice.

Contact us today to learn more about and our process for matching clients with the best talent for the job.