Miracle Design » August 12, 2017

Daily Archives: August 12, 2017

Blog

Costs and Benefits of Offshore Development

Published by:

There’s still many differences of opinion, both within the general enterprise software world and within ThoughtWorks, about the costs and benefits of using offshore development. The reason why most people look to offshore is to reduce costs, noting the significantly lower rates that you find from offshore vendors. However it’s foolish to look only at rates. Rates are only one component of costs, and in any case you have to look at the entire return on investment. Most people in the software industry know, or should know, that productivity differences between developers are far greater than salary differences – and even the rate differentials offered by offshore aren’t necessarily greater than that. Offshore work also introduces extra costs and risks that may offset the rate differential.

The biggest consequence is the effect on communication. Offshore makes communication harder both due to the distance, which makes it difficult to meet face to face, and the timezone offset. Both of these increase the likelihood of building the wrong functionality as miscommunications occur over requirements. While techniques such as using ambassadors tries to reduce it, there’s still going to be some effect. Also the distance between development and business also reduces the motivation of the development team,since they have no personal relationship to build on.

Of course a high ceremony organization that uses documents as the primary communication mechanism will not suffer as much from this. Essentially their communication has already taken all the damage from lack of direct contact, so the offshore effect is less notable. Agile methods try to restore the direct contact in order to improve communication. Our experience is that even if an agile approach suffers from the communication difficulties of offshore, it’s still better than a documentation-driven approach.

Another trend may work to help with this problem. Increasingly companies are moving other business process functions offshore. If a company moves its accounting function to India, then software to support them can be built in India more easily than it could be in the west. If this kind of movement of business work offshore continues, then Indian development could become the onshore alternative.

Another benefit of offshore that’s coming up is the use of 24 hour development to reduce time to market. The benefit that touted is that by putting hands on the code base at all hours of the day, functionality gets written faster. I must admit this seems a somewhat bogus argument to me, since I don’t see what adding people does in India that it wouldn’t do by adding them to the onshore team.

The nugget in the 24 hour development idea is that despite the tech slowdown it’s still not easy to get talented developers. So often you can’t get enough talented developers in the onshore location, so an offshore team is valuable for their talent rather than any lower cost.
Among all these differences my point of view is clear: I’m sitting on the fence!

The Future of Offshore and Agile

As I write this, offshore development is very fashionable, but it’s still too early to really understand its true strengths and pitfalls. Certainly anyone doing it because they think they’ll get cost savings similar to the rate differences is seriously deluding themselves. Some people talk about all software development moving to the third world in the same way that the steel industry did, others think that after a period of fascination the offshore industry will dry up. My crystal ball just shows me what’s in front of me, in a slightly distorted way.

One conclusion is clear, anyone who thinks that onshore developers will triumph because they are more skilled is very wrong. We’ve found that we can hire just as talented developers in India as we can in North America and Europe.

The weak spots of offshore development come from culture and distance with the business. Because agile development works best with close communication and an open culture, agilists working offshore feel the pain much more than those using plan-driven approaches. But it’s still less pain than the plan-driven methods themselves!

We may never really understand the pros and cons offshore development. Software development is an activity who’s output is impossible to measure. As such we’ll never have hard numbers to prove one approach better than another. What we will see is growing qualitative feedback on the benefits of agility and offshore development – these qualitative assessments will determine if either, or both, will survive.

 

Blog

What is Outsourcing and Why Should I Consider It for My Company?

Published by:

A Better Way to Do Business

Outsourcing occurs when a company uses an outside firm to provide a necessary business function that might otherwise be done in-house. It is different than subcontracting because the function is provided on an ongoing basis, rather than for a specific project. The outside firm is generally better, faster or cheaper than an in-house department. Outsourcing relieves a company of routine tasks, enabling it to focus on the core strengths that make it competitive and contribute the most to its success. Most outsourcing firms also have a consulting component to help clients plan the long-term relationship.

Outsourcing has been around a long time in various forms. Some traditional examples include: law firms, public accountants, realtors, benefits managers, consulting engineers, advertising agencies, security firms, custodial services, equipment maintenance contracts, payroll and employee leasing companies, manufacturers’ sales representatives, collection agencies and machine shops. Thirty-six years ago, H. Ross Perot started Electronic Data Systems (EDS). In 1998, EDS provided $16.9 billion worth of Information Services to clients worldwide. Outsourcing is now available to the smallest business here in Maine.

