Build An Offshore Development Team That Won’t Suck
Build An Offshore Development Team That Won’t Suck

The No. 1 problem of almost every Silicon Valley
entrepreneur is finding engineers. Developers in San Francisco are
similar to apartments in San Francisco — really expensive, hard to get
and even harder to keep. On top of a six-digit salary, bonuses and large
stock packages, you’ve got to offer a super-duper cool office, some unusual perks, etc.
It doesn’t have to be this way.
Our engineering office is offshore,
and we’re really happy about it. We have close to 0 percent down time,
timely releases and an amazing product. However, most startups that go offshore for their development needs fail. What is amazing to me is that the founders of these companies make the same mistakes over and over again.
Building an offshore development team that doesn’t suck is hard, but doable.
Rule No. 1: Go In Person
When you go offshore, you’re more likely to have to deal with another culture. It’s impossible to work with people you don’t understand (literally and figuratively).
If you want to hire engineers to work for you remotely, you
have to fly there, meet in person and become friends. You better spend a
few weeks, or even months, working with them on their home turf. You
need to first make sure they actually speak English and you can
communicate with them easily. Then, build trust and understand their culture.
Folks in Eastern Europe are going to be super blunt.
Sometimes, too blunt for their own good. A developer from Russia will
definitely say that some mediocre code is shit when it is not shit, it
is just mediocre.
If you want to be successful anywhere, doing anything, you need to treat people nicely.
On the contrary, folks from India or Southeast Asia are
more likely to say the same code is “OK” to avoid a confrontation. And
both developers could be fantastic to work with — you just need to learn
to understand them, and you can only do that with real-life
interaction.
Airfare is cheaper than the cost of a bad hire.
Rule No. 2: Give Your Engineers Stock
Regardless of where they are based, your first engineers need to be paid fair market salaries. You don’t
want them to be stressed out about money and take on other projects.
However, the salary should not be excessive, and incentives should be in
the form of stock.
There are a few reasons that you should offer stock, but
we’ll start with a dark one. Here is what could happen: They write
crappy code to deliver features quickly because they treat your business
as just another client/job. Once the code behind the product becomes
spaghetti, they slow down, you get frustrated, they leave and your
startup is screwed.
Why would they leave? A) It was no fun to work with crappy
code; B) You bitched about them not delivering. If they have stock as an
incentive, they’ll make sure their code will (at the very minimum) work
for as long as they’re vesting.
The lighter reason is that most talented engineers don’t
care about money as much as, say, salespeople (not that this is a bad
thing, they just typically have a different set of motivations).
Giving your engineers stock is a sign of trust and appreciation.
Engineers tend to be more creative and care a lot about the products they build,
so they need to believe in what they’re doing and need to be a part of
it on paper. Otherwise, they’ll get bored really quickly. Giving your
engineers stock is a sign of trust and appreciation. If you want them to
treat your product like their baby, you have to make your company their
baby, too.
Finally, stock incentivizes engineers to stay with the
company longer. Software developers are creators. Many creators get
bored once their creature is mostly done. Most products get “mostly”
done from an engineering perspective once you launch an MVP.
Past that phase, there is just maintenance, integrations
and other things that are no fun for creators. You need to make your
engineers understand that they’re not only creating your product, but
also creating your business. That and only that will make them stay for
years.
Rule No. 3: Build A Hiring Brand Where You Hire
There is a reason it only takes me a couple of Facebook
posts to line up great Belarusian talent. We promoted the heck out of
PandaDoc from the start. I was interviewed by all the major tech
publications in Belarus, we participated in a bunch of startup events
and sponsored a number of them. Even in San Francisco, we positioned
ourselves as a startup from Belarus. And while I do care about the
startup ecosystem in my motherland… it was not the sole reason. I’m a
capitalist pig, after all :).
From Day One we were actively building a hiring brand in
Belarus. We want to be the go-to place for engineers if and when they
want to join a startup. We want to make our engineers proud of the fact
that they work at PandaDoc. Folks in smaller dev communities talk to
each other all the time.
Companies in Silicon Valley spend millions to build
hiring brands; we spent a few thousand. Sponsoring events there is 20x
cheaper. Journalists there jumped at the chance to interview a Big Shot
from Silicon Valley, which I’m not, but that was OK with them.
Journalists are great at making things up.
Going through a third-party agency is equal to doing a half-assed job on your end.
Another way to pimp your hiring brand offshore is to bring a piece of Silicon Valley culture with you, AKA “perks.” No, you don’t have to freeze their eggs. But you should absolutely treat your offshore team members the same way you treat your HQ team. If the HQ team goes to Napa, make sure something similar happens for your offshore
developers in Ukraine or Bangladesh. I’m sure they have their own kind
of Napa. Oh, by the way, it will also be 10x cheaper than Napa.
Rule No. 4: Fly Engineers To Your HQ
Bringing some pieces of Silicon Valley to where you hire
your engineers is really important. But what is even more important is
bringing some “pieces” of India or Belarus or Philippines to Silicon
Valley. By “pieces,” I mean your developers. You should fly them out to
your HQ. Why? First of all, your team members will get to know each other and they’ll be able to communicate more easily in the future by building in-person rapport.
Secondly, your engineers will be able to better understand
the business side of things, which is hugely important, especially if
you’re an early stage company. Thirdly, your engineers (depending on
where they are coming from) will be able to see a more developed country
with more advanced business processes. Bringing them on-site will help
them feel that they’re a part of this other economy, despite being
thousands of miles away.
Rule No. 5: Don’t Use An Agency
For this one I’ll probably get my ass kicked the next time I
fly to Belarus. There are a lot of agencies there with startup clients.
But as a current founder and former owner of an agency that worked with
a bunch of startups, I’ve got to say that if you’re a startup, don’t outsource the development to some third-party agency. Hire individual engineers and build your own team.
It doesn’t matter how good the
agency is or where they’re based: India or the United States. Building
your product via a third-party is a fail trap.
First of all, you won’t be able to compensate properly and get high-quality engineers if there is a third-party involved, because you don’t
have a direct relationship. Yes, you can find out what this third-party
pays them and ask to raise their salaries. But how would you give stock
or perks to someone who works for an agency?
Building an offshore development team that doesn’t suck is hard, but doable.
Secondly, most agencies assign project managers that are
supposed to be intermediaries between clients and engineers. This
scenario might work if you’re not planning to innovate and iterate on
your product. If that’s the case, then you’re not a startup and I’m
really sorry about the time you’ve just wasted reading this article.
If you are a startup, I’m sure that you believe that every team member has to innovate and have a say in product development. Having a project manager in between makes bottom-up innovation really hard.
Finally, going through an agency is going to be more
expensive. You’re going to pay 50 500 percent more. Spend this money on
the airfare and pay for your devs.
Having an intermediary just makes it impossible to do all
the things I’ve written in this article. To me, going through a
third-party agency is equal to doing a half-assed job on your end.
Rule No. 6: The Most Important One
Some founders who outsource, especially to third-world countries, treat their offshore
employees there as third-class citizens. If you’re one of these
founders, you can be sure the universe (or those developers) are going
to fire back. Karma is a bitch, after all.
Here’s the thing: People don’t choose to be born in a place with a fucked-up economy. And you didn’t choose to be born in a place with an excess of capital. It just so happened that you got lucky and they didn’t.
If you want to be successful building an offshore development team,
treat your developers there the same way as the ones you work with
locally. Actually… let me rephrase that: If you want to be successful
anywhere, doing anything, you need to treat people nicely. Amen.
Comments
Post a Comment