The development outsourcing market appeared as a result of a shortage of personnel. Without a shortage of personnel, it would not exist in the usual format, only in the form in which non-IT outsourcing exists - for example, cleaning or other areas where there is an excess of cheap personnel.
Recently we have initiated a discussion with the co-founder of Ardas Ukraine company Andrew Ryzhokhin to talk about Ukrainian outsourcing, business analysis, and other reasons for hiring a software development company.
What You Need to Know Before Hiring a Development Team
For the last 12 years, Ukraine was named several times as the best destination for outsourcing software development for clients from Western Europe. Has the situation changed since then? Let's take a closer look at all the pros and cons of IT outsourcing in Ukraine.
Affordable Development Price
Among the countries with the lowest cost of living, Ukraine occupies 6th place. Ten years ago, the cost of labor here was generally the lowest in the world, but because of the heat market, IT professionals decided to raise prices for their services. Even despite the fact, the Ukrainian prices still remain very attractive for US or Western European customers. By transferring to Ukraine all their 'production capacity' in the IT sector, Western companies can reduce their costs by 40-60%.
High Level Of Competence
Historically, Ukraine has been the technological center of the Soviet Union for decades, and this heritage has echoes today. There are technical universities in every major city giving us great talents and letting us build good and effective IT teams, and more and more young people choose technical professions. However, we can not say that the graduates are 100% ready and specialists can immediately start to work on complex projects.
Every major IT company in Ukraine has its own training courses for developers, designers, testers, and managers. So, they produce a skilled labor force for themselves. It is noteworthy that such courses are often either free or cost less than a laptop.
Ukraine ranked third in the world in the number of people with higher education, the second largest number of holders of academic master's degrees, and 4th place in the world in the number of Certified IT Professionals. Ukrainian developers have shown good results in the global online competition for IT specialists, in which 11 million people from 50 countries are taking part. 56 Ukrainians were the first in the individual events for a variety of programming languages, Web frameworks, working with databases and graphics.
No HR costs
The outsourcer independently selects personnel to perform the functions entrusted to him. Therefore, the client can be sure that business processes are handled by professionals.
Lack of formal labor relations with specialists
Although accountants, lawyers, and other employees serve the client company, they officially work for the contractor.
Exclusion of disputes and disagreements with staff
If a specialist is dissatisfied with something, he can make claims only to his employer. The client pays the agency for services and does not deal with personnel management.
Elimination of problems with public services
Regular checks of personnel do not affect the company in any way: employees are officially registered in another organization.
Contract form of relationship
The partnership between the contractor and the customer is formalized by an agreement. It spells out all the duties and responsibilities of the parties, as well as important nuances of cooperation.
The Convenient Time Zone
The Time zone of Ukraine is GMT + 2. It is very convenient for Europe since working hours are matched. Even for the US, Ukraine is the best choice compared to the time zones of Russia, India, or China.
Fast And Cheap Broadband Internet
In the ranking of internet speed among countries, Ukraine occupies 21st place. However, such ratings will never include the fact that it takes just one day to connect to a 100-megabit connection in any major city of Ukrainian and it costs no more than $5 a month!
Though there are still a few disadvantages to working with an outsourcing company.
The risk of misunderstanding the corporate style of the company
By all standards, the contractor is doing the job correctly. However, the specifics of the enterprise are often associated with nuances that need to be clearly clarified to the partner.
Dependence on external performers
Entrusting the performance of certain functions to a partner means violating the corporate unity of the company. If the contractor does not bring the desired result, the company incurs losses.
The risk of bankruptcy of the contractor
The agency can go bankrupt, like any production company. This will lead to the non-fulfillment of delegated functions and a temporary decrease in the efficiency of the customer enterprise.
How to Know That Your Company Needs a Development Team
- When you do not have enough specialists. That is, your employees are fully loaded, but the project is growing, and you need to connect additional staff. Or when you start new projects, new specialists are needed, but it is impossible to hire them quickly. Hiring one developer can take from 3 to 4 months, sometimes it's too long.
- When there is not enough expertise within the company. Here it is advisable to resort to outsourcing, so as not to experiment, not to fill bumps on your mistakes. For example, you launch a new project, and it is on a different technology stack. Or your project has grown so much that it has become high load, you need to rework the site, and your programmers have not worked with such large-scale tasks.
- When there is a need to build a SaaS application in your company, but it is a non-core service. This mainly applies to small businesses. For example, a company is engaged in the design, promotion, and advertising of websites. It's easier to outsource development than to hire programmers on staff.
Where Can You Find Software Development Agencies?
There are three formats of work in the development outsourcing market.
Fixed - when tasks have a fixed cost. You outsource the task, outsourcers calculate its price before starting work. The advantage is that the cost is immediately known, it cannot change. As a rule, if the outsourcer did not think so, did not take into account something, these are his problems.
Keep in mind that the cost of a development task does not always include testing. Sometimes it is immediately included in the cost of an hour, sometimes it is included only in large-scale tasks, and sometimes it is paid separately, it also happens that the tester is not in the team, and this task falls on the client.
The disadvantage of the fixed approach is that the cost includes risks, so it is usually 10-30% higher than with hourly payment. Also, before the start of work, time is spent on evaluation: the task is divided into subtasks, responsible specialists consider how long its implementation will take, what kind of expertise is needed, then managers estimate the cost. If you send tasks to outsourcers in a stack of 20-30 pieces, the time loss can be large.
There is also no possibility to choose the level of a specialist, his qualification is determined by an outsourcer. This is not a minus, just a nuance, since in this case, you pay for the result, no matter who will do the task.
T&M (time and material) - payment for the actual time spent. Here everything is transparent and clear for the client. The downside is that the outsourcer can only give a rough estimate of the cost of the work. In fact, the task may take less or more time than expected at the start, respectively, the cost changes up or down.
The advantage of T&M is that the cost of outsourcing is cheaper compared to fixed. But it may be that the manager is too lazy to draw up a technical specification for the developer, he explains the task to him in words, as a result, the specialist's time is spent not on development, but on talking with the manager.
Outstaff - full redemption of specialists. A programmer of a certain level (junior, middle, senior) from the outstaffing company begins to work as a regular unit of the customer. If a purchased employee falls ill or quits, the company is obliged to find a replacement, usually within a very short period of time - 1-5 days, in order to avoid downtime.
The downside may be that if you bought a middle, and for some tasks you need a senior, you will have to hire an additional specialist. A manager or team leader is also desirable for setting tasks because it is not enough to have a programmer - they must be properly managed, this should be done by a person who knows how to set tasks and control their implementation.
In addition, there may not be testing. Of course, the developer will check for himself, but it is better when there is an additional check so as not to miss errors. This requires a tester or manager.
For outstaffers, the peculiarities of this format of work are the possible burnout of employees and problems with their professional development. For example, we have a lot of developers in our team, and those of them who are immersed in third-party client projects sometimes feel like "black sheep" because they do not participate in the life of the team, in the current projects of the company. There are also difficulties with the professional growth of specialists. We have developed maps for each developer, where for six months ahead it is written what needs to be learned, and what to achieve. For the development and training of employees, we allocate a certain amount of time once a week or a month. You can't do this with an outstaff employee, all his hours of work are sold to the client. Of course, this is a minus for the developer and for us, since the specialist does not grow within the team.
Checklist: How to choose a Development Outsourcing Company
- Clear positioning. There are no outsourcing companies that do a full cycle of work, for example, creating a website from scratch. Outsourcers are experts in one direction, at most in two related ones, for example, mobile development and web development. Good outsourcers never do design, development, and 10 other services at the same time.
- Availability of grades and their description. If an outsourcer sells juniors, middle, and seniors, there should be clear descriptions of the grades so that it is clear what kind of specialist he is, and what he can do.
- Consent to an interview. Even if you don't plan to interview every developer, ask the company representative if they're ready for the interview. As a rule, inadequate outsourcing companies, and interviews are treated positively.
- Impersonal resumes + competency map. Impersonal resumes are ordinary resumes of employees, only without contact details. Competency map - a description of the specialist's competencies so that you can select a developer with the required degree of expertise. At the request of the client, the company must provide several depersonalized resumes of free employees with a description of their competencies.
- Cases. There may be such a problem with cases that the outsourcer has projects for other companies under NDA, and details cannot be disclosed. Therefore, cases can be impersonal, without specifying specific customers.
The largest share of the outsourcing market in Central and Eastern Europe, 16,000 IT graduates per year, pro-Western orientation, membership in the WTO, and the highest level of democracy among all post-Soviet countries outside the EU - all of the above make Ukraine an attractive country for the transmission of IT outsourcing projects.
At Ardas, we always listen very carefully to the client and try to understand what their desire is. The client that is configured for a long-term project will have experts within their field of interest, and who share a joint view of the applications' future. During discussions, we attempt to understand and immerse ourselves in the project ethos so as to provide the smoothest and most successful solution. In doing so we attempt to utilize our intellectual capacity and operating time to its fullest.