In the last ten years, outsourcing has extended to more functions than ever before. Outsourcing has become a viable technique for companies of all sizes; not just those that can afford a giant like EDS. These functions include internal finance & accounting, information systems, human relations, customer service, purchasing, materials management/ fulfillment, technical support and manufacturing. Outsourcing makes it possible for a single entrepreneur to develop, manufacture and distribute a product or service to a worldwide market without any employees!
Why outsource? To reach company goals faster in a world economy where the market can change faster than you can build a company. To get access to people and facilities you could not otherwise afford. To react quickly and profitably to issues and opportunities.

Reasons to Outsource

Today’s businesses, regardless of size, need to “mind the store”. They must focus on those one or two core strengths that give them an “unfair advantage” over competition and permit them to move faster, grab a greater market share or earn more money. If they don’t, no matter how successful the company is today, someone will eventually take their business away with a more innovative approach… just ask people who used to work for IBM or Digital Equipment during the 1980s.

Three critical success factors are needed for any company to survive, grow and thrive. They are the ability to sell a product or service, the ability to produce and it and the ability to find and manage money to fund sales and production. Every company, particularly a small one, has boss or a corporate culture that is weak in one of these critical areas. In nine years of consulting, I have never met an entrepreneur, however successful, who embodied all three critical success factors. Outsourcing helps fill the natural gaps in the management team.

Outsourcing adds flexibility in several dimensions. It enables a company to vary the amount of resources applied to a function by season, project or other market variable. Since outsourcing firms employ highly trained specialists and tend to invest heavily in ongoing professional development, clients gain access to experts they could neither afford nor properly supervise. It brings access to state-of-the-art technologies and expensive capital equipment the company could not afford or would not utilize effectively. In an era of shorter company life cycles, outsourcing helps build a company fast, run it profitably and, if appropriate, disband it quickly without loss. Outsourcing enables companies to address more business opportunities by focusing on their core strengths. All this makes it possible to deliver goods and services better, faster and cheaper than ever before.

Who Should Outsource

Rapidly growing organizations with important nonrecurring project needs, the requirements of which are greater than the availability of internal resources
Businesses poised for growth, but lacking sufficient in-house expertise to “get to the next level”
Business leaders needing advice
Entrepreneurial organizations which may be growing slowly, not making much money, utilizing outdated information systems technology, and/or experiencing ongoing challenges from operational issues
Managers who are unsure what product lines make or lose money
Firms experiencing material shortages, excess material or difficulty meeting customer deliveries
Companies emerging from bankruptcy or other financial distress
Owners who want to know why they aren’t making enough money or don’t have enough cash
Firms that want to stay small, but have a big market presence
Planning an Outsource Relationship

As with any business activity, outsourcing should be planned and executed carefully. A company should examine its operations carefully to know what to outsource and what to keep. Generally it makes sense to outsource functions that are complex (require specialists) but are distant from the core competency. Ideally, outsourced functions require a high degree of expertise, constant training and upgrading, but are similar across a large number of businesses. Outsourced functions do not require the full-time attention of upper management. Demand for these functions may be sporadic or seasonal, but other firms may demand them on a different schedule. For example, a high technology firm might outsource finance, and manufacturing, but chose to retain product development and marketing.

Some functions should never be outsourced. Top management should not be outsourced because every firm needs the full time attention of a manager or entrepreneur who has something at stake, whether he or she has signed on the debt or holds a fistful of stock options. Never outsource the functions that define the company’s strength, its core competencies. Without core competence, a company loses definition, purpose and the ability to compete. Never outsource a function unless there is a backup plan to “re-source” or “in-source” it if the initial relationship fails. You cannot control an outsource firm or its destiny, so you need to be prepared should it fail to perform to your expectations.

Outsourcing has risks. Outsourcing vendors usually have more expertise in their field, so an unscrupulous one could negotiate an unfair contract. Be sure you thoroughly understand what you are getting into. If the contract does not thoroughly spell out responsibilities in detail, some functions could slip through the cracks. Outsourcing often means opening your company’s most sensitive information and its premises to an outsider. Be sure you trust the vendor to maintain confidentiality and security. In some cases it may be prudent to require proof of errors and omissions (professional liability) insurance. Some customers and vendors may have legal problems working with an outsource vendor who works on your behalf. Be sure major relationships understand and accept that the vendor speaks for your company.

