Software Development Outsourcing

How to Find the Right Software Development Outsourcing Companies

This is the second post in our series on outsourcing software development. In the first post, we covered how outsourcing software development can help you overcome a talent shortage, long hiring cycles, and high costs. Here, we help you find the right outsourcing partner.

So, you want to build software. Google, Apple, IBM and every software startup and app development agency do too. And they’re all engaged in furious international battles to find and recruit skilled software developers. With today’s high demand for talent, building the right team is harder than ever.

Hundreds of companies offer outsourced software development. Some are in the U.S., some in Central and South America, others in Eastern Europe or the Philippines. A significant majority are in India. These companies come in all sizes — from local, 10-person boutiques to international, billion-dollar behemoths and everything in between. What makes selecting a partner difficult is that most outsourcing companies claim similar capabilities and experience.

So, how do you find just the right partner for your business?

Start by taking an inventory of your needs and placing parameters that will let you narrow your search.

Key Considerations for Software Development Outsourcing

There are several factors you should consider when searching for a partner:

  • Current IT gaps (which helps identify your needs)
  • Long-term need vs short-term, fixed-scope activity
  • Developing internal software vs. software products for the market
  • Would you consider offshoring?
  • Size of the outsourced development partner relative to your company and project budget
  • The intricacies of your industry
  • Considerations specific to outsourcing companies, such as:
    • Management and process strengths
    • City location
    • Churn rate and training
    • Learning culture
    • Intellectual property approach and legal protection
    • Intangibles and company culture

What IT Gaps are You Trying to Address?

Once you’ve identified there’s more work than people available to do it in your organization, you can start analyzing your situation. Capture your needs and priorities, and review them with your existing internal team in mind. You’re looking for the best match between potential outsourcing projects and existing skill sets and bandwidth. The items left over are your gaps, and the requirements of those gaps are a key input to your outsourcing partner selection. Once you’ve identified your IT gaps, you can drill down further and define which technology stacks you need help in, whether they’re established stacks, such as Java, .Net and LAMP, or more specialized technology skill sets.

For example, you have a portfolio of existing software systems you’re continuing to improve and you have a number of new applications you need to build in the coming year. Your team can handle some, but not all of that work. Through your analysis, you allocate your resources and end up with two gaps: resources to address bug fixes from feature enhancements and QA/testing for the new applications under development. With these gaps identified, you can establish the technology stacks you need help with and move to the next decision criteria.

Look for the best match between potential outsourcing projects and your companies existing skill sets and bandwidth. #SaaS
Click To Tweet

Long-Term Need vs. Short-Term, Fixed-Scope Activities

You know what gaps you need to fill, now it’s time to decide whether your gaps represent a long-term need or something that can be addressed in a fixed-scope manner. Long-term needs are best solved through a retainer agreement, so you’re effectively hiring a team of resources, but you’re doing it through an outsourcing company. In this approach, having the right people on your team from a relationship perspective is critical. You’re going to be working with them day in and day out, over the course of months or years, so knowing they can fit into your internal team is a high priority.

In this case, you want to interview the potential team members yourself, you need to understand their individual skill sets, both technical and interpersonal. If you’ve determined you have a short-term need, then interviewing resources isn’t as important as getting the requirements and T’s and C’s of the contract. The resourcing is left directly to the outsourcer to figure out, because they need to make sure they can deliver the project on time, on budget, and on scope.

Augmenting, a Proven Approach

At GlowTouch, we’ve seen the best results when technology companies augment a strong internal IT team with an outsourced team. In this case, the internal team manages the outsourcing partner, and everyone works together, pushing toward the same goals and contributing to regular product discussions. The outsourced team becomes an extension of your internal business and emotionally invests in it. This arrangement also provides the flexibility to increase or decrease team size and reassign resources to tasks as needed. Since software product development is an iterative process, having flexibility in managing resources allows you to respond to market demands effectively.

If you simply outsource a one-off project with a fixed scope, you often end up with a rigid structure, unable to adjust the development process and team in response to market demands. And outsourcing the entire process with no internal IT team to oversee the process often just doesn’t work, especially for more complex projects. 

Internal Software vs. Market Software Products

Market-launched software products and internal-use applications often have different purposes, end users, design standards, user experiences and development processes. Launching market software products requires a product mindset, an understanding of your customer (the end user), recognition of the importance of a great UI and a strong ability to think critically and creatively, not just perform rote tasks. It’s often a higher standard to meet. If you’re building a software product for the external market, select an outsourcing partner that’s either built their own market products or specifically worked with software product companies on external software applications.

Size and Budget Do Matter

Is your budget $20,000, $1 million or $10 million? The answer will instantly narrow your search by thousands of potential partners.

