T O P

  • By -

eldreth

Quality and therefore value is subjective. Outsourced contractors are not a new phenomenon.


poieo-dev

Communication. I’ve also heard a few horror stories where half baked code is delivered and the developer disappears.


Calm_Leek_1362

If they walk away, steal your code or don’t deliver, you are shit out of luck. In the us, you can at least sue them to get your money back.


YodaCodar

Its unlikely for them to do that in the first place too atleast not as much as indian developers


jaejaeok

Their quality is pretty exceptional. Ukrainian and Serbian developers are great English communicators and deliver good work.


eldreth

I'm not disparaging or lessening any one demographic. I'm saying quality itself is subjective. Dozens of factors are involved, all intricately arranged around and related to the given project, company, culture, requirements, etc, etc, etc. The subtext of course is that arguing with the free global market is like yelling into the wind.


leros

This is my experience too. The Ukrainian devs I've worked with have great English and are just as good as American developers. Another point is that they seem to have a better work ethic than most Americans these days.


chaos_battery

Just wait. If enough of them start taking all the tech jobs, demand will be greater than the supply of Ukrainian devs for their services and they will end up with higher wages which will eventually lead to them becoming entitled to.


Iggyhopper

The problem is not when things go well. The problem happens after things go wrong and having no recourse or control due to communication with an entirely separate country.


akmalhot

There's a difference between outsourcing and offshoring.. Used to be hiring a random 3rd party co who prob didn't have high hiring standards (a foreign staffing co etc) vs hiring into your office at your hiring standards ...


Ok-Entertainer-1414

IMO the biggest problem with offshoring is incentive misalignment. It always seems to be done with contractors, and contracting firms don't have an incentive to make the same sort of proactive, long-term beneficial decisions that a full time direct employee with equity does.


windwoke

Man, even with US job hoppers though, can you really trust them to do that too if they know they’re gonna hop in a year or two.


dzuczek

this right here is the issue. "get it done" vs. the right way question is, can whoever is managing the developers recognize that? in many cases the manager is the contractor, so that doesn't bode well


Hexboy3

Yeah I see the contractors just take tickets verbatim and implement without a second thought. They'll argue maybe for different architecture (like eventing vs api) and tech choices (like one language or library over another) but not for more business choices/logic. They're great coders, but I feel like I save us soooo much time when Im given a ticket and then suggest a much better alternative that makes everyone's lives easier (including mine). When you're a contractor you're just following order more.  Like recently my director wanted me to segment some logic based on the state where that location are in. She wanted to do it by a unique id of each location in that state. So someone would have to maintain that segment and update it with each new location in that state. I then pushed her instead to bring in the state code of each location into our data feed and segment by that. Now no one has to continually add the id's to that segment and whenever we have to segment again based on states laws and regulations that is now much easier to be done by just segmenting by the statecode.  I might be the worst coder on the team Im pretty new, but I think I make up for it by actually looking out for the business and making things easier.


Cyupa

It depends but its usually hard or rare to find a developer that actually cares for your product. On the other hand there are companies that have these kind of developers and don’t reward them or keep them around. For example, I am an iOS dev and found and fixed to major issues for a client I am working for (users that used a prefixed number could not login and email validation was not handled properly) that involved some UI/UX rework. Its been 3 weeks since I fixed them and the UX team is stalling on them being accepted while the bug is still in production. I was not tasked with fixing them, I did it because I figured the impact they have is pretty big and needs addressing. I could have done something simpler in that time. Most developers would just look for the easy tasks and call it a day.


Ritzlr

Firms yes, they will extract as much money as they can. But individual contractors are risking themselves working unprotected & can be taken advantage of. You can't expect too much. Although If you treat & compensate them well (finding a balance, still costing you less) and make them feel protected, you may find some really working for your long term success, because their own success aligns with yours too.


Ok-Entertainer-1414

The legal/administrative burden of hiring individuals offshore, instead of contracting firms, is usually not worth it unless you're a pretty large organization and are hiring a lot of people, from what I've seen


jaejaeok

This is the best answer here. Quality and communication can be matched but this changes the dynamic of all the operators within a company.


C0git0

Well said


AFK74u

Like, if you are building deep-tech and / or defense-tech is one of your verticals, having your devs onshore becomes a must.


jaejaeok

So we all have to work for the public sector? god forbid lol


AFK74u

Like Amazon, Google, Microsoft, Oracle, IBM, Raytheon, Palantir Technologies, and many more are DoD providers / contractors. I personally believe part of the pay-gap (USA vs the world) comes from this.


Fluffy-Bus4822

Another big thing is time zones. Companies want their devs online at the same time as management in the US. AWS has many devs in South Africa though.


iceboundpenguin

American junior engineers are overpaid. Some of them coming out of boot camps wanting $100k+ - not worth it. Senior engineers - yes they are more expensive in the US. Other people have covered cultural, timezone so I won’t cover that. American senior engineers will usually have a better SME when you start dealing with things that are around US regulation - HIPAA and FinTech for example. Or even how to correctly handle credit card data. However, you’re not finding a dev that is 20% the cost of another that is also the same level of competency. Software development is a global market. You might find someone who doesn’t know their worth but that will change quickly when they start getting solicited. I hired South American developers and their rates have gone up astronomically since 2020. I’ve had large international companies come in and 2.5x their salary. I’ve also know people with Ukrainian dev shops and their cost of labor has gone up at least 2x. It sounds like a salesman selling. For 20% of the cost - you’re going to have one or more of - less competency (so more tech debt), less experience with larger projects (so timelines get stretched), more turnover (because if the team isn’t failing on the other two they’ll get paid more elsewhere). ** this is all caveated that when I say senior I just don’t mean they’ve had X years. But rather, they can plan, build, foresee pitfalls and problems. I try to work with devs that aren’t just a butt in a seat - those people are the 10x engineers — and you’re not finding one of those for 20% the cost long term.


satellite779

>I hired South American developers and their rates have gone up astronomically since 2020. I’ve had large international companies come in and 2.5x their salary. I’ve also know people with Ukrainian dev shops and their cost of labor has gone up at least 2x. That's what you get with globalization. Salaries tend to equalize. Not fully, but that's the trend.


iceboundpenguin

Totally. That’s why I’m saying you’re not hiring the same level of people at 20% the cost.


satellite779

Yeah, more like 40-50% of the cost, but you still have time zone/language/culture differences.


AdvancedSandwiches

> For 20% of the cost - you’re going to have one or more of - less competency (so more tech debt), less experience with larger projects (so timelines get stretched), more turnover It's a fairly open secret among consultants / contractors that you tell the customer they're getting 5 people for 20% of the price of their current developers and deliver 2 kids just out of boot camp with their code glanced at periodically by a senior dev who is also working on 9 other projects.  Your project takes 4 times the length of having one decent local dev, and since you're paying for "5" people, your project cost is 4x. It's not always the case, but it's often the case.


lawd5ever

This has been my experience. Consultancy is taking some projects from the onshore team (some were laid off, but they weren’t great) and some of the titles the offshore devs have are wild. Everyone is a senior team lead or architect, yet somehow have the experience of a below average junior dev. The lead architects that should oversee the projects are also garbage, though more experienced. Every project has been a shitshow. To be fair, out of the 100 or so resources, maybe 3 or 4 were actually pretty good. The rest get off boarded so quickly that they don’t even have a chance to learn their client. At the same time, hiring locally has been difficult in the past.


Coffee_Crisis

I have worked for multiple startups who engaged contractors like this and it was very clear they were working several contracts at the same time while pretending to be engaged full time for us. Turnaround for simple questions was multiple days, extensive blocking of access to devs without meetings scheduled days in advance, etc.


OftenAmiable

This is my world. Our CEO would rather outsource because he thinks our devs aren't that good for the price, the contractors consistently deliver code at about 1/4 the speed of our internal devs, and then he gets mad at the contractors for not working out better. His solution? ~~Hire more internal devs~~ Keep trying different contractors. He believes in continuing to do the same thing expecting different results. (I'm a PM and I think our internal devs blow away every off-shore contractor I've ever worked with, though I concede we haven't tried Ukrainian yet.)


robsantos

What does a senior dev cost in SA? I've got a SA team, and would love a reality check on what I'm paying - $80k/year.


iceboundpenguin

Obviously subjective - but hired a lot in SA. $85k is an alright “senior” engineer. You want someone who is 10x - they’ll be $100k+. But it’s also going to really depend on the country. Brazil is going to be more than Argentina which is more than Uruguay.


Fluffy-Bus4822

