As St. Louis’ leading marketing technology company, I am often asked what I think about offshoring technology services work. With the rising complexity and scale of technology, it's tempting to throw it all into another time zone to control costs - but how and when to use offshore solutions matters a lot.
Could it work? Sure it can, but only when used correctly. Think about offshoring as a specific tool for a specific set of use cases. Have a nail? This hammer will do a great job! Does your Rolex need service? You will not like what the hammer does to it.
Where I have seen offshore partners succeed is with straightforward, existing technology support where the task is clear and creativity or context is not necessary.
Example1 - “This link is broken. It needs to link to XYZ instead of 123.”
Perfect - anyone could complete that task with no knowledge of who will be using it, what problem it's solving or why it exists. Task received, task completed. Success!
Example2 - “This login workflow is confusing, it has to make more sense.”
Truth time - this will be a dumpster fire. Does this remote team have any idea what an east coast mom would want/need to experience when frantically trying to make an appointment for their sick kid? Of course not. When you get the files the next morning, you will be greatly disappointed - which brings us to the next item…
For those offshore partners who are in vastly different time zones, they often try and sell the idea that they can be your second shift. Working while you sleep - what a benefit! But having an execution team working while the rest of the business is unavailable is a communication nightmare and leads to constant disappointment. If your product support requires even modest communication, finding a partner in or near your timezone will save you mountains of rework, which leads us too…
The whole reason to offshore is cost reduction, but how much of that is real? If you have an offshore team that costs ¼ your local team, but it takes four tries to get something done or it takes 4x the time, then you have saved nothing, reduced quality and increased frustration. If you are honest with yourself, you will also add in the time the local development team spent tweaking the last 10% to get it done and then you have the largest additional overhead cost…
Offshore teams require significant management resources from local teams. They often are up super early or late for team calls and are constantly fighting to align local expectations and offshore delivery results. It requires far more work to manage an offshore team vs. a local one. Period.
A major complaint of companies using offshore teams is a lack of transparency. Not knowing who is working on their project, the true status of the project, what the actual skills of each team member is, etc. These issues can be somewhat addressed through contracting but mostly by investing in experienced senior managers who are not inexpensive.
They can if engaged correctly. If you have an existing technology product that has a large number of support tasks that do not require context or creativity, you should strongly consider outsourcing those functions. Anything new should be designed and developed locally. Once it's used by consumers and confirmed stable, it can be handed off to an offshore support team that can keep the lights on cost-effectively. Depending on your specific business case, you might have offshore teams doing more of the initial custom development and that can work if paired with experienced domestic UX teams to assist. Regardless your approach, never lose sight of the ultimate goal - the creation of an exceptional experience that users prefer. A terrible product no one wants to use at any price is far too expensive.
No developers. As I write this, AI is doing a pretty great job of taking text inputs from humans (ie. a Slack or Discord) and creating completely unique imagery or simple web pages. It's still early, but at this pace, paying offshore rates will seem insane given AI will do a better job, faster for almost no cost. Of course, an AI won't have the context to take on creative tasks like “This login is confusing, it has to make more sense” but if you have a broken link… today’s AI could essentially do that for you today.
Atomic design is a helpful design and development methodology which promotes consistency and cohesion across your entire experience and helps save time and money.
This blog post and related image were created by artificial intelligence (AI)! Can you tell?