by Pine
I have known Hal Helms by reputation as a good teacher but this is the first time I listened to a podcast by Hal and Jeff Peters. I was really impressed with the topic and presentation of the podcast, which was an informal discussion punctuated with many jokes and anecdotes. I learned a lot from Helms and Peters Episode 17, "The Treat of Outsourcing". Jeff and Hal said that outsourcing can be a treat or a threat, depending on how you look at it. I liked this discussion because they examined the subject from two different perspectives. The first was from the point of view of companies or developers who use outsourcing services. The second perspective was that of the coders or developers who have to compete with those outsourcing services. It was great to see things from these two very different points of view. Hal attested that he has done a large and complex project with a tight budget ($30,000) and an even tighter timeline (one month). And he pulled it off by using the offshore outsourcing service. Great! But wait, don't rush off to outsource just yet. Hal said that he pulled it off but he would not recommend it. (I don't think it is because of the hate mail he might get if he recommends outsourcing. He did not recommend it because there are intricacies inherent to outsourcing in general, so it is best that you understand all those catches, pitfalls and gotchas before you try it yourself. ) Hal and Jeff also invited Clark Valberg, a more experienced outsourcing service user, to discuss what to watch out for when you use an outsourcing service. Clark said that your first and foremost task is to find a good outsourcing vendor. He cautioned that 90% of outsourcing work does not work out in the end. Of the 50 vendors he interviewed, only 10 were reliable. This is not very encouraging for a company that wishes to outsource. One has to have patience and aptitude in selecting the vendors. Sometimes money is not the only factor to be considered. If a company claims that they can do a complex shopping site in one week for $50.00, you should be cautious. Even if they can do the project within their stated timeframe and budget, you might get shoddy work. There are many dishonest or sly outsourcing companies. Clark said that when he asked for a work sample, the outsourcing company showed some good work from another developer who didn't work on his project. Sometimes, outsourcing companies used newbie developers in Clark's project after showing him sample code by more experienced developers. Having managed one of the largest outsourcing companies in India, I can personally attest to this. I have seen the quality of work greatly differ from project to project, even if only one outsourcing company was being used. (Worse still, sometimes within the same project, the code quality differed greatly because the company used several different developers.) The podcast pointed out one of the most important questions to ask: "Will I get a dedicated manager?" Managers are as important as developers, and a good manager will ensure that your project gets the attention it deserves and that you will also get a clear line of communication or point of contact. Hal and Jeff also brought up the two most critical issues in doing outsourcing: the time zone difference and communication problems. To communicate effectively with people from different time zones, you might have to wake up in the middle of the night just to do that conference call. Most of the time, offshore companies are more than willing to do that for you. As Hal and Jeff mentioned, the outsourcing companies are really ambitious and want to do work with people from the United States and United Kingdom. (Considering the exchange rate, it is not really surprising.) The communication issues are tied up with the cultural differences. Hal said that many people from outsourcing services (especially from Asian countries) do not really ask a lot of questions, lest they feel like a total idiot for not understanding the matter at hand. As an Asian who has seen such "cultural" behavior, I completely agree. So do not think that your offshore developers understand everything, even if they do not say anything. Many companies want to dump a project on the outsourcing company with a single email or phone call, which is another cultural fallacy. As Clark explained in the podcast, it does not work that way in the outsourcing world. Everything has to be explicit, explicit and more explicit. Clark advised anyone outsourcing a project to mock up or prototype what they want and to specifically explain the requirements to the offshore developers or managers. By taking heed of those pitfalls, you might pull it off with outsourcing. The second half of the podcast was dedicated to the developers or programmers who feel threatened by such outsourcing services. Hal and Jeff noted that how many pure HTML coders are available now. In the 90s, if you could spell HTML, you were the hip web master. Today, people can even use MS Word to develop and maintain their web sites, and the species known as HTML coders have evolved into Web site designers, Flash Designers, Web application developers and such. Hal and Jeff said that outsourcing is a wakeup call for developers to evolve from pure coders into web site creators or architects. This does not mean that you do not have to code or do what you love to do; it simply means that you have to think more about the big picture and the process from beginning to end. Clark said that as a developer, you should try to become more involved in the requirements analysis/discovery process and use your perspective to guide the clients to their best solution. Hal and Jeff's Podcast episode 17 is informative, and even if you are not outsourcing, you should be aware of what is going on and what can go wrong. Give it a spin and you might find some practical advice that you can incorporate into your current project(s). Helms and Peters Out Loud Episode 17: "The Treat of Outsourcing"