{"id":424,"date":"2019-02-19T12:00:48","date_gmt":"2019-02-19T17:00:48","guid":{"rendered":"http:\/\/alisher.io\/?p=424"},"modified":"2019-02-19T13:44:53","modified_gmt":"2019-02-19T18:44:53","slug":"what-is-the-most-difficult-in-offshore-app-development","status":"publish","type":"post","link":"https:\/\/alisher.io\/what-is-the-most-difficult-in-offshore-app-development\/","title":{"rendered":"What Is The Most Difficult In Offshore App Development"},"content":{"rendered":"\n

If you are thinking about using an offshore development team to build the app you are probably wondering what is the most difficult thing when managing offshore app development?<\/em> By far, the hardest problem is the communication gap. Other problems include time zone differences, cultural issues, lack of business context, and offshore team feeling alienated from the rest of the team.<\/strong><\/p>\n\n\n\n

Communication Gap<\/h2>\n\n\n\n

There are two main communication issues that the client faces when working with offshore development teams:<\/p>\n\n\n\n

1. Language\/accent <\/h3>\n\n\n\n

If you live in the US and employ a team from a country where English is not a primary language, chances are high that most team members are going to have limited language skills, or their accents may be too thick to understand. <\/p>\n\n\n\n

That’s why when hiring developers, I always reject those who are not proficient enough even if they have superior technical skills. But if the team is already formed, there are ways to reduce language related issue. Click here for more information<\/a>.<\/p>\n\n\n\n

2. Client has unclear goals<\/h3>\n\n\n\n

You are not the only one who may have trouble understanding the team members. Offshore teams cite clients’ inability to explain their goals as a top communication issue. <\/p>\n\n\n\n

Ability to quickly change the direction of the product is the main advantage of startups over established companies. While big companies hate uncertainty, startups succeed when they embrace it. <\/p>\n\n\n\n

There is a methodology designed to build products when it is not clear what should they look at the end. This methodology is called Agile. Fundamentally, Agile is a collection of base principles and there are several processes that were built to make Agile useful. My favorite is Agile Scrum. <\/strong><\/p>\n\n\n\n

If you never used it before I suggest to find videos on YouTube and learn basic principles. The main parts of Agile Scrum are sprints and daily scrum meetings. Sprint is a defined interval during which the team commits to deliver something. Sprint intervals are always the same. They can range from 1 week to 1 month.<\/p>\n\n\n\n

You may need to experiment with your team to find what works best for you<\/strong>. When I was managing both offshore and onshore teams, I used different sprints with both teams: 1-week sprints with offshore team and 2 weeks with onsite.<\/p>\n\n\n\n

Daily scrums are short status meetings<\/strong> when each team member reports what she did yesterday, what she plans to do today and if there are any blocking issues. Your goal as a manager to remove blocks.<\/p>\n\n\n\n

When used properly Agile Scrum can help you to clearly communicate current goals, control development velocity and keep iterating your idea. To make sure that everyone is on the same page I suggest investing in Agile Project management tools. <\/p>\n\n\n\n

There are many project management tools and many of them are free (they may have premium paid features). <\/p>\n\n\n\n

Examples are: <\/p>\n\n\n\n