How to handle offshore dev
Posted by Xydan@reddit | ExperiencedDevs | View on Reddit | 74 comments
So we recently hired 2 new offshore devs to help us with some of our work. During our standups my manager and I both have agreed that their experience is extremely lacking and that they will need lots of handholding.
However ive already worked with them on implementing one requirement and its become obvious to me that they absolutely have no real world experience.
This has caused every one of their assignments to be dragged through the mud, so much so that I've been leaned on to "help them". But help to them means everything from debugging, testing, documentation, etc.
My manager and I have both agreed that they need to get up to speed but I fear that I'm carrying their weight at the expense of my other projects and my manager isn't prioritizing my other tasks.
hostes_victi@reddit
How did they manage to get hired in the first place? Having no real world experience and still getting a job is something quite rare in these days
softwareengineer1036@reddit
Except for offshore devs, it's common. They hire tons of "devs" without education or experience for cheap think a few dollars a day.
hostes_victi@reddit
Huh. What a shitshow. How they would expect any software quality from these "devs" is quite strange.
HoratioWobble@reddit
They don't. That's the entire offshore business model.
Create a problem, convince the business it's another problem, add more resource, create more problems
MyThrowawayIsSick@reddit
Not wrong at all here. I've worked with two different offshoring companies and managed the teams and they all destroyed everything they touched they would create problems out of thin air and then try to convince us we needed to give them more money.
Scommel@reddit
Under what circumstances do companies choose to offshore, and what is the typical size of these companies?
metaconcept@reddit
A junior dev from India costs USD$5000 per year. I didn't miss any zeros out from that figure.
They cost less than the office coffee.
chengannur@reddit
More like 8000-9000 dollars. But yeah, that's a number on average, if they could spend 25000 usd, they could get a real senior as well (10 years exp) .
These are average salaries that employees get.
Prize_Response6300@reddit
In my experience it’s either shitty new management or the most common one is maintenance of legacy applications or when you need more resources for a short time. It can be useful for that because there is nothing easier than dumping an offshore developers when you’re done with them. Have a department at work that does that. They have a few iOS and android apps that they will hire offshore developers to help build up for a year or two then dump a bunch of them when it’s most maintenance and small enhancements to do. Rinse and repeat for different teams
danknadoflex@reddit
Virtually every Fortune 500. Because they can get 4 devs in India for the price of 1 US dev and to them we’re just a cost center and a code monkey is a code monkey
ohmyashleyy@reddit
Lots of big ones do. My company is about 500 engineers and in the last 6 years we’ve switched to be about 1/3 India. We have a big European presence too and basically don’t hire in the US.
Another company I worked for also pretty much only hires in India now. It might not be their first non-US, but once they’re global, they all shift towards India.
Prize_Response6300@reddit
I had an Indian coworker explain to me that there are really amazing Indian universities which are super competitive but it’s also a country of almost 1.5 billion people so there is sadly a lot of shitty universities as well that just hand out degrees or teach super out dated curriculum. It’s how you end up with the stereotypes of these offshore devs being a mess
ClayDenton@reddit
It blows my mind, this is such a common pattern: locally, have incredibly stringent hiring practices, only hire people are highly skilled, a good team fit and significantly invest in their growth.
Then... offshoring, literally just hire anyone who has a CV that says they're a dev (whether they are or they're not). If anything, the hiring practices should be even more stringent to ensure integration and ability to get on remotely. This way of offshoring is so lazy and cheap, doesn't suit the existing devs (they end up hand holding) or the company (they hired bad devs who wind everyone up, don't deliver well & it's bad for morale).
Better to open a local office and do hiring properly in the offshored country. But it is much more rare.
hostes_victi@reddit
A fintech company in EU hired me as an offshore dev. They would mail me the shittiest laptops they had (2 of them broke down within a few months), would give me the sewer-level tasks that no one wanted to do, and generally I felt excluded. I quit, and the lesson learned is: If the hiring process is too easy, then the job is probably the equivalent of cleaning toilets in the software world.
Prize_Response6300@reddit
Have you worked with offshore developers before? You will truly run into the most shocking lack of understanding possible makes me truly question how they even got a degree of it’s real
hostes_victi@reddit
To be completely honest, I have been an offshore dev in one occasion and since then I've refused to engage with a company if the hiring process is too easy.
The company that hired me was a fintech institution, and they wanted to rush the process. I had one interview, they asked a few questions and a few "formality" questions and that's it, they hired me on the spot. I thought they must have been impressed, but in reality they just wanted to hire someone asap.
The work I was given was just not what I was expecting. I had to do mostly grunt work, stuff that doesn't require much thought. Stuff like translate these templates, add this column, add more of these columns to the DTO, etc.
I quit after a few months, and the lesson learned for me is: If the hiring process is too easy, the work is probably cleaning toilets equivalent in software world.
kenflingnor@reddit
This is very common with offshore devs, especially if they’re coming from a large consultancy, agency etc. Execs at your company get wined and dined with false promises that they’re getting a skilled team of devs, when in reality it’s probably one mediocre dev with a bunch of devs that either have no real experience or are just bad developers
danknadoflex@reddit
They don’t know how to vet these devs and they sure as hell aren’t going to ask their internal engineering teams to do it so they fall for the sales pitch and you pay the price
marx-was-right-@reddit
Yup, of our 7 offshore one is maybe a 3 or 4 out of 10 and the rest are outright putrid. Like massive negative contributors due to timesucks from getting "blocked". And you better hope to god theres no offshore manager that can approve their PRs.
Xydan@reddit (OP)
This is the main issue. Our execs contracted this company for a few years now but only recently did our team obtain a few resources due to recent layoffs.
danknadoflex@reddit
Because cheap
marx-was-right-@reddit
Offshore on my team are exactly like described in the OP, many have senior titles. Cant do anything and many dont even sign in half the time. Clueless as to how its allowed as onshore has faced large cuts. I suspect there are 4 to 5 managers in a chain that are all afraid to tell the guy who orchestrated the offshoring its not working, because then they would get fired.
Latter_Difference836@reddit
Stop helping them, let them fail.
woopeat@reddit
This. It's difficult to let go when you feel ownership of the product. Management needs to learn the hard way that hiring inexperienced, unmotivated developers is a waste of money.
If they have good questions, they should get high-level answers only.
soft_white_yosemite@reddit
Management could see the lack of support as an attempt to sabotage.
kaladin_stormchest@reddit
This is where you have to play the dirty game. Make it seem like you're helping (and do help to an extent by sending documentations, examples etc) but don't do their work for them. Be sure to ducment you're helping them out by sending out slack messages and emails where everyone can see.
Let them fail despite "your best attempts" to help them
Codex_Dev@reddit
aka treating it like a "lost cause"
writebadcode@reddit
Actually that sounds perfectly reasonable and not like a dirty game.
kaladin_stormchest@reddit
Consciously sending out emails and slack messages to document that you've helped out is the dirty part to me.
In any normal team id rather help out without shouting that I've helped out. Because that's how my seniors did it for me and that's how id want to do it for any new joiners.
danknadoflex@reddit
Part of maturing is understanding that when you are on your employers time any sense of ownership is an illusion. The company owns everything.
woopeat@reddit
Responsibility, not possession.
krespyywanted@reddit
Do not do the needful.
anor_wondo@reddit
Now it seems obvious why everyone in this sub is so salty
Racists struggling to find jobs
Impressive_Moment640@reddit
I would retract that statement. This hasn’t anything to do with racism, and more about the subpar offshore engineers that can’t find their asses with both hands.
I have over 33+ years as a software craftsman, and I am currently unemployed. Over 150 resumes sent out. Crickets. The struggle for jobs is real and a lot of US engineers are resentful of the situation.
Any US based engineer that has had to work with offshore teams knows about the ensuing shitshow that occurs. It’s a nightmare. I’ve spent 20 years of this bullshit offshoring that I’m so ready to leave the industry. There are too few software craftsmans and a lot of really under skilled engineers. Code Academy for 3 months does not an engineer make.
There are many cultural differences that don’t fly in the Capitalistic world. Saving face when shit is burning in a fucking dumpster only works for so long. Same with the blame game. Claiming ignorance and misunderstandings is common and there are always delays in progress.
I’m salty and I consider that to be a positive quality.
This is my experience.
Watchful1@reddit
It's just about money. If your US company pays the offshore company half of what you cost and that dev gets half (or less) of what your company pays. And then they are incompetent because they've never worked a real programming job before, so they get kicked in 2 months of not doing anything. Then the offshore company just shuffles them onto a different account. The offshore company still makes a bunch of money, the dev still makes way more money then they could working somewhere local.
There are plenty of highly competent south east asian devs, they just don't work for companies that lie about them, and they charge way more.
It's not cultural, they are just trying to keep the gravy train running as long as they can by continuing to lie. I'm sure if the US was the poor country here there would be plenty of incompetent US devs doing the same thing the other way.
Prize_Response6300@reddit
Take as old as time. I hate to say it but odds are if they are offshore developers hired from some agency they won’t be great. Currently dealing with two “senior engineers” in India that are probably junior level they can only do things if you are very specific on step by step what to do.
The trick in my opinion to get the most out of them is make them do the tedious and more operations work if you can. But your company may also be trying to be replacing you so I’m not sure.
danknadoflex@reddit
You are training your replacements. This is how it starts. Your team will be 100% offshore with onshore PMs in a year or so. Let them fail stop helping.
budding_gardener_1@reddit
and the product will go to shit....not that c-level care.
danknadoflex@reddit
That’s the best case scenario. Worst is they’ll blame OP
alanbdee@reddit
You repeatedly send them a link to the docs. You force them to do everything themselves and if they can't, it's not your problem. Spend your time writing documentation for them to read. And constantly remind your manager that outsourcing like this never works and costs you more time then having in-house people.
Xydan@reddit (OP)
I like the idea of documentation.
Its hard to remind my bosses who they themselves were brought on through offshore agencies... to fire the offshore devs.
budding_gardener_1@reddit
....ah.
Which-World-6533@reddit
Leave now. Once a certain demographic gets a foothold a company is finished.
Just_Information334@reddit
If it is Indians hiring Indians (from the same region) you're on your way out faster than you think.
Aggressive_Ad_5454@reddit
I worked with some folks like that. We were patient, and we started out giving them simpler tasks. After a couple of years they got good, really good.
There’s no magic. New devs from across the street or across the ocean have to learn the company’s stuff. The offshore folks are highly motivated.
Somebody went to visit them once a year too.
One of the problems: The front office often pitches them as “like us but way cheaper” which sets expectations for instant productivity. That’s not realistic.
If they totally suck say so. But if they’re trying and learning, be patient.
Bitani@reddit
Great job training your replacements. I’m sure there’s enough $$$ to go around. /s
If you’re not giving absolute minimal effort to help offshored budget devs, you are daft.
Comprehensive-Pea812@reddit
Easy. Don't go the extra mile and in fact use the time for yourself.
Let higher up know adding people will put pause on progress until they are up to speed.
inb4redditIPO@reddit
As an 'off-shore' dev, I have to ask you - have you ever joined a company with decades old code base with spaghetti code, poor documentation, out of date code-comments, non-descript commit messages, tribal knowledge that has vanished with the original author etc. and yet expected to magically contribute with minimal onboarding? If you have never changed companies and spent most of your time on one code-base, it is easy to underestimate the difficulties involved in on-boarding a new project.
If you gave them a problem that is standalone and unrelated to the current-code base, can they solve it based on CS fundamentals? Depending on what the answer is, your company either needs to be better with onboarding (or) needs to improve its interviewing process.
GentlemanEmu@reddit
Ugh! As a fellow "off shore dev" who's had to work on old code bases; this is such a huge problem! It takes ages and ages for anyone to be onboarded onto such old projects. There are builds which fail, documentation that's just tribal knowledge, surreptitious sabotage by onshore devs who are guarding their jobs and heaps of knowledge that's just lost to time!
inb4redditIPO@reddit
The perils of working on enterprise software. Sometimes I envy freelance app and web devs who get to write their own code without having to deal with such difficulties.
Grymm315@reddit
You have paid interns.
kri5@reddit
All interns should be paid.
This is just low quality hires
denialtorres@reddit
What country are they from? (I'm not American, that's why I'm asking)
zck@reddit
"Manager, how much time do you want me to spend helping other employees? That time will come out of time working on my other tasks, and so obviously I won't be able to make as much progress on other projects."
xSTUDDSx@reddit
Not that I don't agree, but you're using the word 'employee' very loosely. They're offshore contractors hired to do the same job as an employee, but for less money. Those contractors will not be apart of any FTE mtgs bc they aren't...FTEs. Just disposable people that sometines...are hard to dispose of.
Companies can say what they want about quality, but at the end of the day it's always speed to market at the lowest cost possible.
What they simply can't fathom, which precedence has shown, is that it results in major setback and can result in catastrophic errors that causes the company $$$.
But hey, they saved money on the frontend.
zck@reddit
Maybe! They could be offshore FTE employees. The post doesn't specify, but OP might have in a comment I didn't see.
I'm not sure it matters at all for what OP should communicate to their manager. "You want me to do this? Sure, boss. Happy to. Here's the effect of me doing that. Sound good?"
And I 100% agree that it's so short-sighted on the company's part.
xSTUDDSx@reddit
You bring a good point! I should clarify, I work for a company that would not permit offshore FTEs, so my view may be biased.
In my experience, it's often a promotion of talent from the contacting company, that is in no way delivered on, and as a result means constant hand-holding.
Not saying you can't find that gem in the rough if you're lucky tho!
MyStackRunnethOver@reddit
This. You ask how to prioritize. You prioritize like that. You ruthlessly communicate the split to your manager
WorkingEncouragememt@reddit
If you help them and it looks successful to management, you will be replaced VERY quickly
adappergentlefolk@reddit
just ignore them and pick up tasks independent of them as much as possible?
uniquesnowflake8@reddit
When I was told my primary task was to shepard code in from overseas devs and train them I realized I had to change jobs…and did
fhadley@reddit
You need to find a reason to bring this to a head and in order to that you need to give them just enough space to unobjectionably fuck something completely all the way to hell. Ideally this is something you catch just before it goes to production after weeks of being fired in zombie status. Or even better it goes live in some internal production-lite environment. If you don't force some issue here, this takes months to years to resolve.
Kolt56@reddit
Been there, done that. Plus tied by the golden handcuffs. Had 20 percent of my time allocated to upskilling an away team as a deliverable.
It got me a promotion but at great mental cost, with endless rabbit holes. I plugged those gaps, with automation via linter and tests, to be the most scalable coach/mentor ever. Exhausting.
I went on holiday, and sitting on the beach being pinged by this away team, I got a great idea.
I bought a chess timer but more like a stopwatch.. the kind you can slap. One hour each day.
Sorry, I’m only allocated 20%. Let circle tomorrow. Amazing results.
Otherwise_Repeat_294@reddit
Don’t help. Today you help, take h1b, you are replaced, let them die, remove the yes man/sir that lie about expertise and knowledge for cheap money
Abadabadon@reddit
You minimize how much you help them and when they do need help you stick to a strict regiment of baby steps.
midasgoldentouch@reddit
When you say recent, how recent? How long does it take people to get up to speed on your system in general? Is there a lot of overlap in working hours for these 2 new devs and the rest of your team?
Shot_Instruction_433@reddit
Hire a new offshore lead who is a better developer and a good communicator. Always communicate through this lead. Offshore Devs improve a lot if they have a mentor who speaks their local language.
BillyBobJangles@reddit
Let the offshore team fail. If you can work really hard and actually make them competent your reward will be being replaced by them.
hitanthrope@reddit
Have you considered sinking their boat? (Little 'offshore' joke there).
Here's a radical proposal though, have you considered firing them? Unless you are a charity you don't really have an obligation to people who have lied about their experience, unless of course you hired them knowing they had 'absolutely no real world experience'.
It sounds harsh and nobody likes doing it, but if you are paying them, they are supposed to be making money not costing even more.
Haunting-Ad5803@reddit
You can hire me instead, I have enough experience to debug, dissect and fix bugs. All for fraction of cost. ☺️
Joking aside, programming language can be learnt and business domain is the one you can help them with.
Nofanta@reddit
Normally, when someone does t have the skills to do the job they were hired for you’re them them and hire people who do. Why waste time and money on this?
jeronimoe@reddit
Employees or using a contracting firm? If employes then how did they make it through the interviews?
If contracting firm tell your client services person there they aren't working out, the reasons why, and what skills you are looking for to replace them. You should be able to interview, red flag if they just keep throwing resources at you that don't know what they are doing.
Jmc_da_boss@reddit
Ignore them, offshore is never worth your time. Just let them sit there idle.
metaphorm@reddit
I don't know why you would retain their help if they aren't helping. I extra don't know why you would try to help them get up to speed if you have no confidence that they're capable of it.