Most startups offshore their early (and often even later) builds, and for good reason.
It’s a pretty common cost-saving measure in those early cash-strapped days. Nothing wrong with that — the planet is studded with talent-rich geolocations like Latin America, Eastern Europe, South Asia, where you can get a seasoned Python geek for an annualized cost of KKR’s weekly budget for Post-Its.
But it seems most of these startups, while they notch material $-savings with these “offshore teams”, can’t seem to stop unspooling into jeremiads of why it isn’t working for them. “Communication is a nightmare”, “Shipping is delayed”, “Keep losing team members”, “They just don’t get it”, “Gotta deal with all this tech debt now”. Not all of these laments are misplaced either. I have seen it not working more often than working, my own experiences included.
So: is there a point here, or am I just adding my voice to the irritated chorus?
A bit, yes. But with a counterpoint: when it works, it is magical.
More on that soon but let me start with an instance of one of my groaners on this.
San Francisco, 2004. I was working for a fintech startup called Finaplex (a name who’s I’m Feeling Lucky goog-hit invariably pulled up a bovine steroid, along with a "Do you mean..?” rider), in what would roughly be the Mesozoic era of fintech. Finaplex was really a trailblazer. The Finaplex Wealth product was a sprawling white-label wealth management platform for bulge-bracket financial institutions. Our clients included Lehman Brothers, Bear Stearns, First Republic, to name a few (all coincidences are coincidental). My client at the time was an online brokerage called HarrisDirect, which was subsequently acquired by an online brokerage called E*Trade, which was subsequently acquired by an on/off/every-other-line brokerage called Morgan Stanley.
But that’s beside the point.
The Harris project was huh-yooge. It had about 17 sub-projects, for account aggregation, IVR, proposal generation, market-data integration, portfolio accounting, and many more. At one point, Finaplex decided to work with an “offshore” firm in India, whose name shall remain hidden (mainly because I’ve forgotten it, so let’s call it Y, to not confuse it with X).
That. Was. A. Nightmare.
For one, Y had a tendency to deploy a mid-sized republic of engineers on efforts that 2-3 senior engineers could have easily brought home. Compounding that there was a large set of revolving doors, so we could never get any notion of continuity across the 37-odd engineers let loose on, say, a reporting tool.
Secondly, there was literally zero overlap in working hours between San Francisco and Hyderabad. Word docs or titanic PDFs were hurtled back and forth across 13 time zones, multiple times a day. This was pre-Slack/Teams/Zoom/all-other-RT-collaboration tools.
But most importantly, there was the Mothership Syndrome. Overlords in San Francisco delegating to legions of offshore minions. Mostly (but not always) intentionally, mostly (but not always) subconsciously.
In aggregate, this was a nightmare, a bucket of worry for all - so much so that our friend and colleague Jochem, front-end dev to the stars, morphed the Finaplex logo into a new one called Chintaplex (chinta being the Hindi word for worry).
So that sucked.
But the counterpoint…
One of my most thrilling experiences as a tech leader has been building and managing what by conventional definition would be considered an “offshore” engineering team, spread across 4 countries and 3 continents: our team at Yieldstreet: New York, Brazil, Argentina, Malta (and eventually Utah, Oklahoma, and Boston as well). And, for the most part, this collective worked together like a multi-lingual cross-cultural symphony that rarely if ever devolved into cacophony and built some of the most amazing software I’ve seen.
So why did this work, whereas Y above (and a few after that) didn’t (quite)? In theory it was simple: we engaged with them exactly as we did with our NYC-based engineers.
I believe the reason many if not most traditional outsourcing models falter is rarely that the offshore engineers or their companies suck. Y had good engineers, as did most of the non-US based teams I worked with over my time. In fact, more than good, brilliant engineers, from whom I learned a lot.
The fault, more often than not, lies in the hiring company. Or rather, the space between, aka the engagement protocol. An implicit pecking order grows unchecked, an us-and-them divide. Little or no agency is given to non-local teams. Just do it as you’re told, if not the actual words deployed, is often the covert (sometimes overt) sentiment. As the corporate platitude goes, they are not set up for success.
This in fact ends up doing a disservice to the business as well. We miss out on all that this pool of talent has to offer by reducing it to a code-monkey army. I mean, your technical architect in Buenos Aires may draw the same comp as your analyst in New York, but that doesn’t make her an actual analyst. So why would you limit her responsibility scope to that role? Don’t you want to let her brilliant architect brain loose on your tech challenges?
This is what worked for us at Yieldstreet: avoiding that.
There are many details in this ongoing experiment, but it really boils down to 5 things, that all coalesce into one idea: They are us. We’re one team.
1. We stopped calling it offshore
That was Step 0. We just banished that word (and adjacent ones, like outsourced) from our vocabulary. Decades of sub-optimal engagement style has actually morphed these terms into borderline pejoratives due to the implicit pecking order they’ve come to suggest, if not enforce.
These were our global teams. Any us-vs-them reference, however oblique, from anyone, was not tolerated. This seems like superficial verbal fluff, but it’s not. It was a very important distinction, and required unlearning of old habits, on both sides.
And it wasn’t just words. We meant it.
2. We integrated the teams
In every way possible. An engineer is an engineer is an engineer. Regardless of where she is located.
All pods have a geographical mix of team members, tailored for the pod’s charter and needs. Aka the mix is merit-based.
Roles are similarly distributed on merit: pod leads, technical architects, manager, all others. Again: merit-based. We even had cross-office reporting structures, though there is some benefit in keeping those as local as possible.
Everyone has agency. Everyone plays a role in shaping what is built and is not just building what they are told. Everyone is encouraged, even required to ask questions, including the most fundamental question often denied to traditional offshore teams: Why?
Team members, regardless of office location, interact with other parts of the org as needed - especially internal users of the products they work on: marketing, customer support, operations.
One thing to watch out for here is time zones. The whole “24-hour dev cycle by getting a team in Asia” thing is an effing mirage. You need a meaningful overlap window in your workday for this to work well.
3. We folded them into our HR processes
This was key. All team members, agnostic to their location, were on the same career development plan, had the same L&D opportunities, same review process, same bonus schedules, same recruiting process, same responsibilities based on their role, same social ceremonies - holiday parties, summer outings, dunk tanks, that sort of stuff. We even provided them with healthcare benefits.
Each location had Yieldstreet offices where these teams worked, following the same hybrid schedule, and complete with company branding, protein bars, and, well, other kinds of bars.
4. We gave them skin in the game
A specific innovation that built on #3: They have equity in the company. They are on the same ISO plan like all other employees. This is the first time I have seen this done, props to Milind, one of Yieldstreet’s co-founders, for instituting that. Same grant brackets, same vesting schedules, same incentive, as everyone else.
5. We enabled frequent facetimes
We put in a cross-office travel budget; a mere fraction of the “savings” achieved by the geo-distribution of our talent. Multiple times a year, cohorts travel across our offices for a week or two, work side by side, eat and drink side by side, and actually have an enriching bonding experience and cultural cross-pollination.
Trust me, if you haven’t heard Maltese spoken with a Portuguese accent at the tail end of 4 pints of Cisk, you haven’t lived.
What’s more, these are now, I hope. friends for life, on both sides of the Atlantic. And they carry a strong identity of being a “Yieldstreeter”.
Caveats
I guess in hindsight I could have just reduced this whole post to one line: Treat your non-local teams the same way you treat your local teams.
That said, I do realize there may be legitimate gating factors to this: company policy may not allow full integration, regulatory guardrails or internal governance policies may limit data sharing etc. You will need to tailor the specifics to your context. But that doesn’t change the underlying spirit of the idea, which is human and behavioral: one team.
It also requires the right kind of offshore partner, one that is open and flexible to adapt to your desired working model, whose business strategy is not volumetric, where 5 engineers are deployed to move a button 5 pixels to the left. I’ve been lucky in this regard to find good partners. (Y was not one of them.)
Of course, all this presumes you treat your local “FTE” teams well. I hope you do.
PS This journey was not always easy. There were definitely speed bumps. Cultural nuances and language barriers sometimes triggered misunderstandings. Pecking orders did evolve despite best attempts to avoid them. And it is still an experiment in progress. Like most everything else. But it has worked better than any distributed model I have seen or managed. And it keeps getting better every day.