Let’s discuss a scenario where a $20 million revenue company wants to outsource software development on a budget of $100,000. Should it select a billion-dollar outsourcing company, a local, 10-person development shop or a mid-size outsourcing partner?

A $100,000 project will be insignificant for the billion dollar company, and as a result the client likely won’t get the desired attention. In addition, they’ll be dealing with a company that’s significantly larger than them, so if things get tough, the advantage is on the side of the outsourced vendor. On the other hand, the project will likely be too big for a company with just 10 people whose time is already split between multiple clients. The right partner would be big enough to handle the project as defined and have room to manage expanding scope, but small enough to provide hands-on management and individual client attention. In this example, the mid-size company — maybe a $10 million to $50 million firm — would be the best fit.

Industry Intricacies

The right partner must not only have the technical chops but also the relevant industry experience and product understanding to develop your software. For example, if you’re building a healthcare product, you’ll want a partner who’s worked in healthcare — preferably across a number of different areas, understands HIPAA regulations and what they mean to a software company, and knows how to navigate the intricacies of the overall healthcare industry. Not every outsourced development company will have expertise in your specific domain, so you need to check and ask for case studies and reference customers too.

Onshore vs. Offshore

When outsourcing, you have two broad location options — work with a company in the U.S. (onshore) or one outside the U.S. (offshore).

Onshore

Onshore outsourcing allows you to work with a team that doesn’t have potential language, time or cultural differences. But there are two important issues you need to consider. First, unless the outsourcing company has a bench of team members who fit your specific needs, quick access to resources may not be possible. If a company has developers on the bench, it can quickly bring them to work on your project; otherwise, it needs to hire new employees. If your partner needs to hire, they’re in the same tough hiring market as you and every other company in the U.S. — see the first article in our series. It will likely be just as hard for them to hire the people you need in a timely manner.

The other problem is cost. An onshore company won’t have a significantly lower cost structure with new hires. They may provide process efficiencies that deliver savings, but you will likely pay a higher hourly rate than if you hired the same developer in-house, since the outsourcing company needs to make a profit.

Offshore

Good offshore outsourcing companies can usually carry a bench because of the lower cost of technical talent. Having a bench allows them to offer both lower cost and faster availability and onboarding.

But offshore outsourcing requires greater monitoring due to distance and potential time zone, language and cultural issues. The extra time spent managing the work can eat into your savings on developer costs. If you need a developer to work stateside with your team, it can take weeks to get him here. If you have a contract dispute, pursuing it in an alien country can be a huge distraction and cost. And you may not get the same level of protection from an international contract as you would get if the contract were based and enforced in the U.S.

The GlowTouch Approach: Getting the Best of Both Worlds

At GlowTouch, we’ve found having teams in both the U.S. and offshore locations can overcome many of the biggest challenges of offshoring. We’re headquartered stateside to make the legal and management process smooth and have a 1,500-person team operating from India to provide efficiencies. If you work with a company like ours, you’ll sign a contract with the U.S. entity, giving you strong legal protection. More importantly, you’ll have a local connection actively engaged with your team. Our stateside team will manage language, location, cultural and quality processes for you while still delivering cost savings. It’s the best of both worlds.

Our stateside team will manage language, location, cultural and quality processes for you. #CustomerSupport
Click To Tweet

Company-Specific Considerations

Beyond the broad ways of narrowing your search that we’ve discussed, several company-specific traits can mark the difference between outsourcing success and headaches:

  • Management and process strengths
  • City location
  • Churn rate and training
  • Learning culture
  • Intellectual property approach and legal protection
  • Intangibles and company culture

Management and Process Strengths

Whatever project processes you prefer, make sure your partner is well-versed in them. For example, if you use agile development methodology, your partner should have an agile culture, a robust agile framework and experience with agile tools. If an outsourcing partner doesn’t have experience in agile software development, and that’s how you want to work, it’s a deal breaker.

Cities Matter, Including Overseas

If a company operates in a city with high competition from other software companies, such as Mumbai, India, it has access to a deep pool of talent, but those cities are now facing similar hiring and retention issues as we face in the US. Demand for talent is high, availability is low and retention is tough. But a company that operates in a less inundated city, such as Mangalore, India — where GlowTouch resides — will be able to attract and retain quality talent at a more reasonable cost.

Churn Rate

Since you’re outsourcing to gain access to developers, it’s important to understand how your outsourcing partner recruits, trains and retains their team. The best companies not only have the best talent, but also keep that talent on-board. A high employee churn rate, AKA employee turnover rate, means constant changes in your development team and can adversely impact software development schedule and cost. This is especially relevant in long-term retainer teams. Ask prospective partners how long their key employees have been with them, what the average employment duration is and what percentage of people leave each year. Take the time to feel out your partner’s company culture and understand their employee retention practices.

