Remote work is not a new concept in the software development environment, but with the COVID-19 pandemic, many companies allowed their employees to work from home. At the same time, they kept recruiting, and started having employees living in distinct cities and even distinct countries.
In doing so, many businesses now have people spread around the world and — for some of them — it is now tricky for them to bring them all back to physical offices. But one of the most interesting discoveries in these last few years is that people work from home or abroad almost as well as they did in the office, and sometimes better: the “commute issue” suddenly disappeared. This is even more pronounced in countries with many highly-productive cities, like the United States.
That led to many debates about if it is better to keep the “home-office” organization, if everybody should go back to office, or if a hybrid system shall be implemented. But there hasn’t been a lot of analysis about how “remote” work will affect “outsourcing” work.
First of all, it is important to differentiate remote work, freelancing work and outsourcing work. Some people make the mistake of considering them as almost equal, with the unintended consequence of failing either in human resources handling, or in project management, or in both.
Hiring people remotely carries some risks for projects and teams, stemming from the absence of a personal acquaintance, the lack of knowledge about their strengths and weaknesses. In this scenario, it is harder to encompass all the benefits inherent to human interaction, like using what motivates them to excel, or avoid what demoralizes them, to name a few. This is very hard to do remotely, and should not be done with large numbers of employees, especially for complex projects.
Freelancing work adds still more complexity, as their integration to companies’ culture, systems and processes could be weaker, and in many cases their commitment feeble. That fact is especially exacerbated when the freelancers build their annual revenue from multiple work sources.
On the other hand, outsourcing work could be more expensive than recruiting directly employees or freelancers, but because part of the cost includes the overall organizational processes and backup resources that allow to avoid the inherent risks of working directly with remote people. It is at this that outsourcing work offers a level of certainty and commitment.
Types of outsourcing
In software development in general, and videogame development in particular, there are mainly three different types of outsourcing:
- Product/Project-based: when a company wants a videogame, they ask a videogame developer company to make it for them in its entirety, including workforce and managerial skills. The company pays for the game. In this case, the client is looking to develop something but they don’t want to deal with its production. Instead, they want it delivered to them so that they can market it. The same happens when people go to a bakery and order a cake, they don’t want to participate in the process at all.
- Workforce-based: when a company has a project on the works, and a good idea of what needs to be done, but it searches for another company to help with some of the tasks for them. In this case, the client understands fairly well his exact needs, so what they look for are operational skills, like hiring Quality Assurance (QA)and/or Development services, either to complement their internal workforce, or to delegate whole aspects of the production. In our bakery example, it would be the chef asking for production bakers.
- Direction, management and consulting: when a company is not quite sure about what it needs to do to finish a project successfully, they subcontract someone to help them define what needs to be done. In this case, the client seeks the expertise and know-how of another software development company to temporarily acquire the skills to clear paths and options for a specific project. They seek to hire the services of experts in the matter.
In our bakery example, it would be the chef searching for help in a recipe definition, the supplies provisioning, or the kitchen setup.
Outsourcing and headcount
Outsourcing is convenient when a developer doesn’t have the capacity or the will to implement a project internally, or when it aims at reducing costs. Sometimes, very specific requirements need a special treatment for a concrete time period. Hiring people for specific tasks that the company knows will be firing shortly carries human resources risks, and any company would do well to avoid this kind of short-term turnover. Outsourcing is a helpful solution to this dilemma. It allows teams to suddenly have more staff for a limited time period. This protects internal employees, because outsourcing is not intended to take work away from them, but rather helps them increase productivity. It also protects the client financially by avoiding the human resources expenses of any hiring/firing processes. Finally, outsourcing avoids the emotional cost of high turnover, the negative impact it has on morale, and the negative image it could convey to the public.
Outsourcing and pivot freedom
Usually, companies go through pivots in their life cycle, especially the young ones who are testing the market, exploring what works and what doesn’t, and sometimes their final products or services are not what they imagined they would be at the beginning. It is essential for companies to know how and when to pivot. When the move is very strong, they run the risk of demotivating their work teams, because what they had promised them regarding their projects can be discarded in the end. The effect on team morale can be tremendous.
Since there are times when pivoting is essential, outsourcing a line of business is always a good way to test if something works or not. And if it doesn’t, then the company simply asks the outsourcing company to stop the project, without affecting the internal team’s morale. If the idea works, then a transition phase can be set between the outsourcing company and the internal team, or the outsourcing can continue. Outsourcing offers the freedom of pivoting and exploring different paths without internally affecting the teams.
Outsourcing and iteration speed
When companies are looking to diversify their lines of business, or want to test several variations of them, one way of doing it is to ask the internal team to develop these different options. However, what can happen is that the core business gets jeopardized as the team’s priorities are changed. And, if the new lines of business are not worthy, it can also be complicated for the management to re-motivate the internal team when assigning them back to the “old” lines of business.
If a company wants to accomplish this exploration process faster, or avoid the demotivational risk, it can outsource the development of the alternatives, without affecting the internal teams, which should focus on the core business instead. The iteration speed gets improved when outsourcing and the morale remains intact.
Outsourcing and cost saving
Depending on the level of expertise and the location of the outsourcing company, outsourcing could simply be a way of saving costs. Design and production are not necessarily to be done in the same place, and design generally requires more expertise than production. Electronic manufacturers have well understood that, and generally they do the concepts and the design internally, and they have manufacturing providers doing the mass production.
In the videogames pipeline, it could be concept art done internally and 3D modeling done externally. Or gamedesign defined internally and programming done externally. Or software development done internally and quality assurance externally.
Sometimes, companies think about cost saving when it’s too late, they start outsourcing when they are already losing their best employees. In that case, outsourcing can only accelerate that trend, because when the times are complicated employees see outsourcing as a risk for their job position, or as an acknowledgement that the company is not doing very well. It’s always better to outsource on growth periods, rather than when the company is shrinking.
Where to outsource?
The company’s needs determine the right location to outsource. If the task to outsource is very well defined, with systematic processes that require little or no decision making, then the ideal location would be a place with very competitive prices. In these cases, what matters is the quantity of what is being outsourced. Time zone differences aren’t also a big concern here because repetitive implementation doesn’t require as much supervision.
But when the most crucial aspect is flexibility, collaboration, creativity and design, or when the scope is not perfectly defined, then it is not convenient to outsource in a distant time zone, nor to a country with drastically different culture than the client’s, because it obstructs communication and team work. A company looking for creative processes requires similarity of culture and context where differences of language do not necessarily represent differences in shared values. These values are very important to create productive team work with a shared vision.
What’s coming? (the future of outsourcing)
Outsourcing is going to spread even further. Remote work and communication software spread due to the pandemic made many companies understand that to have their employees in their corporate offices is not the only way for achieving good short-term results.
However, several companies wonder about the long term: is it sustainable? Is it good to promote employees you barely know? Is brainstorming and mind emulation via video conferencing really efficient?
Many companies are calling back their employees, at least partially, to re-insure the long term. But they’ve got a taste of the advantages of remote work, in all its forms: home-office, freelancers and outsourcing. And it is hard to forget the good. We will see a spread of a combination of forms of collaborating, and successful companies will be slimmer, more flexible, with consolidated core teams maneuvering remote workforce extensions.
Because software development keeps accelerating, there is a lot of innovation and areas of opportunity in the industry. Everyone has to move very fast to avoid falling behind their competitors. But developing software is not a quick process, so the companies that manage to outsource effectively will have an edge, both in terms of productivity and costs. By generating an intelligent outsourcing strategy, they will achieve objectives with a higher level of efficiency. In this sense, the future of outsourcing looks exceedingly promising.