Hacker News new | past | comments | ask | show | jobs | submit login
F|R Crib Sheet: How to Source Good Offshore Developers (gigaom.com)
13 points by naish on June 15, 2008 | hide | past | favorite | 13 comments



"If you’re bootstrapping your startup, offshoring your web development is a great way to save money."

Am I the only one here who finds this statement a little spooky?

If I'm bootstrapping a web startup, development is the last thing I'd want to outsource.

For an early stage startup, development is both the most important thing to do and my best skill set. I'd want to focus on that and outsource anything else.


I don't think you have to take it as a all-or-none deal.

Often, I'll outsource small sub-projects that I know would take me more time than I can budget for that aspect or because I don't want to sidetrack myself from the marketing aspect of my business.

For instance, I needed to extract data out of a Firefox plugin that used SQLite. I really didn't feel like unraveling the schema and putting together the core SQL statements to extract that data the way I needed, so I had an outsourced developer hack it together for me for $50.

It probably took him about 5 hours to put together, so if I value my time over $10/hr, it was money well spent. (Especially when working on marketing parts of my business, my time is worth wayyy-y more than $10/hr.)


That's a fair point.

But the downside is that you now have this mysterious black-box in your code that you can't really do anything with.

If, 6 months later, you decide that you want to add a feature or fix a bug you're only going to have two options:

1. Be at the mercy of the outsourced programmer

2. Spend 5 hours learning the schema, and understanding the existing code. Then, after realizing that the code you bought is crap (not necessarily true, but more likely than not), spending another 5 hours rewriting.


#1 isn't any different from hiring an employee who leaves. #2 isn't any different from hiring an incompetent employee who leaves.

I'm working from Beijing with some seriously cool Rails hackers. They read all the English blogs, articles, books and produce good code. When you hire an "offshore" team, approach it as you would an employee. The teams that compete solely on price, well, you get what you pay for.


It doesn't always have to go that way if you plan to have things reviewed. I know one founder of a ppc optimization service who outsourced his MySQL schema development to some folks in the former USSR a few years ago and then asked me to take a look at it when they were done. The schema was reasonable for what he needed and it looked pretty easy to map directly to the PHP framework he was using.

The total cost to him was about $400.


"But the downside is that you now have this mysterious black-box in your code that you can't really do anything with."

Presumably you have the source code. Which makes it about as much of a black box as Apache, or MySQL or anything else you're using.


This statement is spooky edw.. it's spooky.

All code needs to be maintained. Those offshore guys are quick to grab the money and it doesn't take too long for them to send you the code but it's gotta be maintained otherwise it's garbage. And that's the big problem with off shore development....


from an earlier post:

"From starting the search, to the first developer writing code should take around 3-5 months and there may be further delays whilst you complete your documentation."

Don't know what start up has 5 months to wait before coding.

Wow.


If you can't code very well or are an mba with an idea, then it may make sense to offshore. It may be cheaper to send the code offshore than to send it across town. But it might not be too. You have to add in the cost of communication as well.

I would argue that it makes absolutely no sense to offshore code for a hacker.

It typically takes me longer to document the requirements of what I want than to actually write it. I would expect the same out of any good hacker. If it is code that would take less time to document than to write. That most likely isn't code you could send off to an average programmer now is it?

You are going to get code that stopped being developed at barely good enough. I don't know about everyone else but I don't want code that is barely good enough in my app.

You lose the domain knowledge of that component you outsourced. That is what you need to take your app to the next level.

You most likely will end up debugging that code at some point.

You miss the opportunity to iterate.

I'm sure there are just as many (proportionally) great developers off shore as on shore. It is harder to go across the world than across town, across town is harder than across the room. My final point is that I have a much better chance of getting someone great here than off shore. I've worked with thousands of developers over my career so far. I can count on one or two hands developers that I could say write me an X and I know I would get a really well written X. Most of the others would eventually get me a working X but we would have go through several iterations. If I have to iterate I could have written it faster myself.

It may possibly make sense in some situations. The Hacker startup world is not that place.

As a hacker it makes absolutely NO sense. Okay last point. Most of us have read Pauls' Essays. We are all trying to "Build Something Great", That hopefully people want. Would Leonardo outsource? Build me a design for a flying machine / Tank / Submarine. What the hell do you think he would have gotten back? Right, I didn't think so either.


+1. Saw your reply after posting mine. I think you have put the 'right' point across really well.


I really do not think most startups can afford to go the route of big companies and offshore out their development work. (Side-note: I am a developer based out of India)

The first key hurdle is obviously to find the right company. RFI's and RFP's have been around long, and a very intelligent reply to them does not necessarily imply you would get the right set of developers to work for your project. A startup typically would not be a very 'big' account for most of the companies, and your probability of landing up with very good 'programming' talent is minimal. (I guess good programmers are in short supply at most places). At the end of the day, the developers on your project is what really matters.

Assuming, you are smart (and lucky) enough to have selected the right set of people for your offshored development project, still getting this relationship working across geographies, takes a bit of time. A fast and nimble startup, probably just does not have the luxury of time, assuming the product would change rapidly based on user feedback/market/competitor situation. (unless it was freakishly conceptualized in a brilliant way from the start itself)

In all, unless you have a relatively simple product in technical terms or a very well specified one, and have the luxury of time with you, only then look at outsourcing your development work.

One line decision maker: If you consider yourself a hacker, do not outsource your (initial) development. It's not for you, and high chance you would be left disappointed.


right on edw...

Even Bill Gates is struggling with this one. He built a huge r&d center in bejing a few years back and he's deeply regretting it now.

I think it makes sense to offshore things like design (I use a great CSS guy in equador for some of my stuff) but for core project work I keep things closer to home.


I downmodded this comment.

  Even Bill Gates is struggling with this one. He built a huge r&d center in bejing a few years back and he's deeply regretting it now.
Could you please give a source for this?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: