<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.5.4 (http://www.squarespace.com/) on Sat, 04 Jul 2009 23:16:16 GMT--><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><title>Software Sweatshop</title><subtitle>Software Sweatshop</subtitle><id>http://www.softwaresweatshop.com/bss/</id><link rel="alternate" type="application/xhtml+xml" href="http://www.softwaresweatshop.com/bss/"/><link rel="self" type="application/atom+xml" href="http://www.softwaresweatshop.com/bss/atom.xml"/><updated>2009-05-29T05:08:54Z</updated><generator uri="http://www.squarespace.com/" version="Squarespace Site Server v5.5.4 (http://www.squarespace.com/)">Squarespace</generator><entry><title>New Palm Pre Reviews and News...</title><category term="new palm"/><category term="palm news"/><category term="palm os"/><category term="palm pre review"/><id>http://www.softwaresweatshop.com/bss/new-palm-pre-reviews-and-news.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/new-palm-pre-reviews-and-news.html"/><author><name>Raza Imam</name></author><published>2009-04-25T05:07:13Z</published><updated>2009-04-25T05:07:13Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>Now for a little shamless self-promotion...</p>
<p>&nbsp;</p>
<p>I'm a die-hard Blackberry user and after much thought, I'm starting a blog about the <em><a href="http://www.palmprereviewer.com">new Palm Pre</a></em>. It features <em><strong><a href="http://www.palmprereviewer.com">Palm Pre reviews and news</a></strong></em><br /><br />We've been doing mobile application development for a while (FoneKey.net) and are taking on iPhone applications. We're going to get into developing on the <span style="text-decoration: underline;"><a href="http://www.palmprereviewer.com">new Palm os</a></span> (titled WebOS with the Mojo SDK) and I see a huge opportunity for developers to create some amazing apps (and maybe make a small fortune). <br /><br />Thoughts?</p>]]></content></entry><entry><title>Agile Management: How Siemens Manages Offshore Development with Scrum</title><category term="agile development"/><category term="agile offshore development"/><category term="distributed agile development"/><category term="offshore software development"/><category term="offshore software development company"/><category term="outsourcing problems"/><category term="outsourcing risks"/><id>http://www.softwaresweatshop.com/bss/agile-management-how-siemens-manages-offshore-development-wi.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/agile-management-how-siemens-manages-offshore-development-wi.html"/><author><name>Raza Imam</name></author><published>2009-04-07T17:33:32Z</published><updated>2009-04-07T17:33:32Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>The <a href="../../cqaa.org">Chicago Quality Assurance Association</a> had an interesting lecture at the <span style="text-decoration: line-through;">Willis</span> Sears Tower on March 24th titled "<a href="http://www.cqaa.org/default.asp?contentID=50">Building and Managing Successful Offshore Teams Using Scrum</a>" There is a big difference between offshoring internal IT projects versus offshoring commercial product development, but some of the same lessons still apply. In the case of commercial work, there needs to be a vested interest on both sides to adhere to the constant communication... doing this offshore is tricky. The main problem with traditional waterfall development (especially when working with offshore resources) is that problems are hidden and they only appear at the tail end of the project. It's no wonder that almost 65% of software projects fail! How many horror stories have you heard about offshore IT projects over budget, out of scope, or over due because no one knew what the offshore team was really doing?</p>
<h2><span style="text-decoration: underline;">Benefits&nbsp;of Distributed Agile Development<br /></span></h2>
<p>1). Lots visibility and transparency</p>
<p>2). Were able to deliver work fast enough with acceptable quality</p>
<p>3). Offshore team enjoyed agile/scrum, especially the intense collaboration with each other</p>
<p>4). Not one "onshore" resource lost their job</p>
<h2><span style="text-decoration: underline;">How To Do Distributed Scrum<br /></span></h2>
<p>1). The most important thing is that they took the attitude that outsourcing would succeed; no matter what</p>
<p>2). They did a lot of risk analysis and thought of everything that could go wrong: communication, source code violations, connectivity, etc.</p>
<p>3). Asked their friends and they said "don't do it"</p>
<p>4). Lots of cultural awareness training... learned about the <a href="http://www.youtube.com/watch?v=BrmDo52NnTY">Indian head bob</a></p>
<p>5). Refined the product backlog: for the first sprint they had 2 guys at a time in the US. Hires were all fresh off the street, not much experience</p>
<p>6). Created a sprint planning calendar</p>
<p>7). Trained Indian team in scrum</p>
<p>8). Lots of product training in the design, architecture, etc.</p>
<p>9). Held both teams to the same standard</p>
<p>10). Created team bios on MS Sharepoint</p>
<p>11). VSS was a problem so they had to merge code every month, it was a huge pain</p>
<p>12). Made sure user stories are well defined; good user story should be well developed</p>
<h2><span style="text-decoration: underline;">Challenges with Distributed Agile Development<br /></span></h2>
<p>1). Had to have a few conversations about underpromising and overdelivering with their offshore team because they took too many user stories and then ended up failing at the end of the sprint. this is a common issue with Indian developers. The desire to please is common in Indian culture, so it has to be tempered with a sense of creating realistic expectations.</p>
<p>2). Because of the problems with Visual Source Safe, they didn't see offshore code till after the monthly&nbsp;merge... code review revealed problems which they had to fix</p>
<p>For more on agile offshore software development listen to Andy Singleton's podcast on managing <a href="http://blog.assembla.com/assemblablog/tabid/12618/bid/8360/Podcast-on-Managing-Distributed-Agile-Projects.aspx">distributed agile software development</a>and read Martin Fowler's article about <a href="http://martinfowler.com/articles/agileOffshore.html">offshore agile software development</a></p>
<p>Also check out <a href="http://www.agilejournal.com/articles/columns/from-the-editor-mainmenu-45/40-tackling-offshore-agile-development">Tackling Offshore Agile Development</a> and <a href="http://www.agilejournal.com/index2.php?option=com_content&amp;do_pdf=1&amp;id=244">Making Offshore Agile Work</a></p>]]></content></entry><entry><title>How Rich Sheridan Messed Up My Mind with Agile Development...</title><category term="agile development"/><category term="agile development methodology"/><category term="agile development process"/><category term="agile methodologies"/><category term="agile project management"/><category term="agile scrum"/><category term="agile software development services"/><category term="agile web development"/><category term="agile web development with rails"/><category term="offshore software development"/><category term="offshore software development company"/><category term="outsourcing"/><category term="outsourcing company"/><category term="scrum"/><category term="scrum development"/><id>http://www.softwaresweatshop.com/bss/how-rich-sheridan-messed-up-my-mind-with-agile-development.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/how-rich-sheridan-messed-up-my-mind-with-agile-development.html"/><author><name>Raza Imam</name></author><published>2009-03-26T04:53:40Z</published><updated>2009-03-26T04:53:40Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span class="full-image-block ssNonEditable"><span><img src="http://www.softwaresweatshop.com/storage/agile development.html?__SQUARESPACE_CACHEVERSION=1238471819611" alt="" /></span></span><span class="full-image-float-left ssNonEditable"><span><img src="http://www.softwaresweatshop.com/storage/agile development.gif?__SQUARESPACE_CACHEVERSION=1238472047630" alt="" width="419" height="180" /></span></span>Thanks for messing me up Rich... no really, as if I don't have enough problems already... I've got like 8 parking tickets to deal with (written by a vindictive little bicycle cop at that!) But I digress...</p>
<p>So agile development has always been interesting to me but <a href="http://www.extremeprogramming.org/">extreme programming</a> never fit my fancy. I knew nothing about it, but the word "extreme" made it sound impractical and unattainable, until I attended a talk by <a href="http://www.menloinnovations.com/founders/sheridanbio.htm">Rich Sheridan</a> of Menlo Innovations (check out <a href="http://agileexplained.com/">Agile Explained</a>) here in Chicago a week ago. It was really good.</p>
<p>In fact it was so good that I sent him this email a few days ago:</p>
<blockquote>
<p><em>Rich,<br /><br /> After your presentation last week I went to another agile (scrum)seminar and spoke to other people about agile (mostly scrum).<br /><br /> I have to say, none of it sounded as cool as the stuff you spoke about. User stories sounds much cooler than "backlogs", one week iterations sounds much better than 30 day sprints, and pair programming is probably one of the coolest programming concepts I've ever heard of. In all, XP sounds more fun, easier to use, and more intuitive.<br /><br /> Scrum seems more popular when working with distributed/offshore resources, so my team will probably end up using scrum, but by planting the seeds of XP, you really messed me up in the head!<br /><br /> Best,<br /><br /> Raza<br /></em></p>
</blockquote>
<p>to which he replied:</p>
<blockquote>
<p><em>Its one of the free services I happily provide! If you really want to get messed up, though, I'll have the charge you for that!<br /><br />Good luck!</em></p>
</blockquote>
<p>All in a day's work I guess...</p>
<p>We're switching our offshore development team to an agile methodology and I'm now taking this thing really seriously. We'll probably do <a href="http://www.controlchaos.com/">scrum</a> and adopt principles of XP like <a href="http://www.extremeprogramming.org/rules/pair.html">pair programming</a> (for more <a href="http://collaboration.csc.ncsu.edu/laurie/Papers/Kindergarten.PDF">read here</a>) Anyways, if you're starting to work with an offshore development company, you should insist that they follow an agile development method if you want working software.</p>
<p>Here are my notes from Rich's talk:</p>
<p>&nbsp;</p>
<ul>
<li>Most development teams have critical info tied up in one guy. You have to keep him very happy, or else you're in big trouble. The lesson to be learned is that lone geniuses and primadonnas leave you very vulnerable. </li>
</ul>
<ul>
<li>At his old company, they did an agile experiment. They decided to put all the programmers in one room and let them actually talk to each other, it worked great. They knew they were on to something...</li>
</ul>
<ul>
<li>One day, their client (<a href="ibm.com">IBM</a>) walked through and liked their setup... said it was the most amazing thing they'd ever seen</li>
</ul>
<ul>
<li>Rich was influenced by Edison (hence the name Menlo Innovations) who said you oculd have minor inventions every 2 weeks and a major one every 6 months. Verrry inteeeresting... (if you're interested in innovation, check out <a href="http://en.wikipedia.org/wiki/TRIZ">Triz Innovation</a>... he said there are 40 principles of innovation which can be applied to ANY situation to solve problems... amazing stuff)</li>
</ul>
<ul>
<li>Collaboration needs to happen because when one guy does the same role, the conversation only happens in his own head and he starts making rogue and dangerous decisions himself</li>
</ul>
<ul>
<li>Traditional project management is like a neutron bomb, it'll only kill the people... managing risk logs, work breakdown structures, burndown charts, etc. looks pretty, but it hides real problems</li>
</ul>
<ul>
<li>So they discovered a proces where there were no meetings, but tons of communication, lots of communication but little email, a 40 hour work week with no weekends and defying <a href="http://en.wikipedia.org/wiki/Brooks%27_law">Brooks law </a>that throwing more developers at a problem slows it down. No cubes, offices, rooms, or doors, but developers were happier. </li>
</ul>
<ul>
<li>Pairing is the most powerful tool they've ever had. Skills don't matter as much as collaboration and asking questions. Goal for new hires is to get their partner hired. Airlines pair pilots... Lorie Williams at the University of North Carolina did an experiment and found that the paired team produced 15% less lines of code with much better quality</li>
</ul>
<ul>
<li>Because of agile development, they have no customer support emergencies.</li>
</ul>
<ul>
<li>Experts don't work on what they're experts in, they just sit nearby and chime in. This is incredibly effective</li>
</ul>
<ul>
<li>Estimating project work is extremely accurate. Each user story has an actual and estimated time. They keep track over the course of many projects to get an idea of how accurate their estimates are. Over time they can give pretty reliable estimates on software projects</li>
</ul>
<ul>
<li>Clients have to take an "agile explained" class and agree to meet once a week. Committment is the main factor. This process won't work for projects where people are complacent and not invested in the process. (</li>
</ul>
<ul>
<li>Testing is not a task, it's an ongoing activity and is build into an estimate</li>
</ul>
<ul>
<li>Developers are <strong>NEVER</strong> be punished for missing an estimate... ever.</li>
</ul>
<p><br />After the talk I asked Rich how to apply agile development principles to distributed or offshore development teams. A few years ago they had two interns from Ireland. After they went back to Ireland they continued to work for Menlo as consultants. Funny thing is that even though they were half a world away, they were paired with programmers at Menlo headquarters in Ann Arbor, Michigan. How cool is that?</p>
<p>A lot of this stuff is just common sense. Seems to me that no matter which flavor of agile development you choose, you'll have a lot better project outcomes.</p>]]></content></entry><entry><title>What to Really Look for When Outsourcing Software Development</title><id>http://www.softwaresweatshop.com/bss/what-to-really-look-for-when-outsourcing-software-developmen.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/what-to-really-look-for-when-outsourcing-software-developmen.html"/><author><name>Raza Imam</name></author><published>2009-03-11T05:23:55Z</published><updated>2009-03-11T05:23:55Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span class="full-image-block"><span><img src="http://www.softwaresweatshop.com/storage/trust.jpg?__SQUARESPACE_CACHEVERSION=1220564837668" alt="" /></span></span></p>
<p><a href="www.adaptivesolutionsinc.com">Offshore software development</a> is a real balancing act. With any IT project, you have to juggle constantly changing requirements, shrinking budgets, emerging technologies, employee turnover, and executive support. Add an 8 hour time difference, cultural barriers, and communication problems to the mix and you have a real recipe for disaster.</p>
<p>Whether you're working in PHP, .NET, or Java, if you're outsourcing software development, you'll quickly realize that <a href="http://www.softwaresweatshop.com/bss/more-than-cheap-labor-5-things-to-know-when-looking-to-outso.html">offshore software development</a> is about more than cheap prices. Good programmers are easy to find but finding a reliable business partner isn't. Make sure you're getting your money's worth. Look for <strong>reliability</strong>, <strong>experience</strong>, <strong>intelligence</strong>, <strong>expertise</strong>, <strong>committment</strong>, <strong>process</strong>, <strong>maturity</strong>, <strong>principles</strong>, <strong>honesty</strong>, <strong>responsiveness</strong>, <strong>trust</strong>, and <strong>vision</strong>.</p>
<p style="font-size: 110%;">How does your offshore partner rank?</p>]]></content></entry><entry><title>How To Find, Evaluate, and Select an Offshore Software Development Company</title><id>http://www.softwaresweatshop.com/bss/how-to-find-evaluate-and-select-an-offshore-software-develop.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/how-to-find-evaluate-and-select-an-offshore-software-develop.html"/><author><name>Raza Imam</name></author><published>2009-02-16T22:29:26Z</published><updated>2009-02-16T22:29:26Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>Cutting costs is on everyone's mind these days. But before you ship software work over to a 3rd world country, think long and hard... Many companies aren't happy with their offshore team. This is the first in a string of posts about how to find, evaluate, and select a reliable offshore software development team. So if you're thinking about outsourcing software engineering work, listen up...</p>
<p>Outsourcing isn't for everyone. You can't send work overseas and expect to get a quality product without investing a lot of time into it. There are a few steps to outsourcing success: 1) selecting the right vendor 2) Getting executive support&nbsp; and involvement 3) developing specs 4) having a long-term mentality 5) gettting them up to speed on your industry 6) establishing clear communication guidelines 7) having a good QA plan in place.</p>
<p><strong><span style="text-decoration: underline;">Choosing the Right Outsourcing Company</span></strong></p>
<p>Finding a reliable vendor is probably the hardest part in the whole process of working with an offshore team. There is no shortage of outsourcing companies in India, Russia, Philippines, Vietnam, Ukraine, etc. So how do you actually go about finding an offshore vendor? Ryan Norbauer has a good primer <span><a href="http://www.thinkvitamin.com/features/biz/working-with-web-developers-in-india-why-whom-and-how">finding outsourcing companies</a> The bottom line is that you have to find someone that you can trust. You have to trust that they can get the job done. You have to trust that they will do what they say they'll do. You have to trust that they'll admit their mistakes. You have to trust that they're technically competent. You have to trust that they actually understand you. Nobody said it's easy...</span></p>
<p>Global sourcing is great (and profitable), if you approach it with the sophistication it deserves.&nbsp;&nbsp; Here are a few ways to find the right team.</p>
<p><strong>Thought Leadership </strong>- The best way to find a solid offshore team is to look for thought leaders in your field. Are experts in a specific technology or within a certain vertical? Do they publish articles for trade journals, speak at conferences, and blog about their experiences? Are they established experts in their fields? Are they leading the discussion around your industry, the problems you're facing, and solutions they've implemented? If they are, then you've found what you're looking for.</p>
<p><strong>Referrals</strong> - Another good way to find your offshore team is to get a referral from a friend. If you're working with someone 10,000 miles away, wouldn't you want to know that they have a solid reputation? Some of our most solid clients came from referrals from current clients or friends. Needless to say, these relationships are usually built on mutual trust and respect.</p>
<p><strong>Freelance Sites</strong> - Finding developers on sites like <a href="http://www.softwaresweatshop.com/process/admin/elance.com">Elance</a>, <a href="http://www.softwaresweatshop.com/process/admin/odesk.com">Odesk</a>, <a href="http://www.softwaresweatshop.com/process/admin/rentacoder.com">Rentacoder</a>, etc. look easy, but it's kind of a last resort. Ideally, you want to meet your team, or at least talk to them. In our early days, we looked for projects on these sites, but it was difficult to find the large, complex projects that we really wanted to get our hands on. I'm not 100% sure, but I have a hunch that if you have a complex software project and you post it on one of these sites, you'll get a lot of bids with no real way of knowing who to actually choose.</p>
<p><strong>Meet Them</strong> - If you're reading this blog, you probably know that I own a Chicago outsourcing company. Most of our deals come from me actually meeting entrepreneurs and tech execs in person. They're based on a trust in our abilities and experience. I think it's safe to say that one of the reasons that we've grown is that we have a local presence, or a "<a href="http://www.softwaresweatshop.com/bss/2008/1/5/outsourcing-3-reasons-a-local-presence-matters.html">throat to choke</a>", if you will.&nbsp;</p>
<p><strong>Read - </strong>Read blogs, discussion forums, articles, white papers, presentations, etc. to get a feel for how the vendor thinks. Do they have experience in certain verticals? Are they problem solvers or just a body shop? What is their corporate culture? It helps to know how a company thinks long before you ever contact them. Needless to say, this blog is a way of promotion my own <a href="www.adaptivesolutionsinc.com">outsourcing company</a>, but more than that, it's a way to provide insight. We've seen way too many offshore deals fail because&nbsp; complicitly sit on the sidelines.</p>
<p>&nbsp;</p>]]></content></entry><entry><title>Bangalore Burnout: Why Top Offshore Talent Jumps Ship</title><id>http://www.softwaresweatshop.com/bss/bangalore-burnout-why-top-offshore-talent-jumps-ship.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/bangalore-burnout-why-top-offshore-talent-jumps-ship.html"/><author><name>Raza Imam</name></author><published>2009-01-22T23:49:35Z</published><updated>2009-01-22T23:49:35Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span class="full-image-block ssNonEditable"><span><img src="http://www.softwaresweatshop.com/storage/bangaloreburnout.jpg?__SQUARESPACE_CACHEVERSION=1232668396699" alt="" /></span></span></p>
<p>I recently met an MIS manager at a large Fortune 100 firm and he chuckled at the <a href="../../" target="_blank">SoftwareSweatshop</a> button I was wearing on my suit jacket. We started talk and he mentioned he's currently working with 2 offshore vendors. One is a large, established player, the other is a smaller, agile, sharper team. Guess which one he likes working with better? He finds himself giving more complex projects to the smaller team because of the expertise and attention they give him. <br /><br />There's a lot of concern about the growing attrition at offshoring destinations like India. It's probably one of the biggest contributors to offshore project failures. With classic "lift and shift" of IT services to low cost countries, it's little wonder that offshore teams atrophy so quickly. Afterall, most talented developers don't want to do grunt work. Experienced developers either jump ship for companies where they can make the greatest impact, or start their own firms. <br /> <br />I spoke to another guy that owned a small 60 man operation in Chennai. They specialized in healthcare and insurance, but turnover was so bad that it was impossible to keep employees for longer than 6 months. They left as soon as they were trained. This tells me that there are 2 kinds of attrition:<br /> <br /><strong>Job Hoppers</strong>: These are usually younger employees who are looking for better opportunities. They're not always the most experienced or the most highly skilled, but given the talent crunch in places like India, they are still marketable. Most robust economies have this type of employee. They are the natural byproduct of a healthy, growing economy. The problem is their job hopping causes a major headache for employers under constant pressure to meet deadlines and produce high quality deliverables. It's important to know that most of the attrition in large companies takes place at the entry level, as employees seek to move up in their career. <br /> <br /><strong>Top Performers</strong>: Top performers are the guys who run the show. They get more done than 80% of their colleagues, and are the "go to" guys when there's a problem. When they leave, everyone gets worried. Top performers usually leave because they feel they aren't challenged or appreciated. They are quite seasoned and usually don't leave a job to gain more experience. If they leave it's because something is wrong. This is true for most professions, top athletes, doctors, salespeople, and programmers have matured past job hopping. They demonstrate responsibility and a willingness to do what others won't. If they don't go to a company, this kind of employee typically starts his own firm. <br /> <br /> So if you're working with an offshore vendor, how do you minimize the sting of attrition? Here are some thoughts:<br /> <br />1). Hire small firms that are amazing at what they do. They will attract a certain type of developer, typically experienced professionals that have seen the problems you're dealing with. Smaller firms also look for leaders, but know that not everyone can be one. For example, my friend with the two offshore vendors feels much more confident in the abilities of his small, agile team than the bigger one. What's worse is that he sees the really good talent leaving the larger vendor in favor ofniche firms... or starting their own businesses. <br /> <br />2). Don't look for mere technical skill, look for commitment and a willingness to figure things out. Most vendors are the same in terms of technical expertise. You don't need rocket scientists, but you do need people that understand what you're trying to do and will bend over backwards to help you. Their corporate culture, hiring process, and business philosophy is a good indicator of the kind of vendor they will be. <br /> <br />3). Ask the same question in different ways. How much attrition have they had? What retention strategies are in place? What do they look for in candidates? What attracts employees to the firm? Why employees choose them over others? How do they engage employees?</p>]]></content></entry><entry><title>The Sad Truth About Your (failed) Outsourced Software Development Project</title><category term="China outsourcing"/><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="outsourcing problems"/><category term="outsourcing risks"/><category term="software development, software methodology, Scrum"/><id>http://www.softwaresweatshop.com/bss/the-sad-truth-about-your-failed-outsourced-software-developm.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/the-sad-truth-about-your-failed-outsourced-software-developm.html"/><author><name>Raza Imam</name></author><published>2009-01-05T21:55:58Z</published><updated>2009-01-05T21:55:58Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span style="font-size: 110%;"><span class="full-image-block ssNonEditable"><span><img style="width: 500px;" src="http://www.softwaresweatshop.com/storage/failed%20project.jpg?__SQUARESPACE_CACHEVERSION=1232668141192" alt="" /></span></span></span></p>
<p><span style="font-size: 110%;">Here's an email I received this week about outsourcing failure. He substantiates what we've been saying all along: most outsourcing vendors are the same. Finding good technical resources is easy, finding a team you can rely on isn't...</span></p>
<blockquote>
<p><span style="font-size: 110%;"><em>All outsourcing vendors are the same</em>. I work in India, China, Malaysia and UK. All of them are already sub-contracting it themselves and have a tremendous shortage of talent.</span></p>
<p><span style="font-size: 110%;">Resources have no vision and no experience. To mask this drawback, for every smart individual they would have 4 non-performers who have fudged up their resumes and working behind the scenes to get knowledge and experience so they can bargain for bigger and better money.</span></p>
<p><span style="font-size: 110%;">To the offshore advantage, the onsite and permanent manager has a budget and a fixed time to deliver, so they have to compromise. <em>Unless you are extremely technical and functional and do it hands on, consider it a failure</em>.</span></p>
<p><span style="font-size: 110%;">The only reason, my projects have all been considered a success is simply I manage both the stakeholders and the technical and functional teams really closely. Every new recruitment on either side goes through me and my onsite support team. I stick to the plan and any deviation from me is costly and you have to get the financier to tell it to the stakeholder. I closely monitor the development as well as on the steering committee of the business.</span></p>
<p><span style="font-size: 110%;">Most importantly, your relationship skills should be able to wine and dine with the key committee once a week. I have to do it at the expense of the family, something that you will need to consider. You have to work overtime sometimes doing 18 hour days. 12 hour days should be the norm unless the projects are less than 25 million USD. No matter what factors you would consider, the only thing to sell to the shareholders is the money. Nothing else matters.</span></p>
<p><span style="font-size: 110%;">I have been working on offshore-onshore on some of the biggest projects in the US for the last 7 years and still doing it now. Not just one company but 3 of the biggest companies. <br />The junior stakeholders along with the indirect business seem to grunt, ramble and complain all they can but at the end of the day, when the board of directors see the money saved at the cost of quality, performance, resources, time, priority, significance, heavyweight, seniority, everything else become oblivious.</span></p>
<p><span style="font-size: 110%;">Go to any BPO conferences you will soon find out that <em>anytime the project becomes complicated and out of the ordinary, it is a disaster</em>. How do you manage expectations from the beginning will be a key factor for your success and not the failure of the offshoring teams. Remember, blessing of the financier and communication is the only key you will need to deliver.</span></p>
</blockquote>]]></content></entry><entry><title>Skeptical About Outsourcing Software Development? Good!</title><id>http://www.softwaresweatshop.com/bss/skeptical-about-outsourcing-software-development-good.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/skeptical-about-outsourcing-software-development-good.html"/><author><name>Raza Imam</name></author><published>2008-09-22T15:16:17Z</published><updated>2008-09-22T15:16:17Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p style="font-size: 110%;"><span class="full-image-float-left"><span><img src="http://www.softwaresweatshop.com/storage/outsourcing.gif?__SQUARESPACE_CACHEVERSION=1222099217794" alt="" /></span></span>So most of the companies I talk to get 800 calls a week from offshore companies. They're either working with a solid team already, or they aren't interested in building an offshore team at all. It's not for everyone, but outsourcing works very well if you find a sharp team and are willing to invest a lot of time and energy in developing a relationships and processes with your offshore team.</p>
<p style="font-size: 110%;">Afterall, some of the world's top software engineering teams work in remote, distributed environments. The key to working with an offshore team is finding someone that is not only technically competent, but that can add real value. A body shop of developers hacking away at your specs creates is worthless. You might save a few bucks, but it's commodity work for what will most likely be a commodity product.</p>
<p style="font-size: 110%;">A condensed version of an article about <a href="http://www.baselinemag.com/c/a/Outsourcing/7-Sins-of-Offshore-Outsourcing/">offshore outsourcing</a> advice from <a href="http://www.baselinemag.com/">Baseline Magazine</a>. The point is that outsourcing seems easy, but anyone that's done it knows it's no cake walk.</p>
<p>========================================================================================</p>
<p><span style="font-size: 110%;">When outsourcing, </span><span style="font-size: 110%;">organizations that focus on short-term cost reductions often rush through projects without adequate planning, due diligence or consideration of the long-term implications of the inevitable changes in business requirements or offshore market conditions</span><span style="font-size: 110%;">. This not only causes them to overlook most of their savings opportunities, but often leads to project failure. However, an organization that knows what to look out for can avoid the mistakes that others have made in the past, mistakes that </span><span style="font-size: 110%;">can be understood in the context of the seven deadly sins: pride, sloth, avarice, lust/extravagance, envy, gluttony and anger</span><span style="font-size: 110%;">.</span></p>
<ul>
<li style="font-size: 110%;"> <strong>Pride</strong> <br /> <em>Many organizations succumb to the sin of false pride and plunge headlong into an offshoring initiative without performing due diligence</em>. They assume that they (already) have the internal capabilities necessary to plan and manage an offshore operation, when this is often not the case. They also seriously underestimate the management resources required to successfully set-up and run such an operation. </li>
<li style="font-size: 110%;"> <strong>Laziness</strong> <br /> You can't just move an inefficient operation offshore and hope that lower salaries will result in cost savings. "Lift and Shift" doesn't work, and, when the process is inefficient it will, in fact, often increase the personnel resources required to do the job, wiping out the cost savings the organization expected to achieve. </li>
<li style="font-size: 110%;"> <strong>Greed</strong> <br /> Many organizations will not be concerned enough about the ultimate fate of the business, or, even worse, possess disdain towards the offshore operation. This makes it difficult for the offshore operation to retain knowledgeable and productive staff, leading to quality problems and cost overruns as greater numbers of inexperienced resources need to be thrown at the problem. </li>
<li style="font-size: 110%;"> <strong>Lust/Extravagence</strong> <br /> <em>The desire to solve a problem by taking on more, cheaper personnel is extravagant and wasteful and has serious implications for service quality</em>. It's important to remember that <em>many offshore operations have lower productivity and excessively high turnover, reducing cost savings</em>. <em><strong>Don't give in to the impulse to compensate for low productivity with more bodies: It's a false economy</strong></em>. Before you offshore the process, make sure it is efficient. If necessary, re-engineer and improve the process first. Furthermore, even after your processes are off-shored, it's important to continuously apply performance improvement initiatives. </li>
<li style="font-size: 110%;"> <strong>Envy</strong> <br /> Don't assume that offshoring automatically comes with big savings and be envious of your peers who are already doing it. Most of the claims you'll find by the promotors of the strategy don't take into account the lower productivity that comes with offshore personnel, higher communication costs with an offshore team, and the additional overhead required to govern an offshore process. Actual savings are often only half of what is claimed. </li>
<li style="font-size: 110%;"> <strong>Gluttony</strong> <br /> Don't offshore as much as possible as quickly as possible, like a glutton, with the ill-formed belief that this will maximize savings. Don't overlook the average organization's capacity to digest change, and even smaller capacity to digest offshore change -- because organizations that offshore too much too quick often spend the majority of their time firefighting. The key to success is selective offshore outsourcing, following a careful analysis of what processes are the most likely to lead to savings if outsourced. </li>
<li style="font-size: 110%;"> <strong>Anger</strong><br /> Don't blame the outsourcer when the savings don't materialize, especially if you committed one or more of the sins above. Blame-wise, at least half will always rest with you, and if you committed multiple sins, all the blame rests with you. </li>
</ul>]]></content></entry><entry><title>More Than Cheap Labor: 5 Things to Know When Looking to Outsource Software Development</title><category term="China outsourcing"/><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan business"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="programming"/><category term="software development"/><id>http://www.softwaresweatshop.com/bss/more-than-cheap-labor-5-things-to-know-when-looking-to-outso.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/more-than-cheap-labor-5-things-to-know-when-looking-to-outso.html"/><author><name>Raza Imam</name></author><published>2008-09-04T21:33:28Z</published><updated>2008-09-04T21:33:28Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span style="font-size: 110%;">
<div dir="ltr">
<p><span class="full-image-block"><span><img src="http://www.softwaresweatshop.com/storage/cheaplabor2.jpg?__SQUARESPACE_CACHEVERSION=1220564384120" alt="" /></span></span>Maybe you're working with an offshore team, or maybe you're thinking about it. Or worse yet, you've been burned by an offshore "software sweatshop". We've all heard offshore outsourcing horror stories. There are obvious advantages (and disadvantages) to outsourcing. Here are 5 tips to help you choose the right offshore partner.</p>
<p>1). <strong>High Value, Not Low Cost</strong> &ndash; In most cases, when you send work offshore, you're saving quite a bit of money. With that in mind, when looking for an offshore team, don't look for the cheapest provider. Since you're saving money anyway, you might as well look for the most sophisticated partner you can find. In addition to technical skill, you should evaluate their responsiveness, the types of questions they ask, and their ability to manage complex projects.</p>
<p>2). <strong>What Kind of Firm Are You Looking For?</strong> - There are two kinds of (offshore) development shops. The first are low cost "software sweatshops" who take your specs and do development. This is fine if you have solid specs and are looking for a team to simply execute. The second kind are companies that have experience with highly complex projects in specific industries. They'll have the expertise to add value to your project by asking "what if" questions and challenge your assumptions. They will act as a partner and a peer rather than a vendor. These companies are few and far between. The way to find them is to ask what <em>role </em>they've played in the projects they've worked on.</p>
<p>This was said perfectly by Chris Lynch, VP of Engineering of eProject.com (now known as Daptiv)</p>
<p><span><em>"Our specs called for a partner that as technically competent and independent, [who] would tell us what they thought we were doing right or wrong, and who would function as an extended part of our team. We wanted a peer who had enough expertise of their own to recommend content and coding techniques as well"</em></span></p>
<p>2). <strong>Avoid 'Yes Men' </strong><span>&nbsp;</span>&ndash; <span>&nbsp;</span>You'll find very good technical people all over the world, but finding people who are reliable is next to impossible. Our philosophy is that a sign of maturity is the ability to say 'no'. It's extremely rare to find a vendor that will tell you like it is. We've heard countless stories of offshore firms over-promising and under-delivering. You need to look for a partner that can be honest with you from day one, even if it means they might lose your business. A company that sets up realistic expectations is a company you can rely on, even if it's not the answer you wanted to hear.</p>
<p>3). <strong>Ask How They Hire and Retain</strong> &ndash; Attrition is a big problem, make sure you don't get bitten. Experienced developers are constantly looking for the next best offer. Rather then asking about the company, ask about their criteria for hiring people.&nbsp;This will indirectly tell you about the character of the company.</p>
<p>4).<strong>Quality, Quality, Quality</strong> &ndash; It's tempting to believe that sending work over seas will automatically save money. While the hourly rate is significantly less, we've seen many companies spend 3 times more than they expected because of constant rework.<span>&nbsp; </span>Needless to say, you should ask your partner about their QA procedures. Reliable firms will always include a dedicated QA resource in every project. Experience shows that many software problems could be easily averted by implementing a strong QA methodology at the beginning of the project.</p>
<p>5). <strong>Go for the Long Haul</strong> &ndash; The real value of outsourcing is nurturing a team that can work with you long-term. Longer projects are better suited for outsourcing for a number of reasons. Assigning the right resources to the project, flushing out project specs, establishing clear communication channels, and knowledge transfer between your onsite and offshore teams all take time. Eventually, your offshore team will become an extension of your local team.</p>
</div>
</span></p>]]></content></entry><entry><title>Don't Forget to Flush When You Offshore Software Development</title><category term="China outsourcing"/><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="software development"/><id>http://www.softwaresweatshop.com/bss/dont-forget-to-flush-when-you-offshore-software-development.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/dont-forget-to-flush-when-you-offshore-software-development.html"/><author><name>Raza Imam</name></author><published>2008-08-06T14:31:04Z</published><updated>2008-08-06T14:31:04Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span style="font-size: 110%;">I had a conversation with Pete Segar, the CTO of </span><a style="font-family: yui-tmp;" href="www.ergotron.com">Ergotron</a><span style="font-size: 110%;"> a few weeks ago. I read about him in an article about </span><a style="font-family: yui-tmp;" href="http://searchcio-midmarket.techtarget.com/tip/0,289483,sid183_gci1316813,00.html">domestic outsourcing</a><span style="font-size: 110%;"> and how it's becoming more of an imperative for mid-market firms. More outsourcing firms are targeting mid-market companies (Pete gets his fair share of cold calls). Ergotron is working with an offshore team in Belarus. The biggest reason for working with them was the fact that they had a local office in Minnesota. This helped reduce the inevitable communication breakdown of working with resources half a world away and provide a level of accountability. The biggest problem with global sourcing is </span><a style="font-family: yui-tmp;" href="http://www.softwaresweatshop.com/bss/2008/1/5/outsourcing-3-reasons-a-local-presence-matters.html">accountability</a><span style="font-size: 110%;">. Software project failure Cost overruns and missed deadlines are a grim reality of most software projects, doubly so for offshore/outsourced software projects.</span></p>
<p style="font-size: 110%;"><span class="full-image-float-left"><span><img src="http://www.softwaresweatshop.com/storage/flush.jpg?__SQUARESPACE_CACHEVERSION=1218051196569" alt="" /></span></span>Another big headache when working with an offshore engineering team is the amount of time it takes to develop an adequate spec. I've always said that finding an <a style="font-family: yui-tmp;" href="http://www.softwaresweatshop.com/bss/2008/1/11/techcrunch-doubtsourcing-can-ya-digg-it.html">offshore software development team</a> is easy, but finding a team that understands you and is committed isn't. Finding an offshore body shop full of programmers is incredibly easy, but the real value is outsourcing is choosing a team with the experience, tenacity, and insight to help you<em><strong> flush out a spec</strong></em>. Most companies that choose to outsource do it because they don't have the resources or experience to build their custom applications. The point of outsourcing is to find a vendor with the right skills and experience to solve your problem.&nbsp;</p>
<p style="font-size: 110%;">The best way to evaluate an offshore vendor is to find out their level of experience solving problems similar to yours. It's not necessary that they are domain experts, but they do need to have a problem solving attitude. This means helping you determine the "what if" scenarios of your application, asking lots of questions, and making sure that their solution reflects their understanding of your problem as a business problem, not a technical one.&nbsp; A strong QA focus is critical also because it indicates maturity. Your ideal <a href="adaptivesolutionsinc.com">offshore software partner</a> will seek to understand your business and make suggestions, not be a passive accessory. To this effect, Narayana Murthy, founder of <a href="infosys.com">Infosys</a> spoke of their shift from problem solvers to problem definers:</p>
<p><em>"We want to be <strong>proactive problem definers</strong> rather than reactive problem solvers. We want to be chefs rather than short order cooks. We want to go sell high, so we are selling to a high level executive who has a more complete picture of the problem and we want to be trusted advisors to that senior executive so that we can h<strong>ave a shot at helping him define the problem, and then the solution automatically follows that</strong>."</em></p>
<p><em></em></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p style="font-size: 110%;">Mid-market CIO's are in a tough spot. On one hand their CEO's are pressuring them to cut costs and pursue a global sourcing strategy. On the other hand they are bombarded with calls from offshore engineering firms in India, Vietnam, Ukraine, Brazil, and the list goes on. As smaller companies look for more than cheap labor when looking for an offshore software team, it's too bad that the <a href="infosys.com">Infosys's</a>, <a href="tata.com">Tata's</a>, and <a href="cognizant.com">Cognizant's</a> of the world that have cultivated vertical expertise aren't beating on their doors for business.</p>]]></content></entry><entry><title>Insourcing, Offshoring, Nearshoring, Dual Shoring, Multi-Sourcing, Rural Sourcing? What ever happened to good old software development outsourcing?</title><category term="China outsourcing"/><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan business"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="software development, software methodology, Scrum"/><id>http://www.softwaresweatshop.com/bss/insourcing-offshoring-nearshoring-dual-shoring-multi-sourcin.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/insourcing-offshoring-nearshoring-dual-shoring-multi-sourcin.html"/><author><name>Raza Imam</name></author><published>2008-07-02T21:04:36Z</published><updated>2008-07-02T21:04:36Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p style="font-size: 110%;"><span style="font-family: arial;"><a style="font-family: yui-tmp;" href="http://it.toolbox.com/people/jgrahamartifact">Jon Graham</a><span style="font-size: 110%;"> shared the following outsourcing advice for newbies...&nbsp; </span></span><span class="full-image-float-left"><span><img src="http://www.softwaresweatshop.com/storage/confusing1.jpg?__SQUARESPACE_CACHEVERSION=1216764533131" alt="" /></span></span></p>
<p style="font-size: 110%;"><span style="font-family: arial;">"The outsourcing movement has just reached puberty and will be maturing over the next few years. In the past, it was thought that only large organizations could afford to outsource, but that is not the case any longer. The small to mid size companies are getting into the game as well. However, for the outsourcing newbie's out there that want to take the plunge, there are a few things to consider in order to ensure success."</span></p>
<p style="font-size: 110%;"><span style="font-family: arial;"> </span><span style="font-family: arial;">Whether you're looking at India, Russia, Ukraine, Vietnam, China, Brazil, Montana, or the Philippines, outsourcing isn't easy. Here's a list of tough questions you need to ask</span><span style="font-family: arial;">: </span><span style="font-family: arial;"><br /> <br /><strong>1. Process:</strong> How am I going to manage the work that I am going to outsource? What processes and procedures do I need to have in place? How often do I want updates? What level of information do I need? What delivery model am I comfortable with? <br /></span></p>
<p style="font-size: 110%;"><span style="font-family: arial;"><strong>2. Tools:</strong> What tools can best help me manage the process I've defined. Do traditional individual tools work; mpps, word docs, emails, spreadsheets? How can I get real time project updates about vital project statistics/metrics? Is there single web-based, software development management (SDM) system? </span></p>
<p style="font-size: 110%;"><span style="font-family: arial;"><strong>3. Vendor Selection:</strong> What type of experience/skills/corporate culture does my service provider need to possess in order for us to be successful together? Is this a one project stand or is there potential for a long term engagement? What types of work has this vendor done in the past. Interview them as you would a potential employee. <br /> </span></p>]]></content></entry><entry><title>Outsourcing Software Development: The Old "Follow the Sun" Pitch</title><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan business"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="software development"/><category term="software development, software methodology, Scrum"/><id>http://www.softwaresweatshop.com/bss/outsourcing-software-development-the-old-follow-the-sun-pitc.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/outsourcing-software-development-the-old-follow-the-sun-pitc.html"/><author><name>Raza Imam</name></author><published>2008-07-02T16:08:18Z</published><updated>2008-07-02T16:08:18Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><strong><span style="font-size: 120%;">(This is not a new post. I just decided to change the title...</span>)</strong></p>
<p><span style="font-size: 10pt; font-family: arial;">A lot of offshore companies will tell you (primarily India, Philippines, China, and Vietnam) that if you work with them, the timezone difference will allow them to work while you sleep. They're an asset because you now have a 24/7 development cycle. Sadly, it's often a liability.&nbsp;&nbsp; <span class="full-image-float-left"><img src="http://www.softwaresweatshop.com/storage/247.jpg" alt="India outsourcing, China outsourcing, Brazil outsourcing, Costa Rica outsourcing, software development, Pakistan outsourcing, .NET development, Java developer" /></span><br /> </span></p>
<p><span style="font-size: 10pt; font-family: arial;"> In most cases we've seen, unless the specs are really good, and the development team sees the big picture, a 24/7 development cycle becomes a 24/7 headache. The lesson is that you should either have good specs, or be prepared to pay for specs. A mature development team will tell you this from day one... it's a sign of maturity. We've seen too many floundering projects resulting from poor specs. <br /> </span></p>
<p><span style="font-size: 10pt; font-family: arial;">I met a guy that was looking for offshore Java developers. He did a lot of research and ended up working with a company in India. As expected, part of their pitch was that they program while the client sleeps, a real 24 hour development cycle. We've heard this pitch before, and in theory it sounds good, but it assumes that the developers don't make any mistakes. In our experience, <em><strong>problems occur when requirements are not clear and there is a lack of communication between both parties</strong></em>. The client ended up working with a "near shore" vendor, but the following advice could help prevent problems with your offshore team.</span></p>
<p><span style="font-size: 10pt; font-family: arial;">-<strong>Committment on both sides</strong>: Make sure you have a local and offshore project manager. The local PM will communicate with users or internal stakeholders and the offshore PM will communicate with developers. It's helpful if they both have experience working with distributed teams. </span></p>
<p><span style="font-size: 10pt; font-family: arial;">-<strong>The Key to Any Relationship</strong>: Whether it's a marriage, a football team, or a team of software developers, consistent and structured communication is the only way to prevent heart-breaking (not to mention bank-busting) misunderstandings.<br /> </span></p>
<p><span style="font-size: 10pt; font-family: arial;">-<strong>Proper Methodology</strong>: Agile or Scrum methodology is helpful because it's highly iterative and allows for changes</span></p>
<p><span style="font-size: 10pt; font-family: arial;">-<strong>Solid QA</strong>: The offshore team needs to have a solid QA process in place. Developers aren't the best testers, and they shouldn't have to be. Make sure your offshore team has heavily invested in QA. Ask about their QA process and how they ensure that their work makes the grade.<br /> </span></p>
<p><span style="font-size: 10pt; font-family: arial;">-<strong>Find Solid Developers</strong>: Past work, a pilot project, or an exam are all helpful to make sure you're getting a qualified resource. It's not always critical to get an incredibly experienced developer as long as they have a good attitude and are willing to learn. An honest vendor will tell you the strengths and weaknesses of their team.<br /> </span></p>]]></content></entry><entry><title>(outsourcing) Software development is a piece of cake... or is it?</title><category term="China outsourcing"/><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="outsourcing lessons"/><category term="programming"/><category term="software development"/><id>http://www.softwaresweatshop.com/bss/outsourcing-software-development-is-a-piece-of-cake-or-is-it.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/outsourcing-software-development-is-a-piece-of-cake-or-is-it.html"/><author><name>Raza Imam</name></author><published>2008-07-02T11:03:33Z</published><updated>2008-07-02T11:03:33Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span style="font-size: 120%;">This excerpt came from a post on </span><span style="font-size: 120%;">Gunnar Skogsholm's blog about</span><span style="font-size: 120%;"> <a href="%20http://www.skogsholm.net/BlogEntry.aspx?BlogEntryID=3.155">software project failure</a></span><span style="font-size: 120%;">... Software development hard. Right from the beginning there are a million things that could go wrong. This list on<a href="%20http://www.skogsholm.net/BlogEntry.aspx?BlogEntryID=3.155"></a> comes from <br /> </span></p>
<p><span style="font-size: 120%;">Software is risky business. Here's what can (and usually does) go wrong: </span></p>
<ul>
<li><span style="font-size: 120%;">team dysfunction</span></li>
<li><span style="font-size: 120%;">failure to understand software (process, costs, etc)&nbsp;</span></li>
<li><span style="font-size: 120%;">lack of leadership or vision&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to understand, communicate, document the problem domain description&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to architect a solution&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to design a software application&nbsp;</span></li>
<li><span style="font-size: 120%;">failure of project management&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to select good tools&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to select reliable technologies&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to implement the software&nbsp;</span></li>
<li><span style="font-size: 120%;">failure to test the software&nbsp;</span></li>
<li><span style="font-size: 120%;">failure of quality assurance&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 120%;">&nbsp;&nbsp;&nbsp;</span></li>
</ul>
<p><span style="font-size: 120%;">Software development is... &nbsp;&nbsp;</span><span style="font-size: 120%;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span class="full-image-float-right"><img style="width: 249px; height: 219px;" src="http://www.softwaresweatshop.com/storage/cake.jpg" alt="China outsourcing, India outsourcing, Pakistan outsourcing, Ukraine outsourcing, Philippines outsourcing, software development, outsourcing failure" /></span><span style="font-size: 120%;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>]]></content></entry><entry><title>Outsourcing Software Development? Look Before You Leap...</title><category term="India outsourcing"/><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Pakistan outsourcing"/><category term="Philippines outsourcing"/><category term="Ukraine outsourcing"/><category term="entrepreneurship"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="software development"/><id>http://www.softwaresweatshop.com/bss/outsourcing-software-development-look-before-you-leap.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/outsourcing-software-development-look-before-you-leap.html"/><author><name>Raza Imam</name></author><published>2008-06-19T22:44:24Z</published><updated>2008-06-19T22:44:24Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span class="sizeGreater20"><span class="full-image-float-left"><img alt="China outsourcing, Russia outsourcing, Pakistan outsourcing, Philippines outsourcing, Pakistan software, Russia software, Ukraine outsourcing" src="http://www.softwaresweatshop.com/storage/Look.jpg" /></span>The US economic recession is hitting a lot of businesses hard. I got an email from the CISO of a large publicly traded company saying that </span><span class="sizeGreater20">they're looking </span><span class="sizeGreater20">for new outsourcing destinations </span><span class="sizeGreater20">since wages in India are rising. Apparently <a target="_blank" href="http://searchcio.techtarget.com/news/article/0,289142,sid182_gci1286775,00.html#">outsourcing to Pakistan</a>,&nbsp; is becoming more attractive, as well as other countries you wouldn't immediately associate with software outsourcing like Slovakia, Vietnam, and Turkey.  </span></p> <p><span class="sizeGreater20">But there's more to outsourcing than scouting out the next low cost destination (unless you want to get burned by a&nbsp;<a href="http://www.softwaresweatshop.com/bss/2007/12/14/are-you-kidding-me-a-real-software-sweatshop.html" target="_blank"> software sweatshop</a>) Outsourcing isn't easy, and unless you're smart, the cost savings won't be the main factor leading to your decision. Tons of reports have suggested that you don't save nearly what you initially expected. It's easy to think that sending work overseas is a cinch; IT'S NOT. Outsourcing works great if there is a clear understanding of the nature of the relationship. Relationships based on trust, partnership, and value should always outweigh low cost. It's a matter of time before your offshore vendor raises their prices. Stop chasing the next low cost offshore destination. Outsourcing is not as easy as you think.<br /> </span></p> <p><span class="sizeGreater20"> Keep the following points in mind when looking for an offshore vendor:</span><br /> </p> <p>&nbsp;<br /> <span class="sizeGreater20">1). <strong>Lack of Communication</strong>: Expecting to send work to some foreign land without both sides being vested in communicating daily will lead to failure. If you go offshore, be sure that you're ready to spend time discussing the status, challenges, accomplishments, and goals of your project. <br /> </span></p> <p><span class="sizeGreater20">2). <strong>Undefined Requirements</strong>: I recently asked a question about <a href="http://www.linkedin.com/answers?viewQuestion=&questionID=228990&askerID=6473432&browseIdx=4&sik=1213997220122&goback=%2Eamq&goback=%2Eamq%2Eavq_228990_6473432_4_1213997220122" target="_blank">software project failure</a> on LinkedIn a few weeks ago and was overwhelmed by the quantity and quality of the responses. It was actually in response to an article that I found on the Wall Street Business Technology blog about <a href="http://blogs.wsj.com/biztech/2007/12/11/tech-projects-fail-who-cares/" target="_blank">failed corporate IT projects</a> The main theme from the 76 answers (and counting) that I received is that unclear specifications and lax project controls result in failed projects. With onsite IT projects going belly up, can you imagine how hard it is to keep an offshore project on track? Don't underestimate clear specs.<br /> </span></p> <p>3).  <span class="sizeGreater20"><strong>Currency Fluctuation</strong>: Now this is really sad. Companies that went to India 5 or 10 years ago are now looking for the next low cost country to shift their operations. Don't make lowest cost the only reason for choosing your offshore vendor; it's short-sighted and unsustainable.<br /> </span></p> <p>4). <strong><span class="sizeGreater20">Corporate Culture</span></strong><span class="sizeGreater20">: Do you value quality over the lowest cost, do you treat your employees like the geniuses that they are, do you make decisions based on principles and values rather than expediency? Well you better make sure your offshore partner does also. Often times they won't be the cheapest, but they'll be your ace in the hole. <br /> </span></p> <p>5). <strong><span class="sizeGreater20">Losing Key Resources</span></strong><span class="sizeGreater20">: Too many offshore projects are hindered because of attrition. This is an all too familiar problem with companies that have sent work offshore. In developing countries like India, wages are rising, diminishing most cost savings. The rising wages mean that there is more opportunity, so top talent is jumping ship for more lucrative opportunities. Does your offshore partner hire generalists or experienced specialists? If your offshore vendor is a &quot;we do everything/one size fits all&quot; firm, chances are they'll have high turnover. Truly great companies are very selective about who they hire and fanatical about keeping them happy. No doubt, not everyone will be a superstar, but experienced team leads will bring the best out of the rest of the team.<br /> </span></p> <p><span class="sizeGreater20"><br /> </span></p> <p> </p>]]></content></entry><entry><title>The Difference Between a Methodologist and a Terrorist?</title><category term="Offshoring"/><category term="Outsourcing failure"/><category term="Software startup"/><category term="entrepreneur lessons"/><category term="entrepreneurship"/><category term="humor"/><category term="management"/><category term="outsourcing advice"/><category term="outsourcing lessons"/><category term="programming"/><category term="software development"/><category term="software development, software methodology, Scrum"/><category term="web 2.0"/><id>http://www.softwaresweatshop.com/bss/the-difference-between-a-methodologist-and-a-terrorist.html</id><link rel="alternate" type="text/html" href="http://www.softwaresweatshop.com/bss/the-difference-between-a-methodologist-and-a-terrorist.html"/><author><name>Raza Imam</name></author><published>2008-05-02T16:15:43Z</published><updated>2008-05-02T16:15:43Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p><span class="full-image-float-left"><img src="http://www.softwaresweatshop.com/storage/CuttingCorners.jpg" alt="software methodology, software engineering, software development, agile, scrum, .NET, java, ruby on rails, outsourcing, offshore software, india software, russia software" /></span><br /> </p> <p>&nbsp;</p> <p><span class="sizeGreater20">...you can&rsquo;t negotiate with a methodologist.<br /> </span></p>              <p><span class="sizeGreater20">Needless to say, following a good methodology is an integral part of any respectable software development effort, particularly when you&rsquo;re working with an offshore team. In fact, most offshore horror stories have less to do with the technical expertise of the developers and more to do with how the project is handled. Many times projects get compromised because the vendor is juggling too many projects at once. Resources are scarce, teams get stretched, deadlines are missed&hellip; you know the drill.<br /> <br /> Project failures rarely happen at the &lsquo;ones and zeros&rsquo; level, so the real trick is to communicate with your team constantly (daily) to make sure expectations are clear and work is being done according to plan. So what you&rsquo;re paying for is the set of principles that your vendor has established, their culture, their hiring and retention strategies, their growth vision, their industry expertise. The real question becomes, at the moment of truth, <em><strong>are they willing to cut corners and compromise these principles?</strong></em> </span></p> <p><span class="sizeGreater20">Even if they have technical weaknesses, working with principled methodologists who compromise for no one will always lead to success. Companies that define themselves and refuse to compromise will give you the only thing that really matters in business&hellip; trust.</span></p>]]></content></entry></feed>