I see this very often when a company is looking to work with a software development team or persons located outside the US; high on their criteria list will be excellent language skills. This only makes sense. Everyone needs to be able to talk with each other and to make sure there is understanding of what needs to be done and why it needs to be done a certain way, etc. But what happens many times is that the company will “rank” higher the person/s who speak English the best, and not take a closer look at the other skills needed to do the job; i.e technical skills, professional skills, etc. Even if technical interviews are conducted. Everyone likes a good interviewee, one that talks a lot, gives a lot of clear information. But does that get you the best person for your team and for the work you need to have done. Many times it does not. When you are dealing at a distance, is this standard method of choosing who to work with, really the best way?
Besides often not getting you the best person for the job, with this method, many companies also often have other concerns such as:
– Someone out of camera range may be helping the person that I am interviewing, telling them the answers, etc.
– The person I am interviewing may be taking too long to answer; they must not know what they are doing. The company may not be accounting for the fact that the person does have to do some interpreting in their head to make sure they understand what it is you want.
– Or the person I talked with does not in the end up working on my project, or I never see that person again. Maybe the vendor I am working with put certain people in place for the interview portion, who could interview well, and then I get stuck with someone else. Of course this situation more often would occur on a very large project, where it is more difficult to keep track of every single person working on your remote team.
For these reasons, I believe there is a better way, when working at a distance, to choose who is best to work on your team. How did companies such as MySQL (now Oracle), which had up to 75% of its work force working virtually, never met in person, decide who to work with? They actually saw their work! Most developers who ended up working closely with MySQL were ones whose work MySQL managers and exec saw as the developers were adding code to the MySQL open source code base. A great way to assess the work someone can do, by actually see what they can do!
Strategy for Success:
If you are looking to work with a person/s, or a team in a distant location, try actually having them do some work first. Look at the code that they deliver to you, for your actual system. A good way to do this is to work with your vendor to come up with a pilot project or a pilot/test period. Options for a pilot could be the following:
– One person working on several individual tasks, bug fixes or small enhancements for a set time period, one month, two months;
– Several persons working on several individual tasks, bugs fixes or small enhancements, as many as can be completed during a set time period of one/two months;
– Several persons working on a fixed scope of work, with fixed deliverables, with a fixed deadline.
There are many variants which would let you “try out” who to work with, for a short time period and for a reasonable price, that will give you a much clearer idea of who you are dealing with. This can work as well even if your particular product or application has a long ramp up period, i.e. it takes a while for any developer to get up to speed on your code and application. Feel free to talk with your vendor about different trial periods/pilot projects which will be comfortable for both sides and give you a clear idea of what the developers working on your project can actually do.