About remote work. Work with outsourcing

    In today's days, in the days of the emerging crisis again, it is important to preserve the business, not to lose it. At least the majority of companies set as their goal, if not expand, at least to keep the business in the same condition as a year ago. One of the support factors is optimization of human and financial resources. Everyone wants better frames for less money. If with traditional production, where work is carried out in workshops and factories, workers must come directly to the workplace and work, then in new (relatively traditional) areas of the economy associated with the Internet - this rule is not necessary. The global worldwide network has allowed a huge number of people from IT to unite and create something new.

    Remember how much open source software we have, and after all, these people who develop it never sat together in the office, and most importantly, they never saw each other (in most cases). Why do modern businessmen in new areas of production neglect this advantage? Why not use external frames that are located remotely from the main office? But on the other hand, many understood the full benefits of this provision and, unfortunately, such a minority use them.

    So, what prevents you from starting to work with outsourcing staff when developing software (here I include such positions as developers, testers, analysts, tech writers, and possibly some others):

    1) fear of the new;
    2) fear that external resources will overwhelm the project;
    3) thoughts about the impossibility of normal communication within the team;
    4) the inability to control the workflow.

    All these are quite weighty arguments for those who have little thought of this issue seriously. Let's look at each of the items individually.

    Fear of the new

    This is a psychological aspect, and it is natural, especially for people who have a core business not from IT, and IT is a supportive structure. It is probably difficult to explain why there is fear, most likely this is more closely combined with point 4. These people are used to holding everything in their hands. Perhaps this is the right approach, but not optimal. Keeping up to date, controlling the process is a waste of time. It is necessary to control the result, not the process. Because I am not a psychologist, I think to leave this point.

    External resources will overwhelm the project

    Again, returning to the previous paragraph, I repeat - it is necessary to control the result, at each stage. Especially if you are working with this company for the first time. And then surprises after six months of work: “where is the project?” Will not arise. However, this does not mean that you need to ask for a result every day, these requests will only take time from the customer and the contractor, and this is the time that could be spent on really necessary things. However, if it is clear that the deadlines are breaking, then it’s worth making some kind of gestures in the direction of influencing the process or abandoning this resource provider. By the way, the disruption of the project is natural for the teams of the customer himself, inside the same company, deadlines can occur inside. Therefore, dividing teams into their own, and strangers on this basis, “suddenly break the deadlines” is wrong.

    Team Communication

    If the team is divided into several parts, this certainly complicates the communication, however, if each team makes its part as independent as possible from the other, this is not a problem. Within each team, communications will be without problems, and communications between teams will occur at the level of architects and team leaders. As for communication between analysts and developers, they say that without verbal communication anywhere - here Skype and competent documentation will help. I would like to dwell on the documentation in more detail. The main thing in the project is a document (without a piece of paper - you are a bug). Indeed, the more the analyst writes, the fewer questions from the development side. On the other hand, if the analyst explains something to the developer and then forgets to add it to the statement of work, this threatens misunderstanding in the future and additional time costs.

    Imagine the situation, the analyst wrote part of some TK (ChTZ), so the ChTZ developer begins work and he has several questions. If the team is divided and the developers are sitting in another office / city / country, then most likely he will write a letter and receive a documented response in the form of a corrected ChTZ or, as a last resort, in a response letter. In this case, the requirements supplemented by the analyst will remain and they can be repeated, forwarded, transmitted. If, however (and this concerns more traditional teams), the analyst is in the same office as the developer, then there is a danger of an oral explanation, which can lead to sad consequences:
    • the developer will forget some of the oral requirements and have to repeat it;
    • the tester is likely to have the same questions and this time the analyst can answer them a little differently, well if he writes down these requirements after that, and if not?
    • the technical writer will turn to this ChTZ again and there will again be a misunderstanding if ChTZ has not been supplemented
    • and what will happen if there were errors in the implementation of this ChTZ? Right, again questions, unnecessary communication. And if another developer has come already?


    But then I got carried away. This is to say that the well-described ChTZ eliminates the mass of unnecessary communication, therefore this stage is extremely important. Well, all other communications are easily resolved via email and skype. Of course, this type of work, which I described, boils down to the fact that developers are all sitting together, but, simply, remotely.

    And I’ll add a little calculation on this item. Suppose there is still a need for communication with the customer directly from the development side. And not the whole team will communicate, but only one person, often this is a team leader. So a weekly trip of one person to Moscow is about 35-40 thousand rubles. It's funny! Even if you send a person on a business trip once a month, it’s cheaper than paying the difference to this specialist in Moscow and the region. What can we say about the whole team?

    Inability to control the process

    Let's move on to the last point: the inability to control the process. I already mentioned him. Indeed, is there a need to control the process and get into development? We know that for the most part programmers are closed and do not like too much attention. And when they sit separately from the manager chatting forever and quietly “code in the corner”, this creates ideal conditions for focusing and working. Do programmers need management attention? Not. Does management need to intervene in development? Not. Only one conclusion is visible from here - the business owner does not need to control the process, the result is necessary to control. And the team will be led and coordinated by the team leader, separation of roles in a pure form.

    Well, then fears come out in vain? Absolutely. This is a new area of ​​the economy, a huge layer, the fastest growing sector of the economy. And we must keep up to date and understand the new opportunities that are opening in this regard.

    Let's finally move on to the benefits of remote work.

    Advantages when working with outsourcing companies:

    1. no need to control the process;
    2. cheaper to hire once and forget than to keep staff;
    3. no need to take care of jobs, equipment, salaries and other office details, as well as employee motivation;
    4. it is easy to verify the result by comparing the provided solution with the initial requirements (of course, it is debatable here, for example, if the very drafting of the TOR is outsourced).

    Advantages when working with branches:

    1. no need to control the process;
    2. it is cheaper to keep a branch of developers in the region than in the capitals (Moscow, St. Petersburg) both in terms of salary, rent, and other indicators;
    3. if difficulties arise with the branch, it can be closed;
    4. Personnel in the regions are not overheated, so for less money you can get excellent specialists at a level not lower than the capital's, and often higher, at the same time much cheaper.


    All this leads to the fact that in the modern world of IT you need to look for new working methods, new technologies. This world is developing rapidly, the main thing here is not to be left behind. And while you are thinking of opening a branch in the region or not, your competitors are already using and outsourcing.

    Why am I writing all this? I am a young specialist who does not want to go to Moscow. I want to work at home and get decent financial compensation for my work. Now there are a huge number of IT companies in Moscow and there are not enough branches of these companies in the regions. I judge in my millionaire city. There are branches, but they are few. We have a huge number of staff (programmers or so) graduated and the same huge number leaves for the capital or abroad. All because the prospects are higher there. All that is needed to save personnel here is to open branches. I sincerely hope to be heard, and I hope that competition in our region will allow the development of IT in our city and in the republic as a whole. And this in turn will lead to an increase in the number of cool programmers in the city and a new interest from employers.

    PS Maybe I missed something, I will be glad to exchange opinions in the comments.

    Only registered users can participate in the survey. Please come in.

    Are you ready to outsource some of the work:

    • 77.6% yes 52
    • 22.3% no 15

    Are you ready to open a branch in another city:

    • 56.2% yes 36
    • 43.7% no 28

    Also popular now: