
Ask HN: How do you deal with an offshore team that is vastly underqualified? - hkai
I work for an average sized company (120+ people; 50M funding) and we have created an offshore development team in India because we are having great difficulties hiring engineers.<p>It seems that the 12+ folks there are a bit underqualified for our React &#x2F; NodeJS &#x2F; Typescript stack.<p>For example, I had to explain how to access a single item in an array and how to replace a string within a string.<p>Folks in that team that know about arrays simply produce code that subjectively seems to be lame. For example, when I see a `margin-left: -37.5em`, I know something is really off.<p>That&#x27;s the first part of my question - how do you deal with that?<p>The second part is, I&#x27;m trying to not answer their questions on Slack directly, and I&#x27;m answering with a question instead. &quot;Okay, there&#x27;s a function called `replace`. What arguments does it take?&quot;<p>I&#x27;m worried that they will get hooked on just typing a question to me instead of typing it into Google. I had similar experience in my previous company, when the offshore team in Shanghai refused to think and just asked us for anything, even 2 years after they&#x27;ve started.<p>However, some close friends commented that it might come off very arrogant and offensive if I don&#x27;t answer questions directly and show my dissatisfaction.<p>I also refuse to take &quot;just a short call&quot;s which tend to last half an hour and I can hardly understand anything. I prefer text messages.<p>How do I deal with all that? I&#x27;m only working for 6 months so I want to stay another 6 months minimum at this company.<p>Am I also being arrogant?
======
codingdave
Sounds like you need to have a call to establish some team norms in terms of
communications styles, coding standards, and expectations in general.

The business culture in India includes an acceptance of taking direction from
people who have authority over the work. But you need to be explicit. Give
them clear directions. Tell them what you want. Tell them why you want it. Do
not try the indirect methods you described - that isn't the style they are
used to. Be direct, and if they miss the mark, you can be candid in your
feedback, politely, and they will respond.

At the same time, get to know them. Ask them their backgrounds, why they do
the things they do. Learn their perspective. Let them learn that you value
them as people, not just offshore coders. And the more you get to know them,
and build trust across the team, the easier this will get. You will learn who
they are, they will learn who you are, and things can get better.

------
new_guy
If they're not qualified, drop them. When you pay peanuts you're going to get
monkeys (no racial slur intended)

You're having difficulty hiring engineers because you're either not willing to
pay enough or you're imposing stupid artificial constraints on your
requirements.

------
lioeters
> had to explain how to access a single item in an array and how to replace a
> string within a string

I think you're being too generous calling them "a bit underqualified". They
should be _disqualified_ for not knowing such basic operations. Otherwise,
you're paying them to educate them.

If it's not under your control to choose which team members are actually
qualified for the job, perhaps you could prepare required reading that covers
the basics of HTML, CSS, JS - for example: Learn Web Development.
[https://developer.mozilla.org/en-
US/docs/Learn](https://developer.mozilla.org/en-US/docs/Learn)

~~~
atmosx
Obviously the team cannot “hire engineers” because of $$$. You either got to
pay them or train them. There is no way around it. Hence option B is the only
real option.

------
dman
Instead of answering things piecemeal - organize a training session - perhaps
a week or two of intense training. That way you pay the cost one time and get
to benefit from the increased productivity.

~~~
masonic
They may find that if they train their current assigned staff well, the
outsourcer will just rotate those improved staff members out to other projects
and give you a fresh batch of trainees.

~~~
dman
This has not been my experience. In my case the staff is eager to stay on
because they think they will gather skills. Yes you do lose them a year or two
later to attrition because they land better jobs with their improved skills -
but you get a year or two of fairly decent work out of them. I consider that a
fair trade in terms of time - one week of my time to get one / two year of
good work from a team of 8-10 people.

------
cerberusss
What is your responsibility here? I'd focus on what you're responsible for.
You have yearly performance reviews with your manager, right? Well that's
what's important.

------
tmm84
I've seen this a few times. The offshore team will either get better (because
you've taught them CS101) or they will produce low quality source that'll be
poor unless you personally read each and every single line. Either way your
time is what the company is going to spend in addition to the amount they are
paying the offshore team. Do you want to constantly check line after line of
horrible source code and teach the offshore team? If you are okay with that
then I suggest getting a raise for such an arrangement. Heck, I say get an
assistant too because two sets of eyes covering the work of many under
qualified hands is gonna make things easier for you.

Bottom line, the company is padding the low cost of the offshore team with
your time, patience and expertise. Get some more cash for this and any extra
help they'll hire on for you locally.

------
verdverm
That's a tough one. I had a similar situation, though not that bad. I made the
mistake of creating an adversarial dynamic, for which I learned two great
lessons, one in communication and one in leadership. My bossome awesome is
fantastic.

If you're interested, I'm happy to get on a call to talk this through with
you. I'd also be keen to chat about an alternative to off shore development.
My email is in my profile.

------
iamnothere123
You hired the wrong people. Difficulty of finding good engineers is global.

------
jbms
Honest feedback. Say when it isn't good enough. Point it out.

I've never tried this, but as an idea: can you redirect their questions to a
full team chat and get their own team members to solve them? Saying "ABC asked
XYZ" might put the onus on them to up-skill their team and it might also show
you who's able to answer their questions on their side. After a while they
might just ask their questions directly in that.

------
davismwfl
The most interesting part is the comment saying the company is having trouble
hiring engineers so they went offshore. There is not a shortage of talent,
there is a shortage of talent at the discount price point the company wants to
pay. Not saying that to bad mouth the company, but understanding that helps
you to understand why you are getting what you are getting in India too, it is
the same there.

I have managed people in India off and on since 1999, and for the past 3+
years have been working at a startup where we have an entire division in
India, including engineering. So I have to deal with recruiting, hiring and
managing in India for engineers, I travel there reasonably often. One of the
key things to know, really good India engineers are being paid $35-50 USD per
hour, not $10-$18. Yes, you can find people for less money that are awesome,
but as a foreign company that isn't on the ground in India that won't happen.
You will get consulting companies that provide you people they are hiring for
8-12 lakhs INR (~$12k-$17k USD/year) and charging you what seems like a good
deal at $15/hr but this isn't a deal because you will be answering questions
like you are for the next eternity. Good consulting companies that employ more
experienced engineers are typically charging more on the lines of $50
USD/hour, you still aren't getting the top 20% but you at least aren't getting
the bottom 20 either.

To be very clear, there are extremely talented engineers in India, it isn't a
capability issue, but it is a numbers and recruitment issue. When I say it is
a numbers issue, India educates more engineers than the U.S. by far, and so it
is far more likely you are dipping into the 80% side of the pool not the top
20%. Engineers that are talented in India make very good money, in fact very
comparable to many European countries anymore. I know friends there right now
that are charging ~$50 USD/hr and they are a steal, here in the U.S. they
would easily be worth double in a consulting engagement.

So I only mention all that because essentially you likely have very junior
engineers that are just not familiar with either the framework in total or
just don't have the experience. And this can be hard to tell from their CV and
an interview because it may look great (if you even saw one). Also, when I
recruit in India it isn't uncommon for people with 3 years of experience
thinking they are senior and deserve more money but they are incapable of
doing basic tasks unaided, and so you wind up filtering through a lot of these
to find the good ones. Again, a bit of a numbers game.

As for what you can do. One of the things I love about the Indian culture is
they aren't offended by direct (but respectful) comments, and in fact they
prefer it as they feel you respect them more when you are direct (just
understand they will do the same generally). Of course it should go without
saying, but you should never be disrespectful of course. Being direct in your
feedback on what they need to do is also what makes them feel better in their
job as well, so their performance gets better. The key thing is don't make
this an adversarial situation, that will not benefit you or the team. Instead,
ask them to send you questions on Slack or whatever but give them guidelines,
and direct them to some resources where they can learn around some of the
common coding issues your team is dealing with or you see them having. This
will be warmly received, and appreciated. It will also start to cut down on
the number of questions because after 2-3 times you should refer them back to
the reference material, and document that you have done so.

My contact is in my email, happy to help you (give you ideas/tips) offline if
you'd like. And don't feel bad about the communication, I literally have over
20 years off and on of working with India based people and I still sometimes
struggle. I just tell them, hey I don't understand, can you slack me what you
just said or a lot of times one of the other Indian peeps will clarify for me.
No different than I have had that talking to people with a Boston accent, or a
deep south drawl and I am like WTF did you just say? I think of it the exact
same, no different IMO.