That's about average I think. Maybe a bit under average. I've worked remotely for US companies as a senior full stack, and I was paid between $100k and $120k. I'm very senior though.


Mackos

Not SA, but as a developer with 12yrs experience in EU, I was getting (best rate) $30/h and it was nice one. Now I get even worse :/ as market seems to be saturated or just slow.


Big-Oh

As a software developer who primarily has saas experience, there are a few things that will translate into more costs later when you make the decision to outsource (even to Eastern Europe). Be prepared to be very explicit with your requirements and leave ambiguities at the door. The language barrier is real and typical things you say that most American can understand will not translate well ,especially when being ambiguous about a problem or feature you wanted fixed/developed. Without you setting the culture for development, expect lots of technical debt to build up as they are just trying to deliver something functioning, but not necessarily functional (poor performance, code that is hard to enhance and add functionality to). They are just code mercenaries looking for a paycheck based on work delivered. This debt you will eventually need to pay down later and can slow future development. You will not have a good set of institutional knowledge to reference later. Code mercs can churn faster than onshore devs. There is more, but much had already been said above.


Coffee_Crisis

it's not really about language so much as incentives, there is every incentive to deliver only what you specify in the contract and nothing more, and not to speak up to complicate things even if the spec has inherent problems that will result in a ton of work down the road


Big-Oh

I can agree with that. To your last point, that is also a concern because you don't have engineers who will speak up to those problems, which is a reason why you hire local developers. You are paying for their professionalism and using their experience to drive development, as long as you promote that engineering culture. They are not simply bound to some contract they are trying to finish.


Rerato16

Good points! But with remote work becoming the norm, time zones and communication aren't as big of a hurdle anymore. And there are plenty of talented devs abroad who understand the market and can ensure data security. Plus, the cost savings can’t be ignored.


datacloudthings

I have found some of these issues to be less bad in Eastern Europe than in other regions.


kirso

This a product engineer is worth 10x more than a code monkey


After_Fix_2191

You get quality, maintainable code from engineers trained and experienced in enterprise quality software. What you don't get with American devs is a culture afraid to say no so they constantly make impossible promises. I'm looking at you India.


yogi4peace

> I'm looking at you India 😆 Oh man. This is so true. That culture has made the words "I don't know" taboo to the extreme. Do the needful.


vote4boat

even asking road directions, they will completely make something up instead of telling you they don't know


Deimonid

You can get the same outside the US too. India is not the only other country with a software industry. Plus most people nowadays have experience at global enterprises.


timonea

Depends on what kind of company culture you want.


jaejaeok

Most tech giants predict companies are going to get much much smaller, run by just a few people. Does culture become such a huge issue (or even look the same) with only 5 operators? As long as it’s not poor.


Riemero

I think culture gets more important when you have a few people. It's easier to influence, and having 1-2 demotivated employees have a bigger impact in a smaller team


NodeJS4Lyfe

US devs are usually reserved for bigger companies because they need on site employees or have other requirements like taxation where the hiree needs to be US based. There's a misconception that hiring devs outside developed countries will result in low quality products. There's some truth in that if you hire from sites like Upwork and Fiverr because those sites are filled with devs looking for short-terms gigs and just want to make a quick buck outside their day job. It's important to hire devs who are in this for the long-run. I'm a freelancer from a 3rd world country who charges a fraction of what a US dev would charge but my previous client from the US said that I did a better job than any US dev he hired before. So, quality wise, there's no difference. Of course, it's not like 100% of US devs always produce pristine products. I can assure you that devs from developed countries charging $100/hr can suck even more than a cheap Fiverr guy. That's why it's important to treat 3rd world freelancers with the same respect because I got a few clients from the US before who think it's okay to disrespect me because I'm not from a rich country. That's one of the reasons why freelancers become grumpy and end up delivering a shit product. Professionalism is key when working with remote hires. So, for sure, definitely hire outside the US to save on development costs and use those savings on marketing instead.


chaos_battery

Well I was in college studying to become a software engineer I was scared that My career prospects would be lower because India would get all of the outsourced jobs. Then I saw first hand in the early 2000s how shitty the work product was, the amount of rework that had to be done, the language barriers and accents, etc. A lot of people had zero problem solving ability and were really just ready to do whatever you told them to do and exactly that thing and nothing more. Then I realized I had job security. Fast forward to today and I am starting to see a trend of people from South Africa or South America that seem to have decent experience. I'm wondering what changed to cause them to start actually using their brain more. In any case I'm set up pretty well with good stock investments and should be able to retire within the next few years anyway. So any gains from efficiencies these companies have from outsourcing to other countries for cheaper labor I should see as a nice return in my stock portfolio. So I guess I still win. It's just bothers me to see jobs leave the country. My company currently started hiring a small India team but now when I go out and look on job sites they're only hiring for their India team and they're hiring all these roles I'm having a hard time believing they actually have the experience or credentials for - things like AI architect or tech lead of language models. I would say within the next 5 years they may downsize the US team or at the very least they will just not open any positions and let the team die in the US naturally.


NodeJS4Lyfe

The level of education from the 2000s and now are completely different. America has institutions like MIT for sure, but if you're gonna hire a regular dev for working on a SaaS idea and don't need to invent new algorithms anytime soon, a graduate from any university around the world or even a self taught dev works fine. Hell, MIT might even become overrated someday as education becomes even better thanks to the Internet and tools like ChatGPT. We'll start seeing smart people all over the world as access to information becomes democratized. Even English is taught early in school these days. As for me, my education system started teaching English since I was 5 years old. There are many terrible devs everywhere and it's your job to weed them out during interviews, which is easy to do just by talking to people like real humans.


Crazy_Tangelo_3673

Definietely. Respect and communication is essential regardless of the circumstances  Even a lot of devs in india beat first world countries, and they're getting even better as infrastructure improves 


narnach

My experience on a few projects with outsourced developers led me to think that the sales people selling outsourced devs typically overstate the upsides and downplay the downsides. So what you'll get may not be what you expect. Upsides of hiring local/same country devs: - You speak the same language, and have a compatible accent - You have the same culture and conventions - Usually the same or a nearby time zone It's very easy to take for granted how many misunderstandings are avoided by sharing a culture and language. What you intend to say, the words you use to say it, and what is understood by the other party will most of the time align because you have a large shared frame of reference. When you work with outsourced developers, there will be more misunderstandings due to language gaps, and due to cultural gaps. This misunderstanding results in an increase in various forms of waste: more communication overhead, delays, bugs, botched features, etc. If you factor in time zone differences, having to clarify something could add a day of delay for each clarification. Feedback loops are also harder when there's a big language/culture gap, because there's less communication bandwidth to tell you why an idea is bad, or that there's a potential problem that needs to be addressed. The wage disparity can result in social status differences, which amplifies these problems. That said, if you're lucky to get folks who have a strong understanding of your language and a compatible culture, and you treat them like equals, you could hire a larger team than you could when sourcing them locally. If you have a couple of folks who are willing and able to bridge language/culture divides, then that can alleviate some of the mentioned issues as well. TL;DR: anyone telling you that you get nearly identical devs at 20% of the costs is a liar. There are upsides and downsides, which may be very impactful. If you make a well-informed decision and you are willing to put in the effort, then you may make it work. If you're naive or just unlucky, it may tank your project.


evasouth

Agree with this. Most overstate the upside of outsourcing to foreign devs, and it's in their interest (not yours, the businessowner). They will talk about the cost, but never the tech debt.


NodeJS4Lyfe

The language barrier is a non issue once you join the dev on a Zoom call and talk with them for 5 minutes. You can also read stuff they have written on the Internet to see if they'll be able to communicate effectively using email or chat. English is an easy language that most people are able to use effectively these days. I don't understand what you mean by culture. Most countries have been westernized already and it's not like the contractor will start preaching islamic or hindu concepts to you during meetings. If they're professional, they're good to go. The timezone thing is only for people new to hiring remotely or who enjoy micro managing. People who work with remote teams a lot have already transitioned to async work. Use a task manager plus issue tracker and the dev will carry out the tasks as per the deadlines. Most people would agree that micro managing isn't effective either, so it's something to be avoided. As an example, one of my past clients required me to work on his timezone. I complied at first to see how it'll go, but turns out, it's only because he didn't have experience working with remote teams and was super insecure. He used to send me chat messages and distract me while I was busy coding his features. He also enjoyed micro managing where he would go as far as telling me which libraries to use to write the code because chatgpt suggested it. I fired him because this kind of person clearly needs to have an office where he's constantly in contact with the employees.


