Ask HN: How did you find that offshore dev team you work with?
19 comments
I have made a decent living for a couple years cleaning up offshored projects. I do not have any suggestions but carefully screen them for communication skills, responsiveness to emails/calls, ability to track completed work, and overall skill. Too many people put blind faith that everyone can develop software equally and it just is not true.
True. Could you to share some tips on how you manage the team?
> Too many people put blind faith that everyone can develop software equally and it just is not true
So true.
So true.
1) Someone already has a pre-existing relationship (usually former work buddies) 2) The dev team works with other companies in the industry 3) Recommendation from someone in your network (often a VC or angel investor) all in that order.
When choosing your off-shore dev team, you should be looking at communication, track record and skill in the particular technology/industry. In particular for communication, I look at how many hours of overlap do they have with my current work hours. Being from the East Coast I find India and New Zealand difficult to work with as at best I have an 1-2 hours of overlap (and often they may ask for two meetings, one in your morning and one in the late evening).
Track record. Can you talk to some current and former clients who have had comparatively complex technology built? Are those clients happy, were the projects built on time, did they have any frustrations with the process, did they need a dev team to clean up the code? What was documented?
One last thing to check for is the turnover rate (India can be especially bad). How often do they need to off-board/on-board new resources? I've had teams where every 3 months someone is going and someone is coming.
When choosing your off-shore dev team, you should be looking at communication, track record and skill in the particular technology/industry. In particular for communication, I look at how many hours of overlap do they have with my current work hours. Being from the East Coast I find India and New Zealand difficult to work with as at best I have an 1-2 hours of overlap (and often they may ask for two meetings, one in your morning and one in the late evening).
Track record. Can you talk to some current and former clients who have had comparatively complex technology built? Are those clients happy, were the projects built on time, did they have any frustrations with the process, did they need a dev team to clean up the code? What was documented?
One last thing to check for is the turnover rate (India can be especially bad). How often do they need to off-board/on-board new resources? I've had teams where every 3 months someone is going and someone is coming.
you can easily find a good offshore team with good work ethics, usually better educated and more experienced at a reasonable price.
i have seen more hapless managers than poor offshore developers, it takes dedication to manage an offshore team, a daily standup is not enough, you need to communicate effectively.
if you're a small shop than you will find yourself doing the management out of necessity (you can't be burning cash and seeing no return). if you're a big company however (and i mean top end of Fortune500) then definitely ask your boss whether you can vet and get involved in the hiring process ( i say this because big companies have contracts with offshore consultancies and don't really look at small things like individual developer's experience when hiring the consultancy)
Communicate, Trust and organise physical visits (both ways)
i have seen more hapless managers than poor offshore developers, it takes dedication to manage an offshore team, a daily standup is not enough, you need to communicate effectively.
if you're a small shop than you will find yourself doing the management out of necessity (you can't be burning cash and seeing no return). if you're a big company however (and i mean top end of Fortune500) then definitely ask your boss whether you can vet and get involved in the hiring process ( i say this because big companies have contracts with offshore consultancies and don't really look at small things like individual developer's experience when hiring the consultancy)
Communicate, Trust and organise physical visits (both ways)
```it takes dedication to manage an offshore team, a daily standup is not enough, you need to communicate effectively.```
Think about it this way: Any project is composed of the business domain knowledge and execution skills. It's relatively easy to find off-shore dev teams with ok to good technical skills. It's a lot harder to communicate what you want built, how it should function and all the business rules that should be incorporated to a group of strangers who have different cultural contexts and cues and who most likely speak English as a second language. Off-shore dev teams are missing a whole lot of context that you or I may take for granted. Are you going to be able to manage a dev team without that context the same way you would manage a on-site dev team? Probably not.
Some things that will help significantly in transferring that knowledge are requirement documents, technical specs, wireframes/mockups (all that documentation that startups neglect). You should probably be looking for demos on a regular basis. Managing an off-shore team is often a full-time job, especially when getting the project off the ground.
Think about it this way: Any project is composed of the business domain knowledge and execution skills. It's relatively easy to find off-shore dev teams with ok to good technical skills. It's a lot harder to communicate what you want built, how it should function and all the business rules that should be incorporated to a group of strangers who have different cultural contexts and cues and who most likely speak English as a second language. Off-shore dev teams are missing a whole lot of context that you or I may take for granted. Are you going to be able to manage a dev team without that context the same way you would manage a on-site dev team? Probably not.
Some things that will help significantly in transferring that knowledge are requirement documents, technical specs, wireframes/mockups (all that documentation that startups neglect). You should probably be looking for demos on a regular basis. Managing an off-shore team is often a full-time job, especially when getting the project off the ground.
In my experience, your points about communication and onsite visits are key. Also, communication should be centralized and managed on both sides so there is not only a communication channel, but also clear lines of responsibility. Of course, communication is not just phone and email, but also well defined specs.
However, getting involved in another company's hiring process is rarely a good idea. Most offshore projects are results oriented, so getting involved in hiring is too low level (i.e. micro-management). In other words, manage the output, not the process.
With the above said, involvement in hiring can be effective when 1.) you're using the offshore firm to acquire very specialized, high-end talent, and 2.) you're paying a substantial premium above local market to ensure hiring is a rare event.
However, getting involved in another company's hiring process is rarely a good idea. Most offshore projects are results oriented, so getting involved in hiring is too low level (i.e. micro-management). In other words, manage the output, not the process.
With the above said, involvement in hiring can be effective when 1.) you're using the offshore firm to acquire very specialized, high-end talent, and 2.) you're paying a substantial premium above local market to ensure hiring is a rare event.
Interesting perspective. What I'm hearing you say is that it's more often a crappy process and poor relationship management that leads to suboptimal results. That's kind of like saying hiring good people and investing in them in always a solid strategy, if you have the resources to do so. If your resources are too tight to hire good people, or you neglect the good people on your team, you're gonna have a bad time. It's hard enough to build good software when your team is capable!
Exactly how teams fail, they skim on what's important, i am not saying you should be hiring A players from the start all the way, in my personal opinion, 90% of commercial software can be built with a bunch of honest average-joe-follow-instructions developers who will execute a sound idea/vision, this is assuming that YOU are the A player and you know what you're doing.
Once the revenues start to come in, feel free to go through the pain of hiring of A players, which is only half the journey, you need to also retain them by ring fencing piles of cash (bonuses, perks etc...) through out their time in your company, it is not for the faint hearted
Once the revenues start to come in, feel free to go through the pain of hiring of A players, which is only half the journey, you need to also retain them by ring fencing piles of cash (bonuses, perks etc...) through out their time in your company, it is not for the faint hearted
Being part of an offshore development team and a consultant I can tell you that clients mostly find us/me through networking and referrals. Mutual acquaintances, word of mouth and weirdly LinkedIn gave us most work.
But, as solomatov said previously, best way to do it is via a middleman. The middle man is from the offshore country and has most likely been in the US for a couple of years and has created a wide network of potential clients. These were by far our best clients. I know at least 4,5 eastern european consultancies that started this way.
But, as solomatov said previously, best way to do it is via a middleman. The middle man is from the offshore country and has most likely been in the US for a couple of years and has created a wide network of potential clients. These were by far our best clients. I know at least 4,5 eastern european consultancies that started this way.
Internal or outsourced?
If it is outsourced keep in mind you are most likely going to be hiring just for the coding side of dev work.
You will still need to handle requirements gathering, design, specs, wire-frames, quality assurance, project management, project vision, scope, etc.
I'm pointing this out because most of the time an internal dev handles a decent chunk of these tasks.
I'd always recommend at most a 1:2 ratio of internal to outsourced.
If it is outsourced keep in mind you are most likely going to be hiring just for the coding side of dev work.
You will still need to handle requirements gathering, design, specs, wire-frames, quality assurance, project management, project vision, scope, etc.
I'm pointing this out because most of the time an internal dev handles a decent chunk of these tasks.
I'd always recommend at most a 1:2 ratio of internal to outsourced.
As a person who came to the US from country which project are offshored to (Russia), I can say, that the best way to offshore, is to find a person in the US who came from the country where you want to offshore to and who has right connections. Without this, being successful in such an endeavor might be tricky.
Could some of this risk be improved by actually going to Russia and working side by side? I am a non-technical founder but I've been impressed with quality I've gotten from Russia-based developers. It seems to me if I spent time there with them we could move much faster. Thoughts?
> Could some of this risk be improved by actually going to Russia and working side by side?
That definitely would help.
If you have those same developers willing to allocate time and their resources - sure, go for it. With most eastern european countries it's important to have them dedicated to things. Your costs will be lower, your production will be higher (ymmv) and if funding is not a problem you should definitely try that out. Remember they are all "mercenaries". You will learn a lot just being in another culture. Most friendships you create there will last you a lifetime. YMMV though, as with anything.
If you're looking to work for or with freelance talent I can't recommend Toptal enough.
https://www.toptal.com/#contract-just-respected-software-arc...
They screen their talent which makes everyone in the network an expert and they screen their clients which makes them a joy to work with.
Disclosure: I'm part of their network and recently joined their team.
https://www.toptal.com/#contract-just-respected-software-arc...
They screen their talent which makes everyone in the network an expert and they screen their clients which makes them a joy to work with.
Disclosure: I'm part of their network and recently joined their team.
[deleted]