Rules to Succeed with Offshore Engineering
Kirimli, Kirimgeray, President, Flatiron Software
It has always been hard to hire software engineers. Recently, I find it even more difficult to hire software engineers. I notice that, as an engineering leader in a large media company, I am seeing fewer resumes come in, while I hear my colleagues in the industry raise this issue more and more often. We are not only competing for talent with other media companies but also VC-backed startups as well.
In my current role, I have helped overcome this problem by building a hybrid team that leverages offshore and onshore engineers. In this article, I put together my learnings from this experience and the recipe that made our partnership successful.
A Strong Offshore Development Partner
Especially after the pandemic, remote working has changed all of our lives. This means that companies no longer need to limit their talent search efforts to their local markets, but instead, they can find help from all over the world. However, it is important to pay attention to a few things as companies partner with offshore development houses. My company’s most recent partnership is a very successful one, and the principles outlined in this article are the foundations of our working agreement.
If I had to pick one thing, I’d say that technical leadership on the vendor side is a must. Engineering management on the vendor side needs to be involved in the day-to-day processes so they have a clear view of the project and can more accurately assess the placement of their resources. Especially when working with a staff augmentation model, sometimes vendors just provide the resource then never stay involved with the rest of the process. Vendors should always be closely monitoring their resources, conducting reviews and being proactive about replacing resources if there is a mismatch.
A Partner With Prior Industry Experience
Most companies in the same industry use similar technologies and have transferable knowledge when it comes to software development. Therefore, it’s helpful to find a vendor who has prior experience in the same industry. In certain cases, they can have expertise in things like SEO, ads or streaming that you might not have in-house.
Niche expertise is more difficult to find in offshore engineering companies. Most companies offer development resources that are skilled in trendy languages and frameworks. It’s a lot easier to find offshore engineers who can work in React or Django than WordPress or Backbone. As eager as they are to provide engineers, most software outsourcing vendors struggle to staff a developer who can build applications for TVs or manage Kubernetes clusters.
Quality assurance (QA) engineers are often overlooked, and they might not possess some of the necessary skills. It is important to recognize that QA is essential, and QA engineers might not be writing code but they still need a good understanding of the technology they will be working with. In addition, they also need to be very methodical in the way they work since documentation is a key part of their job. I noticed that the most successful QA engineers:
• Are good communicators.
• Methodical in their approach.
• Use Postman, browser inspectors, GitHub, etc.
• Understand the Agile development cycle.
Project Management
Project management is key for this partnership to work, and it should always be led internally. Offshore teams should have their own project managers, but your company needs to oversee and dictate the entire process. In addition, I have seen that usually, the partnership is more likely to succeed when there is a staff augmentation model, but this also depends on the project timelines and internal resource availability.
Another core part is ensuring documentation at every step. We use Jira as our project management software, and within Jira, each ticket needs to have technical, product and QA requirements before implementation.
Vendors Need To Be Flexible
Being in the same time zone is crucial. Oftentimes communication is the biggest challenge, and it becomes even more difficult when you only have a few hours to communicate. Offshore engineers provided by your partner must have at least 80% intersection when it comes to working hours. However, for teams like DevOps and support, it helps to leverage the various time zones by having different shifts so you can have 24-hour coverage if needed.
Vacation times need to be in sync as much as possible. When working with employees in a different country, it might be difficult to have intersecting working calendars, but finding a vendor that can adapt to your local schedule is very important. It is harder to find internal resources who are willing to work on Thanksgiving or Labor Day to manage an offshore team and vice versa.
Strong Onshore Technical Team Leads
Your engineering team needs to be a hybrid model. It’s a good idea to have junior team members offshore, blended with senior team members who are onshore. This helps avoid the communication gap between the product team and other stakeholders. Therefore, team leads are the most important roles in any software organization. They are the ones who run the team and ensure best practices are employed, processes are followed and the product is delivered.
When looking for technical team leads, it is important to follow these rules:
-
Team leads need to be very good communicators and be able to overcome cultural differences and communication barriers.
-
Look for rational, objective leaders who can make the right move when it comes to conflict resolution.
-
They should be technical experts who are open to learning new languages and frameworks — leaders who come from true software engineering backgrounds, experienced in at least two different languages.
Conclusion
There are plenty of companies providing offshore development resources. It is important to find a partner who has the right resources, is flexible enough and has the right expertise to help you succeed in your project. It is also important to have the right organization internally to establish processes, conduct regular checks and provide direction. With the right approach, it is possible to deliver successful projects while saving costs.
This article was originally published in Forbes.