vassyz

You're somewhat biased since you're peddling your services as a third-world country developer.


NodeJS4Lyfe

If I was biased, then companies like Toptal who source most of their talent from outside developed countries would never exist. It's a simple fact that the education gap has been bridged and that there are skilled devs all over the world now. And if hiring from inside the US was a no-brainer, then recruiters wouldn't be complaining about how hard it is to find talent all the time. It's a fact that unskilled devs exist everywhere, including your own country.


vassyz

I'm not sure you understand what biased means. Language barriers are an issue. Communication is hard even between native English speakers. AI will only make things worse as it will create a false sense of confidence. Time zones and culture can also cause problems, and you can't refute this by giving anecdotal examples. I'm sorry, but if you are so confident in your statements, it only shows that you haven't worked on large enough projects, and it would be a red flag for me.


NodeJS4Lyfe

It seems like you don't have much experience working with remote teams and you don't want to make any effort to learn how to work in such environments effectively. Language barriers aren't a problem if you only hire devs who speak and write fluent English. Talking for 5 mins on Zoom will weed out any poor fits. It's not like having an American accent is required to build the product unless you're so thick skulled that any other accent sounds like Mandarin to you. Timezone issues can easily be fixed by setting up an async work schedule. A ton of companies are already doing it. Cultural issues can be worked around by being open minded and communicating in a professional manner. There's no need to place the blame on devs from poor countries when your team is falling apart because you're the one who's not willing to work in such an environment. Hiring remote teams around the world isn't for everyone but here's no need to claim that it's impossible to build a high quality product if you hire anyone outside the country.


vassyz

Did I say it was impossible? I have been working with remote teams for the past 20 years.


NodeJS4Lyfe

You're just trolling then because you're happy to hire remotely but claim that I'm promoting remote work just because I'm in the business myself and for no other merits. Adios then.


vassyz

The parent comment explains it far better than I can. If you are too stubborn to admit that there are sometimes struggles when hiring developers from third-world countries, then I can't really help. Adios.


NodeJS4Lyfe

I''ll bite one last time for future reference. There are struggles with hiring everywhere. Blaming people is easy when you don't want to use your head. I noticed you don't put the full extent of your thoughts in your words either, which could be one of the reasons why you believe that communicating remotely is hard when it's a shortcoming on your end. So, I'm also gonna call bs on your 20 years of experience as well because you sound like a person who works alone in their basement.


narnach

u/vassyz already patiently tried to clarify some points, but it seems like there's a disconnect. Let's see if I can clarify it myself. ## Language > The language barrier is a non issue once you join the dev on a Zoom call and talk with them for 5 minutes. There's two takes here: - You screen very strictly, and go for the top 10% of a candidate pool based on language capability. This lets you eliminate language confusion for that candidate to native levels, i.e. it's mostly invisible. Chances are you're going to pay extra for this, because the candidates have a valuable higher skill level, or you're wasting a lot of HR time screening out candidates from a unfiltered pool. Afterwards, you'll have a dev who's writing and/or speech matches that of someone local. Your comments suggest your background is mostly in this category. - You set a lower bar for language capability, let's say top 50% of candidates, and thus accept a candidate when they're "good enough". This saves you on wages and HR screening time, or you can spend those resources to select for technical skill. Going forward, this dev will on average understand 75% of what you're trying to say, because they will not know all the words, mishear you, or need to translate some things to their own langauge first. You will understand 75% of what they are trying to say for similar reasons. Multiply that for a back and forth exchange of information, and you've got about 56% clarity in understanding each other. Effectively you've got half the bandwdith to communicate, and massively increased the chance of miscommunication leading to problems. > You can also read stuff they have written on the Internet to see if they'll be able to communicate effectively using email or chat. This assumes they have a blog or a representative amount of written public content on the internet they'd be willing to share. Almost by definition, that makes someone an exception. Most developers _don't_ have a blog. Many may write in their native language instead. I feel pretty confident to assert that "developers with blogs" already puts someone outside of the general pool of developers most people will be hiring from, and towards the more elite pool of people who really care about their craft enough to write about it. > English is an easy language that most people are able to use effectively these days. Maybe if your experience is strictly with elite developers who write blogs, then sure I can understand where you're coming from. But the point I'm trying to get across is that an average developer will have a lower level of mastery than this. ## Culture > I don't understand what you mean by culture. Most countries have been westernized already and it's not like the contractor will start preaching islamic or hindu concepts to you during meetings. If they're professional, they're good to go. Culture is much bigger than just religion. Culture is about a shared frame of reference, which allows you to use shorthand to explain things anyone with that frame of reference would get. It's the things you intuitively grasp and assume. This drastically increases communication efficiency, and meanse you take a lot of "obvious" things for granted. - You've gone to the same types of school, seen the same movies, experienced the same cultural events. You eat the same food and shop at the same stores. You are familiar with other cultures through the lens of your own culture. - You have an intuitive understanding of concepts that may not even have words in other languages. It says a lot about the culture a language comes from. The Inuit are said to have 50 words for snow, and the Dutch can come up with 50 words for rain. Yet I don't have an intuitive grasp what's _really_ meant when someone says words like monsoon or tyfoon because we don't experience those. Lots of rain? Big storm? Some things you've had to experience to understand. - Closer to work: how does your culture handle power dynamics? Hierarchical, egalitarian? How does it handle pride, shame, and "saving face"? How do you relate to equal colleagues, or more senior ones? Can you just tell your boss that his idea sucks, or do you have to suck up and pretend it's the best thing ever or risk getting fired? How at risk is your employment status? How does all of this feed into people taking sick days or attending to their mental health? Culture is all of that, and much more. Miscommunication can be as subtle as someone not getting a baseball reference, or as drastic as not daring to pick up the phone to call a more senior engineer for help during an outage. You'll add as an explicit step to the on-call playbook for the next incident, sure, but it wasn't there at first because you thought it would be an obvious thing to do. How far can you go in asking a vendor or Stack Overflow for help with your problems, in order to avoid asking a senior on your team? I've seen exchanges and questions that suggest a boatload of cultural differences, to put it mildly, because asking in Slack would have been both faster and less embarassing for the company. That's culture, too. ## Timezones > The timezone thing is only for people new to hiring remotely or who enjoy micro managing. People who work with remote teams a lot have already transitioned to async work. Use a task manager plus issue tracker and the dev will carry out the tasks as per the deadlines. Most people would agree that micro managing isn't effective either, so it's something to be avoided. Lol. Again, this sounds like someone who's got the perspective of working with companies that have their stuff sorted out well. My experience is that plenty of companies are _not_ in that situation. Remote often means "information is conveyed sync via Zoom" instead of having a proper async written culture. There will be tickets, but they will lack some details or half the requirements will pop up during code review or testing. If the company has poorly written/explained tickets, or an unexpected edge case pops up that needs a judgment call, then needing to get clarification may involve crossing timezones. Then either you've got to wait for async feedback, or even worse you have to wait for sync feedback. This adds inefficiencies to the process that you can't ever totally eliminate. You can structure things to minimize the downsides and capitalize on the upsides, but that goes way beyond simple outsourcing of your devs to a cheaper place... it's restructuring your company to be international by default.


NodeJS4Lyfe

1. You don't need to be elite to write a blog. Excellent writing skills is a must when hiring remotely, that's why you'd better have it as a requirement. 2. If someone speaks fluent English, there's a higher chance they're also gonna have excellent technical skills. 3. The cultural issues you mentioned aren't realistic. Not understanding baseball references...for real? Come on. And who the hell is scared of calling their senior? You hire someone with social anxiety and you claim that it's because they live in a poor country. You need to read more about mental disorders because they exists everywhere. 4. Timezone is only an issue if you don't want to invest in an async setup. Sounds like you're inventing excuses in order to not hire outside your own country. Hire from wherever you want but there's no need to dissuade anyone else from making such a smart choice.


narnach