Learning Culture

Technology changes rapidly, and so do the needs of your business. A partner that understands that and values the importance of a learning culture will set you up for long-term success. Ask prospective partners how they approach training. Do they focus on both soft skills and technical skills? Do they train for cultural understanding? How do they engage their workforce and encourage and reward people who value self-improvement? A learning culture in your outsourcing partner is a clear sign they’re looking to the future and preparing to be part of it.

Intellectual Property

Protect your IP at all times. When we think of IP protection, we generally picture employees taking product ideas or code with them. You should ask the outsourcing partner to sign a Non-Disclosure Agreement (NDA) that provides you legal protection should the partner be at fault in securing your IP. In addition, ensure the partner has back-to-back NDAs with its employees who work on your product. Ask the partner for a sample of its employee NDA and get it reviewed by your legal team. If you’re not satisfied, ask developers working on your product to sign a separate NDA that meets your needs.

There’s another aspect of IP protection you may overlook while outsourcing. Most companies work with multiple clients in the same industry, creating the potential for an idea or a piece of code to find its way into another client’s product. You can protect yourself by asking your partner to create a firewall between your team and others. The firewall includes a separate network for your team, physical separation in the form of controlled access to your team area and a contractual right to audit the systems used by your team. You can also create an email ID in your domain for developers working on your product and ask them to use only this ID for emails related to your product.

If your outsourcing partner doesn’t know how to create these safeguards or is unwilling to do so, walk away.

Intangibles

Intangibles. Company culture. Values. They may not always fit into a familiar box or an easy definition, but they hold just as much importance to a business as all of the other focus areas we’ve covered. To us, intangibles determine the feeling you get when you work with and talk to potential outsourcing partners. They include things like a company’s responsiveness to queries or their reaction when you request new thinking, approaches or changes. It’s who they are at their core, what they value, how they demonstrate those values.

A company’s culture manifests itself through its interactions with customers and vendors alike, their engagement in the community, their commitment to social responsibility, and how they handle the little things. If you feel comfortable with the people you outsource to, doing business with them will be a better experience. One good question to ask yourself: would you want to grab a beer with them?

TL:DR (Too Long: Don’t Read)

If you don’t have time right now to comb this post’s details, here are the highlights:

  • If you want to outsource software development, you need just the right outsourcing partner
  • To select your partner, inventory your development needs and use these parameters to narrow your search:
    • Current IT gaps — what you can handle yourself vs. what you need to outsource
    • Long-term vs. short-term, fixed-scope project
      • Long-term = hire a team to handle ongoing requirements (staff augmentation), this is usually the best option
      • Short-term, fixed-scope project = one-off job; you MUST have a painstakingly well-defined project scope
    • Internal software vs. software for market — if your software is for the market, hire a company that’s built external products; it’ll save you a fair few headaches
    • Offshore vs. onshore outsourcing— offshoring (out of U.S.) saves money but requires close stateside management, onshore outsourcing is often really expensive
    • Size of the outsourced partner — don’t pick a huge company if you’re not huge; don’t pick a 10-person boutique shop if you need scale; pick a mid-sized vendor if you need a happy medium
    • Pick a partner that knows your industry
    • Management and process strengths — e.g. if you want agile, pick a company that uses agile
    • City location — offshoring in tier 2 cities (e.g. Mangalore, India) is less expensive than offshoring in tier 1 cities (e.g. Mumbai, India)
    • Churn rate and training — only pick a partner that can build and retain a high-quality team
    • IP and legal protection — sign a U.S.-based contract, have your team sign NDAs, take security seriously
    • Intangibles and company culture — pick a partner that does business the right way and makes you comfortable

About GlowTouch

GlowTouch is a privately held and WBENC-certified, woman-owned enterprise, founded in 2002. We provide personalized contact center, business processing, and technology outsourcing solutions to clients around the world. Our 2,300+ employees deliver operational excellence with high-touch engagement garnering recognition by independent bodies such as Everest Group, International Association of Outsourcing Professionals (IAOP), and a six-time honoree on the Inc. 5000. GlowTouch is headquartered in Louisville, KY, with onshore contact centers in Louisville, KY, and Miami, FL; a nearshore presence in Santo Domingo, Dominican Republic; and offshore locations in Mangalore, Bangalore, and Mysore India. To learn more about GlowTouch, visit www.GlowTouch.com

Share on facebook
Share on twitter
Share on linkedin
Share on email
Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on email
Email

Related Posts

White Glove Service

White Glove Service

Premium Service, Without the Premium Price To date, as best we can tell, no customer of any organization in any industry has complained about being