Outsourcing is like a marriage, a long-term contract in which both parties agree to provide help and support to each other. Unlike marriage, eventually all outsourcing relationships end. Outsourcing arrangements should include a written agreement that specifies, in detail, the duties, rights and responsibilities of both parties. The agreement should specify reasons for termination and a procedure to terminate the relationship with minimum damage to ongoing operations. Never enter a major outsourcing arrangement without having your lawyer review the contract.

Conclusion

Outsourcing gives a company access to resources it could not otherwise afford or obtain on short notice. It gives a company the ability to “right size” corporate functions quickly without investing in infrastructure. It makes it possible to build a virtual company competing on an international playing field with only a single employee, the entrepreneur. Outsourcing is a tool toward becoming more competitive by staying focused on your company’s core competencies. Outsourcing is a tool that, when used effectively, helps companies earn more money faster than they would doing the outsourced function in-house.

As an offshore IT services provider, Miracle-design provides all benefits of a full cycle IT outsourcing company.

Blog

Why You Need a Web Site

Published by:

Q: My business is very small, just me and two employees, and our product really can’t be sold online. Do I really need a Web site?

A: That’s a good question. In fact, it’s one of the most important and often-asked questions of the digital business age. Before I answer, however, let’s flash back to the very first time I was asked this question. It was circa 1998, during the toddler years of the Internet.

I was giving a speech on the impact of the Internet on small business at an association luncheon in Montgomery, Alabama. Back in 1998, which was decades ago in Internet years, the future of e-commerce was anybody’s guess, but even the most negative futurists agreed that all the signs indicated that a large portion of future business revenues would be derived from online transactions or from offline transactions that were the result of online marketing efforts.

So should your business have a Web site, even if your business is small and sells products or services you don’t think can be sold online? My answer in 1998 is the same as my answer today: Yes, if you have a business, you should have a Web site. Period. No question. Without a doubt.

Also, don’t be so quick to dismiss your product as one that can’t be sold online. Nowadays, there is very little that can’t be sold over the Internet. More than 20 million shoppers are now online, purchasing everything from books to computers to cars to real estate to jet airplanes to natural gas to you name it. If you can imagine it, someone will figure out how to sell it online.

Internet marketing research firms predict that online revenues will range between $180 billion and $200 billion in 2003. They also predict that the number of online consumers will grow at a rate of 30 to 50 percent over the next few years. These numbers alone should be enough to persuade you that your business should have a Web site.

Let me clarify one point: I am not saying that you should put all your efforts into selling your wares over the Internet, though if your product lends itself to easy online sales, you certainly should be considering it. The point to be made here is that you should at the very least have a presence on the Web so that customers, potential employees, business partners and perhaps even investors can quickly and easily find out more about your business and the products or services you have to offer.

That said, it’s not enough that you just have a Web site. You must have a professional-looking Web site if you want to be taken seriously. Since many consumers now search for information online prior to making a purchase at a brick-and-mortar store, your Web site may be the first chance you have at making a good impression on a potential buyer. If your Web site looks like it was designed by a barrel of colorblind monkeys, your chance at making a good first impression will be lost.

One of the great things about the Internet is that it has leveled the playing field when it comes to competing with the big boys. As mentioned, you have one shot at making a good first impression. With a well-designed Web site, your little operation can project the image and professionalism of a much larger company. The inverse is also true. I’ve seen many big company Web sites that were so badly designed and hard to navigate that they completely lacked professionalism and credibility. Good for you, too bad for them.

You also mention that yours is a small operation, but when it comes to benefiting from a Web site, size does not matter. I don’t care if you are a one-man show or a 10,000-employee corporate giant; if you don’t have a Web site, you are losing business to other companies that do.

Here’s the exception to my rule: It’s actually better to have no Web site at all than to have one that makes your business look bad. Your Web site speaks volumes about your business. It either says, “Hey, look, we take our business so seriously that we have created this wonderful Web site for our customers!” or it screams, “Hey, look, I let my 10-year-old nephew design my site. Good luck finding anything!”

Your Web site is an important part of your business. Make sure you treat it as such.