If anyone is looking for tips on working with offshore programmers, read Max's few but timeless points!
He nails his experience about getting designers from Romania. They have really great taste! And Russians for math-related complicated programming. And India for cheap average quality programming work(btw, Indian designers are in general pathetic). These have been my experiences too over 8 years of being on both sides of the outsourcing market(as a freelancer and as someone who has hired folks offshore). It is an art working with people offshore and if you can manage it, it can give you a real edge especially in starting phases.
A company I worked for used a relatively big web company in Romania, hiring a few developers over there to work full time on their site.
The HTML and CSS they wrote were generated using Dreamweaver, and their PHP was a mess with tons of copying and pasting. It was impossible to get the company's higher level management team to understand why continuing to use these guys was bad idea, because they saw the front end 'just working', yet it was so hard for us to modify and understand any of their code.
If you intended to have a site that one day has skilled programmers working on it and is actually maintainable, be careful about things 'just working' with outsourced code.
Little quiz ... what should set your alarm on? The "big" size of that "web company" or its location?
For me it's a no-brainer ... simply because for a consulting company to scale to that "big" factor ... you need to hire a lot of third-rate, cheap code-monkeys ... that's business 101 ;)
Second of all ... your company should've asked for a portfolio of the actual developers that ended up working for you, simply because the quality of the employees varies greatly even in well-respected organizations.
Or was there some kind of manager acting as a proxy between you and those doing the actual work?
And out of curiosity, in your country there aren't any "big software companies" that are doing consulting work of dubious quality?
This seems to me that it was more a problem with your management. Blaming it on "outsourcing" is not really accurate.
BTW ... in my small company that does consulting work, we aren't taking outsourced projects very often. We don't do it simply because those kind of clients that would outsource to us are of very poor quality, leading to poor communications, unmet deadlines, unmet payments and generally disastrous results.
To clarify, by 'big' i meant not just in size, but in number of highish profile clients.
Towards the end of me being there, they added a more senior developer/manager to the Romanian team -- his code was much better (i.e. not dreamweaver generated HTML/CSS) and was easier to communicate with, but still the code quality from the others on the team was very unmaintainable.
I apologize if it seemed as if I was generalizing the entire country of Romania's programming abilities -- definitely not what I intended. If all the developers were as good as the senior developer added on later, I'm sure it would have went much better.
My main point remains the same though, and I think is one that we can both agree on - that hiring inexpensive labor with only focusing on the front end user experience, without any respect or idea of how well the back end is being constructed is a bad idea. I'm sure outsourcing can work, but only with careful attention to the behind the scenes backend code quality, to ensure the project is not being held together by duct tape.
Yes, quality of code is a huge concern for me which is why I always have a growth plan: if a certain project takes off, I will quickly hire another proven full-time programmer to recode or completely understand the project.
I also am not a huge fan of working with offshore companies. There is enough friction already in talking remotely. I don't like another layer of management in between developers. Though for bigger projects, you need a project manager of some sort.
I feel like there are whole marketplaces I'm not aware of - where do people go to find offshore help? I've universally found poor quality, which ends up with me paying people I know personally a ton of money to grind out boring crap (or doing it myself), when I'd much rather pay them to work on the interesting things.
A lot of it comes from experience. After outsourcing for a year, you can judge pretty accurately within the first paragraph what a person is good for. The way they communicate will tell you a lot.
I always felt like someone should write a quick, to-the-point ebook for outsourcing newbies on working through the outsourcing world. May be I'll pen that one day:)
Zaid - I love your blog so your future ebook will probably be good too. If you have extensive experience outsourcing, I want to learn from your trails. So please do it.
Here are some helpful links to get you started. I'm looking forward to reading your ebook.
One of the things that I really like about HN is that I feel like most of the people here have information worth sharing, and information that's valuable enough that I'd pay for a PDF of that information.
I'm kind of surprised we don't have an HN ebook marketplace going yet, to be honest.
I have done freelance work through oDesk (at one point full-time for a couple months). I see postings looking for programmers where they are willing to pay max $4/hr. I try to move on and not get frustrated but it's difficult.
I would be really interested in hearing just what kind of programmers you hire. From the little you mention, it sounds like you need to treat them like kids/code-monkeys - spelling everything out, not wanting their creativity, etc.
I have thought sometimes to just spend a couple hundred bucks and hire a couple cheap programmers to work on a made-up project just to see what it's like. It would make for an interesting blog post at least.
A lot of it is also expectation control. I am always mentally ready for a programmer to bail out on a project. New folks who try outsourcing often give up after their first or second failed attempt. There's no secret - even after years of doing this, I pick the wrong guy every now and then.
Few days ago I made a full-time offer to a php programmer in India after extensive interviewing. Finally, I sent the contract. He went missing since getting the contract. Not a huge surprise - he probably used it to get a better offer at another company. I just went down the list to the next candidates.
In twitter they queue up several content messages a day and schedule them for release using hootsuite on our clients twitter sites. The staff also singles out friend and follower tweets and re-tweets them. And they respond to all @mentions on the sites we run for clients customer service accounts.
For our blog review sites they are the source of the reviews we create. For our product news sites they do product write ups. For our e-book sites they write the e-books. For clients who need whitepapers, they write them.
We do not post on any sites other than our own or on client SMO accounts. We never post anonymously, we never post on a site that is not registered to a paying client.
We do not spam. Spam is for folks who can't originate good content. Over half our content gets re-tweeted, or link backs, so we are doing this the right way.
There is a lot more but the basic principle is that if we are being paid by a client to post on their properties, its legitimate. If they don't own the property, we don't work with them.
If it's coming across as spam, I don't think they are doing it right:)
I have friends that make a killing from SEO and they have blogs on Tumblr and cough Posterous that they tactically use for SEO. They also spend hours writing the content.
This is not the kind of stuff you spend one second banning since none of it is posted to your sites. It is strictly created by and for and posted on the sites owned by the clients.
When you step out of the box and think, you can find plenty of legitimate ways to leverage low cost content providers, for profit.
I agree, there is a right way and a wrong way to do SMO. I think you'll agree that most people offering their SMO services are either selling snake oil or spam. Few seem to know how to do it right. You seem to be in the minority so I'd love to learn more, especially in the context of what the folks overseas do.
Are we talking about them writing quality copy for your website that hit on specific keywords? That would be SEO territory but I know people using Mechanical Turk and other services to get decent-quality copy written for cheap.
I graduated from Mechanical Turk to full timers about 2 years ago when our client load increased. Though SEO is a part of our work, the real money is in traffic. We achieve a better than 1/100th CPA cost with SMO as compared to PPC with Google.
Think about it. Someone who clicks through to your page from Twitter/Facebook/Linked In is a known quantity. What do you know about someone that clicks on a paid link in google. Nothing. What does it cost for that click? Only your monthly publishing cost per account divided by total clicks per month.
And when someone walks through the door from SMO, you got a @name, you can look up their bio, you got their thoughts in their tweets, and you know where they are from.
And it cost a fraction of the price you pay Google for an unqualified, anonymous click. And with Twitter you have zero click fraud.
I have cracked the code on CPA using Twitter and it begins with killer content. And I use staffing in the Philippines which cost 1/15th American dollars for same person, no taxation, no flooring cost, no legal issues.
If I were Google, I would definitely figure out how to buy Twitter before it eats their PPC lunch. There are a whole lot of us X-PPC guys who no longer pay ridiculous fees to the search engines.
As for the Turk, the cost is a little more than the PI and with your own staffing, you get the added bonus of continuity. You also get the benefits of knowing your staff, weekly quality review meetings, standardization of process, and a consistent quality that I found missing with Mechanical Turk.
I would still recommend MT though for anyone running a few sites who needs less than full time commitment for projects.
Wow, that's very insightful! Just knowing we've people here actually succeeding with twitter.
Do you have bunch of niche twitter accounts with a lot of followers that you built up which directs people to your content sites that bring in the dough? I'm trying to understand the general twitter flow.
People's personal experiences are interesting, but are potentially ridiculous generalizations.. like saying Jews make better bankers, the British are good tailors, the French are great chefs, or what not. I doubt all Indian designers are useless..
He nails his experience about getting designers from Romania. They have really great taste! And Russians for math-related complicated programming. And India for cheap average quality programming work(btw, Indian designers are in general pathetic). These have been my experiences too over 8 years of being on both sides of the outsourcing market(as a freelancer and as someone who has hired folks offshore). It is an art working with people offshore and if you can manage it, it can give you a real edge especially in starting phases.
Curious, are you deep into affiliate marketing?