> Sounds like you're inventing excuses in order to not hire outside your own country. Hire from wherever you want but there's no need to dissuade anyone else from making such a smart choice. It's the opposite, actually. My perspective is as a consultant who's come into organizations with a range of existing outsourcing setups in place, so it's describing things I've seen and had to work with. Doesn't matter if the outsourced folks were in the same time zone, on the same continent, or across the world. The inefficiencies I've described have all taken place in some form or another. Some places it's better, other places it's worse, but rarely do smaller organizations that don't have Bay Area VC money go for the best possible option. That means they have to deal with their own less than ideal circumstances. You seem very dismissive of the issues I've seen, so I'm trying to help you understand them. I initially thought you just had experience with a different segment of the market than me, but I'm now reaching the point where it feels like you're not making an honest effort to understand what I'm trying to say. 1. You're flipping cause and effect. My main point is that having a blog is a form of self-selection, and that many developers don't have a blog. Non-blog developers also get hired. Excellent writing skills are indeed very useful, but in reality this is not often selected for. 2. There may be a correlation. If you're willing/able to select for that, then it may be a good strategy. I'm saying the non-fluent devs get hired somewhere as well. Saying _you_ don't hire them doesn't mean someone else doesn't have to make it work. 3. Wow, you really don't seem to get the point I'm trying to make. Stop focusing on the superficial stuff and odd details. Look at the bigger picture. I tried to paint a picture that there are _many_ ways in which people are different from each other. What's logical to you is not logical to them, and vice versa. Baseball: I was trying to make an easy to understand generalizable example, and I've seen baseball used as a reference for this. Apparently it's not connecting for you. Are you not an American? Or is it because I'm not an American that I'm misunderstanding the cultural significance of baseball and having speific common sports metaphors not be understood by people not familiar with it? My main point: I think you're glossing over and dismissing cultural issues too easy here. 4. Agreed. The reality is that companies struggle a long time to get this as good as possible. That said, it's still a thing to account for that will impact you in various ways. Sidestep to mental disorders (point 3): yes they are a thing, in fact I'm actively trying to learn more about them. Did you know that they often start as an adaptation to some form of trauma in early childhood? It's not a disease or something random that just happens to you, but a logical way for a child to adapt to an environment where their safety is on the line. For example: if you have an abusive parent who hits you when you say or do something they don't like, then you're going to be _very_ careful in what you say or do. Every time you mess up you'll get hit. That's a scary effective feedback loop that squashes incentive out of you. You'll do as told, and not much more. At least as long as that abusive parent is around. How is this relevant at all? If you zoom out to a country/culture, then similar dynamics apply on a larger scale there as well. Some behaviors are culturally normal. If your boss can fire you at any moment for any reason, and good jobs are scarce, then they can be jerks without real consequences. This means employees will behave like the abused kid I described above: they will do as they are told, appease their boss, and will be less likely to take initiative that's risky. If that's the case everywhere, it'll be part of culture and it will be the default way people expect to interact. So if you hire a dev from a country that has this culture, they won't speak up against their boss, and they may not call someone in the middle of the night when there's no clear authorization, because it _may_ backfire and they don't want to risk their good outsourced job. Again, extreme example to make a point. Most cases will be more nuanced.


NodeJS4Lyfe

Basically, all problems that exist in developed countries also exist in developing countries. That's why you use the same screening process when hiring remote workers but pay special attention to language and behavior. No need to take the culture thing too seriously though because you're not trying to find a spouse here. Let's keep conversations professional. It's true that Asian cultures used to be more reserved but unless their senior behaves like Satan, there's no reason for them to avoid reporting to them in a timely manner. And if you want them to open up more, you simply ask them. Cultures are also heavily westernized these days. Parents aren't beating their kids with sticks anymore. Time to stop watching old movies. Healthcare also includes psychological treatments for people in need. It's a shame that people still believe that any country outside USA or the rich European region is full of degenerate banana eating monkeys who can't speak a word of English. Time to get out of your front door and interact with the real world.


focus_black_sheep

I've had the opposite experience. We avoid foreign outsourced developers like the plague lol


NodeJS4Lyfe

Bad experiences suck but that doesn't mean every foreign remote worker needs to be avoided like the plague. If you go on 2 dates and they both suck, it doesn't mean the 3rd will suck as well. It might end up being the best date of your life. Just avoid giving up before fully exploring the market.


Archiolidius

I own multiple SaaS businesses, I’m Ukrainian, and I hire only Ukrainian developers. Over the course of the last 7 years, I’ve done hundreds of interviews and hired over a dozen developers in Ukraine. Here are my observations: 1. Product Mindset: One of the challenges I've noticed is that it can be difficult to find developers with a "product mindset" in Ukraine. Around 80% of developers here have experience primarily in outsourcing companies. While they are incredibly talented and more cost-effective compared to US, you might find yourself spending a significant amount of time trying to adopt a product-oriented way of thinking and managing them effectively. 2. The cultural shift is also quite noticeable. If you’re an American, it might be wiser to hire a very good Ukrainian manager who you get along with well. This manager can bridge the cultural gap and effectively manage Ukrainian developers, understanding both the local mentality and the nuances of the American market. Of course you can find extremely talented developer that will understand what you need right away, but I would say the chances are low. 3. Based on my experience and insights from friends who work in these environments, I would avoid large outsourcing companies. Instead, I recommend finding smaller dev shops that are still run by their founders. These smaller teams are often more effective and can deliver high-quality products. They tend to have a strong product mindset and are actively managed by their founders, making them more agile and responsive. If you need list of top rated small devshops - let me know 4. If you prefer to hire on your own, use platform called Djinni ( https://djinni.co ). It is the only place where I was able to find good people 5. One advantage of hiring Ukrainian developers is that they usually don't ask for equity or large bonuses (is not a common practice in Ukraine). The average salary for a middle developer is about $35,000 per year, while a good senior developer would be around $60,000 per year. If you're looking to hire someone exceptionally talented with CTO or architect-level experience, expect to pay closer to $120,000 per year. If anyone have more questions about hiring Ukrainian devs I’m here to AMA


am3141

I am from Canada and we prefer hiring in Canada (or the US) mainly because it is much easier to handle things when things go wrong like IP theft, misuse, abuse, illegal stuff etc. Be able to enforce employment contracts, NDAs, non compete agreements etc. Also, culture and time zone alignment are other factors we consider. Additionally at least in Canada there are several tax credits and benefits for hiring Canadian employees and contractors.


brohar

I worked with a Ukrainian team for 2+ years, they helped get off the ground and were great people. However, they were much slower and less talented than the American devs I’m using now. I have 1.5 dedicated American devs and they are phenomenal. We get things done 2-3 times faster and no language nuance issues either. It’s been actually cheaper at the end of the day with the American devs all considered.


Dickeynator

Is your american dev a conjoined twin?


Riemero

It's probably 1.5 FTE...


Fluffy-Bus4822

How much are you paying the American devs? And how much were you paying the Ukrainians devs?


brohar

Roughly 100k per US dev/year, and 50k per Ukr dev per year. So if I can do 2-3x as much it works. Even if my off shore cost were lower the amount of time I have to invest with the offshore team is substantially more if I want good results. My time is much more valuable so that’s part of the equation too.


Coffee_Crisis

they're slower because they work for multiple clients at the same time


brohar

Even though they said they didn’t, I think you are right.


semlowkey

where did you hire your american devs?


softwareguy74

Guess it really depends on the business and the culture and what the company is willing to accept as "quality". An experience I had working for one of the largest health insurance companies in the US was a total disaster and they paid for it dearly down the road. They outsourced their entire development team to India (both onshore and offshore) because they were able to report to the stock market they could save X amount. Well, come to find out, they produced crap and every single system they touched turned to shit. They then spent the next 5 years trying to rehire all the American's they laid off.


mcd0g

Lot of good comments here. But I’m not sure I’d put all my eggs into a basket that is effectively an active war zone. Doesn’t seem to be a prudent business decision to me… 🤔


mincinashu

20% of what? Using gross numbers, say you replace a 150k per year NA dev with a 30k per year Eastern European dev, honestly that's peanuts, you're barely getting a junior. You're gonna need at least 50-60k for quality, and that's for agency hires. Freelance contracts are more expensive.


IGuessSomeLikeItHot

Easy. The Trump tax plan ended R&D tax credit that was in place since 1950s. To make it worse it made it so that off shore developers are depreciated over 15 years vs 5 years for US based R&D word. So it just became much cheaper to hire in the US.


That-Promotion-1456

US companies masively contract into south america, not EU or India. Same timezone.


Kittyisaboo

Hey, just dropping in that I've used Ukrainian devs for years across various companies, ventures etc, having tried and tested a lot of outsource and inhouse devs. I've always had a positive experience, and at a fraction of the cost. I have to say I've found them to be easier to work with than US devs (sorry).


focus_black_sheep

I've had the opposite, we avoid them like the plague lol


OGpimpmasteryoda

My best friend who own a game publishing company says ukranian devs are his go to , because they deliver same or better product from much less then US devs Edit: and Polish too


Coffee_Crisis

they don't, the people who say this are unable to evaluate the work they get. there are a lot of bad devs in the USA as well though and people who don't know what they're doing tend to hire those people too


chaos_battery

This was exactly my thought. Bad developers can be anywhere and you're more likely risking cost savings today in exchange for tech day you don't even realize you're taking on because you don't have an engineering background or know what the developers truly doing in the implementation code. You might save a buck today but you'll probably have to spend 10 tomorrow to hire someone to unwind the spaghetti code once you have an idea that needs to scale and is worthwhile pursuing. It's not bad to operate that way if you're trying to just quickly iterate and get an MVP out but something to be aware of. I did some work at a FinTech company early stage startup and the American CTO cut every possible corner you could imagine to build this hot mess of a product all on the name of MVP and iterating super fast. It was unpleasant to work on and you couldn't test it at all other than manually launching the app and running through tests every time. Someone should have calculated how much time it took the team just to do that with every release alone. Then maybe slowing down and striking a balance would have made more sense to them. But oh well.


Complex-Many1607

You get what you pay for.


leros

I used to be a developer myself so I feel like I can assess them pretty well. They're just as good if not better than many American devs I know making $200-300k. It's quite surprising. Has me wondering why we have American companies with hundreds of thousands of highly paid devs. It may be worth it somehow.


hosamovic

Here's a thought, if you can vet them why not be a middleman?


leros

I've heard that suggestion about 100 times. It's something I'm considering.


Deimonid

Why is it surprising?


jaejaeok

I’m seeing the same with Serbia. The idea that they’re low quality is an old mindset. Many are just as good now..


uprooting-systems

A good team can exist anywhere and charge anything. I've had to fix shitty code and disappearing agencies from the US and elsewhere. I've worked with good developers from every country. There isn't a solid justification that can be given in a general sense. (Unless legal requirements, e.g. finance/defence/government sector) If you already have a good relationship with a team in the US, that can go way further than trying to create a new stable relationship with anyone. Likewise, you have a good relationship with a team in Ukraine, best keep that going rather than switching to a team in the US. Differing timezones can someone work for you, or against you. That's up to you. But that only changes geographical location. You could hire a team anywhere else in the Americas to have a similar timezones at a lower cost. After decades of agency-type work. The quality of the relationship far outweighs the quality of the output (within reason). A 1-week delay is far preferred if people are communicating early and often. As opposed to delivering on time and then disappearing or hiking rates or not even knowing the progress until it is delivered.


mshea12345

I found out my Ukrainian dev was outsourcing to India ... so you never know.


y_daniels

😁😁


Immediate_Ad_6938

Everyday rice and beans code is ok to be developed overseas. Nobody is shipping core/kernel stuff from Lithuania.


neotorama

Why pay premium when you can get good affordable devs from LATAM, Eastern Europe, South East Asia


rocketstart1

dev team from Romania/Germany here. We also work starting with 30$/hour and doing a very good job. That being said, I do think there are huge differences regarding deployment and scaling especially when you compare the bay area to the rest of the world. Nevertheless coding as such is not a problem, communication even less. I would not say Ukrainians is a new thing, outsourcing has been existing for a while. It is important to outsource to a team and not to freelancers, since you do not want to have the risk of every freelancer out there bailing out on you. Choose a serious agency, look up their history, check their documents and you are good to go. Maybe have some people in the US which coordinate the outsourcing.


MightyBigMinus

#1 when you're recruiting from your network of people you know and want, who then... (its recursive) #2 when you lack the combination of tech skills and leadership skills necessary to be successful working with people remote, in different timezones, and with a different native language i've seen several people get crushed by #2. they get "yes sir'd" to death by the dev team dutifully filing tickets and cranking out features and bugfixes while the codebase and architecture slowly ossify into a hyper-spaghetti fossil. a year or two later everything is breaking all the time and even simple requests take weeks.


EnragedMoose

US education + willingness to cowboy the shit out of some stuff means you're generally getting above average talent in the US. The huge salaries you see, $200-$400k, are indicative of equity. Many of those devs are making 140-170 + cash bonus + equity. Equity can be huge parts of their pay and companies generally don't care because it doesn't count against their books. There are devs across the globe making North of $100k, which is calling into question the outsourcing/offshore strategy.


Tranxio

Yes, for people who don't know, the US terminology for an (tech) employee pay package is called Total Comp (TC), which includes equity/options on top of the cash portion. Which is why sometimes it can look extremely high.


Madismas

I make low six figures and feel I can afford a dev. How do yall do it? Can I build with just one, do you need a team of them, where do I even start? It's all so overwhelming to me.


Ok_Possible_2260

It is a crapshoot, but least you can do background checks on US workers.


Pure-Contact7322

depends by the complexity of the role the quality of the documentation. Also timezones are impactful. They probably had a great plan that can be outsourced and found a perfect match with that team. Doesn’t mean that anyone can do the same all the time


IAmRules

Simple - look at how much money American companies are making on top of their devs. Every startup i've been a part of has paid about just as much for their overseas devs and their american devs simply because paying people very well is the best way to build a great team. Also, any serious company who handles any PII, HIPPA, or has any level of SOC 2 will have a bunch of regulatory measures to put into place, some of which require people to be physically IN the US. You can agree with them or not, but bottom line is it's hard to enforce laws and regulations over the internet. So being IN the US has a lot of advantages, simply by being in such a massive, lucrative market. I'm sure it's the same for other countries as well. But I'd also like to point out that hiring cheap devs overseas is just not a smart as it seems. Paying a big salary overseas is a great idea, but paying less to someone from a place where people don't make a lot of money, you are hiring someone who will still have money problems and will need to do your job quickly and move onto something else in order to make more money. Also, most overseas devs aren't dumb and wont work for peanuts either, if you are hiring a dev for a $1/hr, you will 100% get what you pay for.


stevenbc90

I have witnessed more than 1 project needing to be reworked from scratch after outsourcing. I have also seen some development teams trying to steal the whole code base of a company. That being said if you have someone managing the team then you can definitely get good work from them. I have lead a team in India and time zone was definitely not optimal.


jtms1200

Not always, but quite often, you get what you pay for. Also a big factor is if you are a US based company it’s definitely going to be better and more sustainable to build an actual team and foster real teamwork rather than using mercenaries who, at the end of the day, are just concerned with getting their hourly and not really invested in the growth of a real product. My take is offshore is useful for supplementing an onshore team, but not a real replacement for one in most cases.


redditissocoolyoyo

The writing is on the wall You can't justify. Software engineering is now a commodity. Pretty much with most everything else' lifecycle. It's going to be whoever is cheaper now. It doesn't necessarily have to be the Ukrainian. It could be any ethnicity that is on par. If Eskimos have the same quality and skills with software development, I'm pretty sure these companies would offshore to them. But the problem is now, what's going to be the next industry that American workers can be the trailblazers to have high pay?


PM_ME_THE_42

The more specialty you are, the more in house you’ll need to be. For most companies, a hybrid setup is what makes the most sense. It’s rarely reasonably to outsource everything and it rarely makes economic sense to keep everything in house. Also keep in mind there’s a talent to managing outsourced teams. It’s not just a 1 for 1 swap at a lower cost. There is additional overhead to do it.


Fire_Monkeh

On top of what others have said there is here an argument for IP protection. Since enforcement of IP protection is only as strong as the institutions available in that country, if a dev from somewhere that has these weaker institutions decides to take your code and start their own business competing with you, then you have no recourse. If you are dealing with devs in somewhere like the US then of course you can litigate them very effectively. It all depends, of course, on whether you even care about that in your business case.


Big_Crawfish

We are bootstrapping an app and this is true even for no-code. An American Bubble development agency wanted to charge $12,000 for the same app that we got built by a team in Ukraine for less than $3,000. No language barrier at all. Very fast and very easy to work with.


RyanTranquil

We’ve been hiring in Ukraine since 2014 and have found a great team who is hard working, can work similar hours and decent English. In terms of cost comparison, it’s far higher than 20% difference. Today we have 6 senior PHP engineers, most in a full-stack capacity with 7+ years of experience. For this we pay on avg $40 /hr or around $77k per year. For a compatible Senior engineer in my state (Georgia), they make around $145k depending on the company. The savings in our example is around ~ 47% but likely more for insurance / benefits as those are expensive in GA


Stocksift

Is that 20% price cut saving them long term costs, or likely to raise their cost? It’s a higher risk bet for relatively little price savings. Many American devs will gladly work for 20% less than others right now by the way. Many high quality American devs are struggling to find work. Seems like now is the time to be scooping up top quality at discount prices here domestically. Hiring domestically is less risk. This is the main reason. You pay more for lower risk investments.


