Slashdot Mirror


Ask Slashdot: Is Outsourcing Development a Good Idea?

New submitter penmanglewood writes "I am a developer at a small IT company, and we primarily make software and games for the education market. I used to work with a team of developers, but for reasons outside the scope of this question, my boss and I are the only ones left. My boss says that our new strategy is to use outsourced developers to do the 'monkey work' for us. To me, this sounds like a bad idea. Do we give the developers access to our internal libraries? How will they be able to work on parts of our product without having access to our repository. I could think of a hundred more objections, but maybe I'm looking at it the wrong way. Is there a smart way to outsource development, or is it just a bad idea?"

13 of 403 comments (clear)

  1. Just remember by Anonymous Coward · · Score: 5, Insightful

    You get what you pay for. There's a reason those outsourced programmers are so cheap. They don't care about you, or your project, and they don't have to maintain it when it breaks.

    1. Re:Just remember by TheRaven64 · · Score: 5, Insightful

      Actually, the problem is that you often don't get what you pay for. The most important think when considering outsourcing is to work out how you are going to evaluate their work. If you don't have a mechanism for rejecting bad work, you'll get bad work. If you're doing off-site code review with people several time zones away, you may find you're spending more time doing code review than it would take you to just rewrite it from scratch...

      --
      I am TheRaven on Soylent News
    2. Re:Just remember by elgeeko.com · · Score: 5, Interesting

      We do a lot of out sourced work for other companies and our customers tend to be very happy with us and many of them come back to us for follow up projects. We're also not cheap, in fact our fees are rather high, but so are our standards. We're located in the mid-west and the vast majority of our customers are within our region, but I've been known to hop on a plane and fly to the coast to finalize a deal or to reassure a customer that we're real people doing real work. Your first sentence says it all, you get what you pay for. As for the time zone statement I think it depends on who you're outsourcing. There have been times where we've outsourced some of our projects in order to meet deadlines and we've established solid contacts with several Individuals in Bangalore and I've found them to be an absolute treat to work with. If someone is going to outsource the most important deciding factor shouldn't be money or location, it should be skill. Any good development firm is going to have a list of previous satisfied customers that should provide a solid reference, if they don't then you shouldn't take the risk unless you're willing to accept sub-par work for sub-par pay. If someone is looking for "cheap" then that's exactly what they'll get.

    3. Re:Just remember by multicoregeneral · · Score: 5, Insightful

      I started outsourcing awhile back when I needed to be in two or three places at once, and the work was too much for me to finish on my own. Initial experiences with it were awful. Just really bad. The work was terrible, and I had to shell out cash for things that never got done. Initially, I ended up doing a lot of rework. My first thought was that the language barrier and cultural differences were an issue.

      So I engaged with Google translate, broke projects up into smaller pieces, and communicated in shorter well thought out sentences. Also, for cultural reasons, they almost never tell you when they fail at something. So you have to actually instruct them to do so, or they will leave you hanging, or worse, spinning their wheels on the clock for days on the wrong thing.

      If you're doing something complex, you're going to want to stop, break it up, and explain it exceptionally well. Otherwise, you're virtually garaunteed to lose money.

      That said, I don't think outsourcing is so bad these days, once I've gotten the hang of it. Now that I'm accustomed to it, I don't offend people as often with bad jokes (never tell jokes), and the work gets done with close to an 80% satisfaction rate. I recommend it, but there will be a learning curve.

      --
      This signature intentionally left blank.
    4. Re:Just remember by Lonewolf666 · · Score: 5, Interesting

      If you're doing something complex, you're going to want to stop, break it up, and explain it exceptionally well. Otherwise, you're virtually garaunteed to lose money.

      Good point, and the "break it up, and explain it exceptionally well" translates to detailed and clear specifications.

      In my experience, not every organization is able to create those. Actually, my experience as a developer is more along the lines of being given a vague goal, producing a prototype, and then people would play with said prototype and start producing change requests. Which tends to developing the project piecemeal and with plenty of feature creep.

      If your company is capable of writing good specifications, outsourcing may work for you. If it is of the "vague goal" persuation as described above, stay far, far away from outsourcing ;-)

      --
      C - the footgun of programming languages
    5. Re:Just remember by elgeeko.com · · Score: 5, Insightful

      Further south, we're true hay seeds. Kansas City Mo. I think he got bent out of shape because we've outsourced some of our work to a couple guys in India when the deadlines have changed and exceeded our internal capacity. Some of the greatest developers I know are from India and if someone thinks taking advantage of their skills is "Un-American" then that's their loss. We developed those relationships, those friendships, because they share the same passion for development that we do. As a general rule we only re-outsource when the dynamics of a deadline changes in mid-project and we need some quick help. Yes, we're Americans, but most importantly we're humans beings, just like those guys in Bangalore.

  2. ...turn off the lights? by Anonymous Coward · · Score: 5, Insightful

    ...as if your the last two left, there isn't a company left - it's time to pull the plug. If you can't perform the service / provide the product you were created for within the organization, or even get it started - then you are just conservators of a bunch of assets, waiting for the right time to call it quits; not a software development firm.

  3. monkey work? by berashith · · Score: 5, Funny

    If monkeys can do it, then just outsource it to them . I see a huge lack of perspective just from that idea alone.

  4. The Attitude Is Telling by Jane+Q.+Public · · Score: 5, Insightful

    If you are a developer, and your boss thinks programming is "monkey work", I'd be looking for a different job, right now.

    I know that's not the question you asked, but that's the answer I have.

  5. The other side... by roninmagus · · Score: 5, Insightful

    I'll come from the other angle. I'm a consultant developer full-time. In order to be successful, don't keep the guys at arm's-length. Yes, they will need access to core libraries, and anything else that will make their project successful. You will need to put in place adequate agreements to protect your IP, however. Set milestones for them to reach, and have regular (but not overwhelming, once a week should do) contact with the developer to discuss their progress. Verify they will be using technologies that you are comfortable with. The consultant knows better their own work-pace than you do. Allow them some leeway to set their own development schedule, making sure that it fits in with your ultimate deadline. Often, you will not be their only client. It's tough as a consultant to make everyone feel special. I often have 3-5 projects I'm juggling at a time. Of course, you will need to get the warm and fuzzies that they are devoting adequate time to your project, but try to get a feel for their existing workload as well before moving forward with them. Just my two cents.

  6. Re:Is it just a bad idea? by localman57 · · Score: 5, Insightful

    Then again, the non-idiots are less cheap and sometimes that can be a turn-off for decision makers who are more focused on the bottom line than on the quality of the work.

    Exactly. There seems to be this myth around outsourcing that somehow there's a magic method by which an outsourcing company can provide you engineering or programming effort for less than what it would cost you to hire someone of equal quality, despite the fact that the outsource company has to provide facilities, licenses, computers etc for that person, and also make a profit. This just isn't going to happen. You go to outsource for business flexibility, or in order to gain access to expertise that you don't have internally, and don't want to pay to hire over the long term. If it seems too good to be true, it is.

  7. That's not fare, partner by Anonymous Coward · · Score: 5, Funny

    Hi, I am Bob from Texas. I think you are becoming to be unfair to Indian programmers. Indians work diligence at programming trade and have many skills of which may be offered. First place, they speak fluency English. Also, they make for hard work for modest pay. I think you should be finding them to be good workers with code of great significance.

    1. Re:That's not fare, partner by Anonymous Coward · · Score: 5, Funny

      Please do the needful, today morning.