We're experts in software development and share news and articles about IoT, web, mobile, VR, AR and game development.

How to Recruit Programmers: HR Guide from R-Style Lab

Since 2013, the global software outsourcing market ($ 288 billion) has been growing at a CAGR of 5.84%. However, IT outsourcing paradigm has shifted from cost reduction to long-term partnership and access to new talent pools. That’s why Western companies often take the DDT/T&M approach to software development. The question is, how to hire a programmer overseas? R-Style Lab Business Development Unit weighs in.

Recruiting offshore software developers: what is the customer’s role in HR process?

We’ve already told you how to find the right software development company & why it is always preferable to hire programmers employed by a company rather than contract freelancers. However, you do not always have the opportunity to make decisions regarding your remote team’s composition and interview developers. Here’s why.

There are three ways to outsource software development:

  • Onshore (you contract developers who reside in your country; there’s no talking about significant cost reduction or access to new talent pools here, although you’ll be able to meet employees in person and manage your business relationships in accordance with local laws);
  • Nearshore (you partner with a software development firm from a neighboring country where your language is spoken or widely used; by going nearshore, you can cut software dev costs by 20-30% and conduct frequent face-to-face meetings with your remote team);
  • Offshore (or classic outsourcing; you hire developers from another continent; provided you find a reliable vendor with a representative office in USA or Western Europe, you can reduce dev expenses by as much as 50%, get a high-quality product and a contract covering free maintenance and bug fixing).

Suppose you decide on offshore outsourcing and address a software vendor from Eastern Europe; what’s next? Will you be directly involved in the HR process? 

It depends on the pricing model you’re going to choose – and while you’re at it, check ours at r-stylelab.com.

If you have a detailed software requirements specification (and your project does not deal with emerging technologies like IoT/AI where research is required), you can sign a Fixed Price contract.

Fixed Price contracts have multiple advantages including the opportunity to plan software dev costs in advance and thus spend more time on your core business activities (apart from deliverables’ reviews, the model presupposes little to no involvement on your part). However, FP is unsuitable for long-term and innovative software development projects and does not allow making changes to the scope without a supplementary agreement. Also, you can neither select team members for a project nor interview them in person.

Entrepreneurs who want to embark on a large project with unclear requirements, extend their in-house teams or hire programmers from several regions (aka Global Delivery) should opt for the Time & Material (you pay for the actual man-hours spent on your project) or Dedicated Team (employ a dev team full-time) model.

With DDT/T&M, you can be more hands-on with the project – that is, communicate with your team over the phone/Skype, suggest using particular project management tools, prioritize tasks, track developers’ activities and…make hiring decisions.

How to Recruit Programmers: HR Guide from R-Style Lab

How to hire a great programmer? Tips from R-Style Lab

The employees of R-Style Lab Business Development Unit – namely, Nikita Dunets (Chief Business Development Officer), Natalia Osipchik (Executive Business Development Manager), Max Lyashko and Marina Rusanova (both are Senior Business Development Managers at R-Style Lab) – shed light on the problem and explained how to recruit top programmers.

Natalia: Customers who sign a DDT/T&M contract with an offshore vendor are free to screen the vendor’s employees in order to assign the right specialists to their projects. However, it is the custom software development firm that does the lion’s share of the work and thus saves customers’ time.

The hiring process involves three stages:

  • Resume screening. As any reliable vendor, R-Style Lab has a skill matrix – a chart that clearly displays the skills and experience of individuals comprising the vendor’s internal staff. Using the chart, we can select programmers, designers and QA engineers who possess the expertise to carry out certain projects. The decision is obviously based on a software requirements specification (either provided by a customer or written by our internal team). The CVs that make the final cut are sent to the customer.

And here’s a tip for you. Once you receive the CVs, you should pay attention to the candidates’ real-world working experience – that is, the participation in DDT/T&M software development projects similar to yours (you may even ask for a reference). Also, check the developers’ level of English: you should be able to freely communicate with your team in case you won’t employ a Project Manager (after all, 57% of companies that had a bad outsourcing experience cite poor communication as the major reason for their failure).

And what if a company you’ve addressed does not employ developers suitable for your project? The vendor will offer to look for software engineers on the local market and provide you with a handful of CVs anyway!

Don’t worry: in both cases, only the best CVs will end up on your table.

  • Interview. Although a job interview is usually preceded or followed by a test, you are free to ask tech questions while talking to candidates over Skype. A PM or Account Manager (who will also join the conversation) will once again go over the details of your project and interpret for you in case the candidate is not fluent in English. Do invite a senior software developer from your in-house team to the virtual interview to check the candidate’s tech background and make sure he fully understands your expectations.

You can also replace the test part with a two-week trial period to see your new employee in action. If his performance doesn’t live up to your expectations, you can always hire a candidate who came in second at the job interview.

  • Hiring. Here comes the best part! You make a job offer to the candidate(s) who aced the interview and sign a DDT/T&M agreement. If you take the Dedicated Team approach, you’re supposed to provide the agreed workload (at least 160 hours per month) to each member of your dev team. Your vendor, in his turn, agrees to provide full access to the project documentation and employee tracking software, connects you to an experienced PM (or team lead who’s responsible for project management in small teams) and ensures transparency of the entire dev process.

Marina: Expertise and command of English aside, you should also conduct basic employee personality tests to make sure a candidate is a team player and doesn’t display the so-called Mum Effect (the reluctance to deliver bad news to authorities or come up with his own ideas regarding project execution) which is common to employees from Asian and African countries.

Also, I believe software developers should be given an at-home coding test prior to a job interview. Most programmers keep to themselves; they need time to dive into a project, think it over and do their best. During an interview – especially if it’s in a foreign language – a skilled software developer might simply lose track and fail to prove himself as a real pro.

Max: In my opinion, the emphasis here should be placed on the dialogue and mutual understanding. Many tasks and issues which might occur during the software development process usually need to be discussed in person – sometimes with a quick email, sometimes with a quick call. So, during the interview you should always ask questions about some relatively simple problems in order to assess the mutual understanding with the candidate. Also, it’s important to perform either a test or a short trial with the most capable candidates. This will help you understand the experience of candidates in specific technological areas and assess their capabilities in accomplishing tasks. In the end, this will allow you to evaluate their performance and the competence of each candidate.

With that in mind, I would also like to highlight the role of a Project Manager in software outsourcing. Even if you hire a dedicated team and all of its members speak English fluently, it’s better to have a whatever-what person (a Project or Account Manager) who’s available 24/7, prepares reports, distributes tasks and is always ready to answer your questions. It’s the only way to ensure your team’s efficiency and productivity and avoid communication issues (including getting lost in translation).

Nikita: How to hire a really good developer - someone who will understand your needs, mimic your company’s internal business processes and deliver maximum value? A good employee-employer relationship becomes a key success factor here. However, it is hard to establish and maintain – especially if you employ a remote team. That’s why both you and your vendor should discuss work-related issues the very moment they arise.

Beware of the so-called “body shopping”, though; software development is a complex process that goes beyond the traditional customer/vendor relationships. What you need is an extension of your own team rather than a service provider – and here’s why you should never save on a Project Manager. Add some flexibility and technical leadership on top of everything I’ve mentioned above, promote the culture of open communication inside your team, stick to the contract, take the HR process seriously – and success will follow!

We don’t peddle trends. We streamline business.