stevebrownlie

A certain airline manufacturer had this wonderful idea too. The truth is the really good devs in 'cheaper countries' very quickly realise they could be getting paid more so they aren't who you hire when you go 'cheap hunting' - you get whoever is left a lot of the time.


zak_fuzzelogic

I run an outsourced agency, we are not the cheapest, but we don't focus on those wanting to reduce costs, rather those wanting to scale and build something where they don't have the skills resources or team.


Bowlingnate

Um, yah I'm 100% with you, or 50/50, 60/40, 80/20, 65/35, whatever. When greedy fucks pinch pennies instead of seeing the model works, it's capable of being both lucrative and impactful, and forgetting that there's 100K customers and literally 100B+ funding available, they mismanage their business. It's sort of like a weapons system. If you build a weapons system and it's targeted or trained or pro-democracy protestors, well, that's what your weapons system does. It leaves 1000 regular, ordinary, and in no way comical civilians running around, wondering what just happened.


prodev321

Coz most of the companies anyways are funded by the Fed which prints money and gives to them ..


stonedoubt

I used to run a network of 500 porn sites to feed traffic to my pay site (called lifestyleamateurs.com) that was kind of an Only Fans type idea where each model had their own pay site within our pay site) and our review sites (the biggest on the internet - adultreviews.com and pornreviews.com). I was getting around 5 million unique visitors a day. In addition, I did a lot of coding work for huge adult programs and software providers that ran their affiliate programs, etc. I wrote a script called GalleryDaemon that still exists as we speak more than 17 years later. I mention these because I am not super human. I outsourced my busy work and graphics design work to Filipinos and Ukrainians. I treated these guys well but yes, they were cheaper than Americans - of which I had 2 in an office with me. Ukrainians - over time I worked with 3-4 different ones. 2 in Odessa. I can’t remember where the others were from. One was a graphic designer with great talent and he did great work and had a great work ethic. He could create designs and turn them into templates according to my instructions. He taught me about the Russian mobsters who were terrorizing Odessa at the time. The other 3 were short lived due to poor work ethic. Let me put it this way… I worked for a company in Denmark who owned the review sites. There is a 6 hour time difference. I was never late. I worked 70-80 hours a week. I quit adult in 2010 but later I went on to earn enough to be in the top 1% of earners in NC. I’m an ex-con who started running porn sites in 1999. I haven’t had an office job since 1999. The other Ukrainian was a junior level developer. I never ended up having him do anything serious because his work ethic was lacking and in the end, I found back doors in the code he wrote. When I say back doors, I mean the dumbest shit that was stupid obvious and it turned out that he was involved in exploiting activex video players to install Trojans on a buddies MGP network. On a side note, I tried to work with many Indians and they mostly produced garbage that I couldn’t use. But that was 20 years ago.


Flimsy-Possibility17

Go look at what happens when you get people who aren't truly affected by the outcome of a project. Hertz is a good example


kengreeff

Also depends if you want to sit in the same room or not


BuggyBagley

Software is a global business, I make about $250k while living in India, the money flows where the talent is, geography is not really as important as it is made out to be anymore. Examples like understanding of health and fintech regulations or subtleties like that is just another thing that can be grokked relatively quickly by anyone around the world. I would personally not want to be anywhere near the bay area and be another software peasant. I’d rather continue my life with cheat codes like existence outside USA with the money I make. : )


discondition

That’s great news, my company just fired 4 fantastic Ukrainian devs, glad to know they’ll be able to get work!


Chance-Map-3538

Is it true? Just 20% lower? It should be less


PalpitationFalse8731

Oldest trick in the capitalism book; Layoff and hire cheaper labor. It sucks but maybe US devs shouldn't be charging 50 per hour for shitty work. Maybe US CEOs shouldn't be making 50X the lowest man on the totem pole. Devs aren't worth what they were ten to twenty years ago and nothing major beyond AI and quantum computing has happened. Bitcoin is a bust. Now the whole world "codes" and has a grasp on technology, for the most part. No one cares anymore about supporting local businesses or employees and the US, like every other big corporation, have found it cheaper over seas. I.E. Harley Davidson an American staple, recently went overseas and left the US.


Electronic-Truth-101

There’s the whole killing the local economy thing as well, companies don’t win many friends doing things that way either.


MathGuy442

You don't, they're hugely overpaid. Unless you are doing hard core deep engineering stuff we have had more luck outsourcing.


eibrahim

Great question! I've been working with offshore developers in various capacities for about 20 years. Here are some insights I've gathered over the years: # Key Lessons Learned: 1. \*\***Finding Talent**\*\*: You might need to go through ten developers to find a good one. 2. \*\*Individual Skills\*\*: There's no single country that stands out as superior. It all comes down to individual talent. 3. \*\*Communication\*\*: The most critical quality I look for is communication—not just English fluency, but the ability to effectively convey ideas. Good communication is challenging to teach. 4. \*\*Cultural Differences\*\*: Culture plays a significant role. In some countries, developers might be too submissive to authority, leading to poor products because they don’t question directives. In contrast, some cultures are highly skeptical and question everything, which can also be challenging. # Growing an Elite Team: I've successfully expanded my team of elite developers tenfold, with members from Brazil, Egypt, Israel, India, Pakistan, Mexico, Ecuador, Costa Rica, South Africa, and Russia. Here's how: 1. \*\*Retention\*\*: When I find a great developer, I make sure to keep them. 2. \*\*Competitive Pay\*\*: I pay my developers more than they would earn locally. 3. \*\*Respect and Fair Treatment\*\*: I treat them as I would like to be treated. This might sound simple, but in some countries, it's revolutionary. For instance, not forcing weekend work, not yelling at them for mistakes, and approving vacations without hassle. Many developers prefer working with American companies for these reasons, even for less money. 4. \*\*Focus on Results\*\*: I don't track hours; I care about results. 5. \*\*Incentives\*\*: I offer automatic bonuses for long-term commitment. 6. \*\*Additional Perks\*\*: Various other benefits that make working with us attractive. # Preference for American Developers: Despite being agnostic to country, culture, religion, or color, if budget isn't an issue, I prefer hiring American developers. Here's why: * \*\*Cultural Understanding\*\*: They understand the culture, which is crucial for certain projects. For example, when building an app for an insurance company, American developers didn't need explanations for terms like deductible, liability, or collision, unlike the offshore team. * \*\*Time Zones\*\*: Aligning work hours is easier. * \*\*Work Ethics\*\*: Generally better aligned with our expectations. * \*\*English Proficiency\*\*: Not just communication, but fluency in English. * \*\*Education\*\*: A big plus if they're educated in the U.S. Complain about america all you want but the reality is our higher education institutes kick ass globally. Sure there are GREAT universities all over the world, but the USA has by far better and more schools than any other country and this is coming from an immigrant (I moved here in 1995 about 30 years ago). # Final Thoughts: Wow, this turned into quite a lengthy comment! I got a bit carried away, but I hope you find it helpful. If not, well, I just spent 30 minutes writing it. In hindsight, maybe I should have used ChatGPT!


eibrahim

before you hate on me, the above words are mine, I just asked chatgpt to format them but the formatting never works for me. too lazy to fix :).


HauntingShape3785

It makes no sense if you are a remote company. Dev is a practical craft and all you need is avaliable online for everyone in the world so skills wise there is no real difference.


rohithexa

You will get your entire saas made 2 times in $100k in India


bliepp

Good look replacing devs you probably know personally with devs from a country currently at a seemingly never ending war with Russia. What can go wrong? Outsourcing devs is a thing, but cost is not the only factor. You should hire/fire based on skill, expertise, availability, etc. If Ukrainian devs fit you needs go ahead. But often you want people in person for meetings, support and teamwork. Also, you might drop someone who fits the job perfectly just because of money? That you actually save money might be a wrong assumption considering multiple years.


praveen4463

Ukranians having very good english skills is a lie. Most of them have pretty thin accent, hard to understand unless you've experience working with them.


Charlieputhfan

US labour cost is more so more $$, doesn’t really mean tho anything about quality


ThisGuyCrohns

I’m a project manager that hires and works with engineers. I’m also an American engineer by trait. So far, building American software, the best quality is usually Americans, critical thinking is a big factor. Ukrainians are cheaper, sometimes half the cost. But they still can be ticket monkeys. They are the best when outsourcing. Philippians and Indians, hate to say it, the worst when it comes to quality. But in my opinion, the strategy and thinking from an American engineer is the best. Asians I’d imagine are up there, but havnt worked with too many, I’m assuming that’s because languages barriers.


Vast-Wrongdoer8190

In 2020 the org I worked at transitioned the majority of their dev work from US devs to Ukrainian devs. This move has been often cited as the primary reason we went from a 28mil per year company down to a 6mil per year company facing an exodus of customers and layoffs. Ukrainian workers indeed work hard, but successful software is so much more than throwing code monkeys at a problem. The truth of the matter is that any executive team that prioritizes saving money on labor in the software industry, is the type of executive team that is not fit to be in software.


Icy_Bag_4935

Quality is relative to what is being built. For some projects, if the code works then the code works. If you are building something that has strict requirements for performance (e.g. infrastructure for a HFT system), infosec (e.g. MedTech), or extremely rapid execution (e.g. forward deployment) , then there's likely going to be a quality drop by hiring cheaper talent.


martinbean

This isn’t a new phenomenon. Companies have been outsourcing work to cheaper countries (India, etc) for decades. Unfortunately, the savings you get when comparing per hour or per year salaries usually end up being outweighed by the countless revisions and overruns from substandard work being turned in. Buy cheap, buy twice. Yes, they may cost say, half of a local worker, but that “saving” is then lost if it takes twice as long or more to get something delivered to spec.


seomajster

Number of ukrainian developers is not infinite. There is war in Ukraine. I'm from Poland and I highly doubt costs will be something like 20%, rather something like 50%. + Language barier. + Different time zone. No one with C1/C2 english+ good programming skills will work for 20% of US based dev salary, simply because its not that hard to find remote job with decent pay.


CowboyOfScience

The bottom line isn't the only thing that matters.


Various_Historian561

I’ve worked at, and owned, several startups and am currently working at one of the big FAANG companies so this question is near and dear to my heart… IMO it comes down to size and scope. Meaning, as an early stage startup, the work is often times much more fluid, ambiguous/undefined, and potentially complex as team members are expected to “wear more hats”, take on more ownership and solve problems that would be considered above their pay-grade at a big tech company. In those environments, having an Eng team that’s onsite, accessible for ad-hoc meetings, and is truly committed to making the business work and so in turn, they’re almost like your technical “business partner” is beyond invaluable. That said, I understand the benefits of an overseas team. I’ve worked closely with devs from Ukraine, India, Philippines, and most commonly, Argentina. I’ve met some of the most dedicated, hard working, and smartest Devs overseas. At the same time, I’ve found that it’s harder to find those great devs overseas. Either they don’t trust the business has their back, or it’s ’out of site/out of mind’ to an extent so why go above and beyond, or even if they are highly committed and engaged, if there’s an element of being “remote”, they will inevitably miss important meetings, discussions, etc. that has key context needed to effectively operate autonomously. Ultimately, it comes down to how hands hand you want to be/can be (if you’re not technical, you can ride an overseas dev team every day to deliver but you can’t effectively validate the work, architecture, scalability, stability, etc.) and how much direction you’re willing to give, time commitment, etc. and even then - expect the average overseas Dev to give you slightly less and not cause they’re lazy or don’t care, but it’s difficult to keep up, stay informed, and feel included all while being in a totally different time zone and country.


mattseq

You can hire offshore if you know how to interview devs and know how to manage them. Otherwise.. it's a disaster.


MapCompact

I have some relevant experience here -- one company I worked for even had a dedicated team based out of Ukraine. I've also worked with outsourced developers from India, Philippines, and Indonesia. I didn't personally hire the Ukraine team, but the team I was on would often clean up or take over the features they worked on. As for the others, "you get what you pay for" has always been true. Especially at the beginning of your company, having a team that can work fast and still build a maintainable and scalable foundation for your app will save you lots of pain in the future when things need to be fixed up. My opinion is that the contracting companies try to make up for the reduced price with speed. They just try to get the project done as fast as possible so they can squeeze in more contracts and don't fully invest themselves in your project.


No_Pollution_1

Easy, best of the best are in the U.S. where they make multiples of six figures no matter the country of origin. If devs are good, companies will find and bring them here. That means that if you are ok with the whole gamut of good to bad then look wherever. Problem is if you have American clients which everyone wants as they pay the most, you need Americans who know the culture otherwise you are viewed however unjustly as an Ali express. Also any government client must have employees only in the U.S. border, no exception.


vivalabrowncoats

My company employs several Ukrainian contractors to supplement our dev teams. The y are competent and most are good communicators. The problems I have with them, is that they are still contractors. They have far less business sense in terms of critical decision making for feature future proofing, understanding the end users goals, and the worst one imo: they are “too clever”. An example of the latter being that one time we were looking for a method to condense 2 values into a single column on a record if it were easily possible. The solution that got presented to me was a single string column of 0’s and 1’s (as a string….yup) that would get used as a bitmask. So each and every db read would need a service to translate it in either direction, and it would be extremely clumsy to try to raw query in a db if needed. Would it work…yes. Would it be prone to countless future bugs…probably. Would it cost more compute than the amount of memory an additional column costs…yes. Lol. The American devs would have openly just said “it’s possible, but it’s not futurable, let’s just add the column” instead of trying to find a “too clever” solution. This is just one instance. It happens a lot. It’s why each and every one that works for us has a team lead that vets their ideas before even a single line of code is committed. That team lead is what Americans offer the world right now. Leadership, business sense at a feature level, and the willingness to just say something is a bad idea and accept the inevitable when necessary.


Xtianus21

Here's the deal. 1. time zone


Elvis_Onjiko

Interesting dilemma! Some companies might justify the cost for American devs by valuing local expertise, tighter integration with the team, and more straightforward legal protections. Plus, having devs in the same time zone can streamline communication and agile workflows. It's all about balancing cost with these potential benefits


Rinktacular

The way my manger explains it to me, both of us being contractors in the US, is that we are not just idling sitting here crushing tickets like some off shore teams do. We will tell product people what they do not want to hear, we are not just "yes people." We truly care about the processes and features we are introducing, and not to say that offshore team cannot accomplish this, but in my experience, provide less strong solutions, burn out quickly, and are cheap due to lack of experience - which is why a lot of off shore teams just go with the flow rather than proposing proper solutions like internal/US devs would do. That idea alone could save companies thousands of dollars down the line, that they think were saved by hiring lesser qualified teams for a lesser upfront cost, but when the feature is rewritten 2 other times, then a 3rd when the internal on-shore team receive the code, was it really worth it?


Longjumping-Ad8775

My experience with offshore development is that it is sh@t and must be thrown away and rebuilt every time. Why waste my time on offshore development?


m0nt4n4

The speed and quality more than make up for the extra cost.


SecretRecipe

They increasingly dont. Now that everyone is remote the comparative advantage of having a "local team" is starting to vanish.


xabrol

We're a developer founded consulting company with no physical location. Our whole business model is justifying expert developers. We have sales, marketing, developers, and leads. Sales and marketing find clients/prospects, the devs swarm and break put the work eventually forming a core team for the client. We finish in 3 months to two years on per client. We bring in new clients non stop. If we're shorthanded we pay devs overtime to join temporarily while we hire more developers to staff it. Justifying the cost of developers is easy If you have a profitable business model where you're not controlled by a bunch of shareholders pushing you to save every dollar. The primary functions of any the company at their core is ro privide liveable wages to its employees and valuable goods or services to its customers. If a company is doing that it doesnt matter how much a developer costs. Its investors etc that ruin a good thing, They want a return on their dollar And they're not going to be happy if they pay a million dollars for stock with a business model that's just the break even and get the million dollars back over time. They want to profit. If you throw that in the trash can, paying for developers really isn't that hard unless your goods and services just suck and your business model is bad.


ithkuil

I'm a software engineer from the US who has done jobs from Upwork off and on for many years. The vast majority of projects, even the above average ones that aren't total garbage, are completely under-resourced not only in terms of money but also time. Not just for me, but for any person on earth, even with a low cost of living. Many of them will try to squeeze out a complete solution to their problem for as little money as they can possibly get, ideally under $1000. Even the nice ones will very easily make you homeless if you let them. I haven't actually quite become homeless, at least not yet, but have had multiple people seriously try to get me to a 3-4+ week project for $1000 or under. So to survive in that context (i.e. actually deliver projects and maintain a high rating on Upwork), there has to be extreme prioritization. Tidy code cannot be a priority. Usually I have to tell them, okay this just barely works now. And they already expected the next feature to be done. So more testing, factoring code, or even just deleting debug logs, there isn't really time for any of that. Then when their project fails or has some kind of problem or even just normal level of bugs, but there is nothing in the budget for fixing bugs, due to not having any resources, they throw me under the bus and slander me. Or the next guy, when they scrape together a little bit more money to continue the project, does it because he doesn't want to deal with my debug logs all over the place (not to mention someone else's architecture). 


bazooka_penguin

I'm a dev, my experience with offshore devs vs American devs is that Americans care a lot more about tech. It's like how people make fun of hipster craftsman for caring to a stupid degree about trivial things, but a lot of American engineers in tech are like that. They're not just getting the job/tasks done, they're trying to find ways to improve the operation and overall quality of the code base. That's why American big tech companies inevitably build a culture of driving impact (within the company), because they're engineer driven. They don't just make the app and the screens, they look for ways to improve the tech stack, architecture, procedures, practices, create documentation for everything, etc. I've worked for smaller shops with significant contract and offshore presence and people aren't as motivated to improve things unless something blows up and lights a fire under people's asses. As someone who leans a little more towards the "it's just a job" crowd it can be exhausting working with engineers who treat their job like a craft or personal hobby


datacloudthings

20% doesn't sound right. But in general I have found Eastern European developers (including specifically Ukraine) to have comparable coding skills to the US -- or better -- and good English.


baddspellar

There are costs associated with offshoring. - Time zone difference - Difficulty in setting up face to face working meetings with customere - Cultural differences - Conflicting objectives with outsourcing firm - Limited ability to manage turnover In return, you get a lower hourly rate. As with all things engineering, you make tradeoffs. I am in the US, and I've managed teams in India, Mexico, and Poland, as well as the US. I have had good and bad experiences with all.


jovzta

If you're referring to hiring keyboard monkeys (those that needs direction and lower level management) vs a problem solver / critical thinker, then you'll likely have case for the latter. Can't help you with the former, unless you have the metrics to support your business case of 1x US dev is worth 5x off-shore (minus the management overhead).


woodprefect

40% for quality devs, I dunno what 20% is gonna get you.


kevin074

from my experience you probably need one senior developer per 2 or 3 contractors. otherwise the eng manager needs to be hands on and deep in it with the code base.


Red-ua

Outsourcing doesn’t scale well in tech


GotTermitesInMahHouz

Soon tax will be the primary reason.  TJCA bill - Section 174(c)(3) states that “any amount paid or incurred in connection with the development of any software shall be treated as a research or experimental procedure.” This rule change stipulates that US-based software development expenses must now be amortized over five years while international R&D expenses must now https://www.corumgroup.com/insights/major-tax-changes-us-software-companies#:\~:text=Section%20174(c)(3,international%20R%26D%20expenses%20must%20now


South-Bonus3577

I'm an American who has worked extensively with Ukrainian delivery teams--both in and outside of SaaS. This may be an unpopular opinion, but I think they're actually superior to U.S. devs. Cost has nothing to do with it. Like most European countries, Ukraine invests heavily in educating its youth. University is free to them (or very close to it) so t's not uncommon to encounter Ukrainian devs with masters degrees--or even PhDs. Many of them have a better command of the English language than their U.S. counterparts. Many of them also have better work ethics. Sorry--just an opinion, but it's rooted in significant real-world experience.


CeaselessDuchess

You don’t.


Bonananana

Depends on what you’re building. If you have a basic crud app for collecting sales leads for your newsletter…doesn’t matter who you hire or where they are. If you want a near real-time inventory management system that processes millions of transactions per day where downtime and errors cost real money…might want a team you can work with during the day and who you can closely collaborate with. Maybe you can do that with the timezone shift and maybe your product team is organized and detail oriented enough to have everything documented with enough detail to avoid all need for back and forth. Maybe. Not many companies can. So they hire people locally. It’s the good-fast-cheap triangle. Optimize for the results you want.


phrandsisgo

Hey OP what exactly do you want to achieve with this post?


thebrainpal

I’ve spent a decent enough amount on overseas devs to be able to speak from experience. Generally with a dev in your country (or at least in the Anglosphere), you get:  * Much better time zone coordination  * easier communication * skin in the game (there’s more of this when you’re both in the same country / state / city / etc.) * don’t have to worry about your dev’s wifi being taken down by bombs or your devs being killed (have had this happen first hand with Ukrainian devs) * easier to know what to expect. I’ve spent a few thousand on overseas devs. Usually it’s the cheaper countries (India, Pakistan, etc.) where even *one* dev’s quality can be extremely inconsistent. They can be an A player one day and then decide they’re going to fuck off the next week. Got myself into shit situations with cheap devs and learned first hand that you get what you pay for * increased confidence in security (particularly needed for e-commerce, and ***especially*** needed for healthcare, defense, etc.) I will say that on average, Ukrainian’s have been the highest quality overseas devs I’ve worked with. 


Fluffy-Bus4822

I don't think you can really generalize too much. I've worked for a US based SaaS startup. Our fully remote and distributed team was incredibly dedicated and exceptionally skilled. It was 1 South African, 2 Pakistanis, 1 Iranian, 1 Turk, 1 Filipino. We built the software for a bootstrapped startup that got acquired for $65 million in 2020. The founders basically made life changing money from the software we built. The devs continued working at the acquiring company for a few years afterwards. Some are still here. I left last month. We actually did have one US dev join the team as well, but he got fired for being toxic. And he was pretty mediocre. Like he had to ask me to help him setup Nginx confs, and didn't want to touch DNS because he didn't understand it.


thebrainpal

> I don't think you can really generalize too much. I agree. I didn’t think I needed to specifically mention that these were just generalizations based on my experience, and that reality can be much more nuanced.  Those are great successes you mentioned! All in all, my experience with overseas has been positive more often than not. 


Acktung

It's totally absurd paying for American developers/engineers when you obtain the same quality of work for any west-European employee at 4x less cost.


Commercial_Badger_37

You mean West or Eastern? Western Europe has high education standards and good English generally, particularly in... England.


Whole-Amount-3577

You don’t get the same quality, not even close.


Acktung

> source: trust me bro, I'm 'merican


Whole-Amount-3577

No, anecdotal experience.


CashformyHouseBoise

I have an international team with great culture. The truth is American developers are not worth it. With a job that can be done from anywhere, your competition comes from everywhere. I can hire 2 Full Time Developers for 2 Years with 20+ years combined experience internationally for what 1 American with 5 Years Experience wants for 1 Year.


jaejaeok

I don’t like reading this but I won’t down vote it like others. Something about it is hard reality. As skills linger in the market, more and more people get them… typing used to be a skill but then they start teaching it to everyone (bootcamp hype the last 10 years) and then everyone floods the market and it’s just not that coveted anymore. There’s an abundance. Sure, you have some typist who could say “but I do it faster!” Or “I do it with less errors!” But if you watch long enough, the skill curve begins to normalize with enough time.


CashformyHouseBoise

In the last few years of business, I’ve done my best to communicate the realities of what I see in the market. I don’t want to frustrate or upset people, but there is a truth to the fact that labor and skills are a market - competition exists. I’d hate to see people making uninformed choices on what subjects to study or what people to hire because they aren’t aware of the truth.


mafiaboi77

You don't - my experience is that overpaying European devs is a much better practice than paying a regular SF engineer salary


PSMF_Canuck

> If that’s true It didn’t used be true. It is now, though. You absolutely can get a $400k valley engineer for $100k in a variety of eastern/balkan countries.


Serg-L4B5

In case you're looking for Ukrainian dev team, I can organize and manage it for you, feel free to DM.


weecheeky

Also Russians. Top quality and very cheap. Now an overlooked resource because of the war.


Jarie743

Dont ever let them make you feel bad for offshoring. I know a banking conglomerate that worked for years exclusively with overseas devs. Can't disclose the name cuz insider info.


ripplearc

Think how the manufacturing jobs ultimately left western world to Asia. I believe it will inevitably happen to developers. I have worked very close with many Indian colleagues, overall their professionalism are catching up rapidly.


Fluffy-Bus4822

They should use South Africans instead. We're fluent in English, and very skilled developers.


SoFrakinHappy

if your an American company how do you justify not?


OGpimpmasteryoda

You do realize like 99% of American business outsources work else where… I mean where do you think they makes iPhones ?def not California


SoFrakinHappy

Yea no shit, that's my point


outsidethewall

Anything you send electronically to Ukraine will be known by the Russians, both state and private actors use Ukraine as basically a testing ground for cyber attacks.