CTOs and VPs of Engineering – especially those at smaller firms – likely feel overwhelmed when evaluating potential outsourcers. The outsourcing market is more than $90 billion annually, and there are literally hundreds of thousands of firms and millions of individual developers from which to choose. Even the process of creating a methodology to group vendors and assess their skills can be a daunting task.
Firms searching for outsourcing partners typically share the common objective of augmenting their internal development team at a reduced cost in order to complete development of product functionality considered to be “non-core” (that which does not include the firm’s intellectual property), and doing this while maintaining the “product culture” they’ve worked hard to create.
One of the first methods to screen potential outsourcers is to group them into logical buckets to ensure that the profile of the vendor matches your ideal partner. The groups below reflect those that small product development firms most often consider and ultimately hire.
The largest software development firms employ thousands of software developers, testers, project managers and requirements/business analysts and promise highly refined development processes that produce consistent, reasonably high-quality results. Leading firms in virtually every major offshore development locale including India, China, Eastern Europe, South America, Vietnam.
These firms are best suited for large corporations with large project budgets and long schedules that have the ability to ensure process-heavy engagements and long ramp-up periods. While these vendors will support companies looking to augment internal resources on a long-term basis, hiring firms typically struggle to seamlessly integrate teams from large firms, resulting in adverse impacts to the desired “product culture” of the hiring firm.
This category unfortunately includes the largest quantity of development firms and has ultimately resulted in a negative connotation of the word “outsourcer” because it has become synonymous with offshore, low cost, and low quality that these firms produce. Virtually every software development executive has at least one offshore outsourcing nightmare story and these firms are the culprit.
Bottom feeders specialize in hiring the cheapest personnel available in their country of operations, which either means they hire people directly out of college with no experience or hire those people who available because higher quality firms will not hire them. They offer little to no training before throwing developers into projects. Further, they suffer from high turnover because they compensate personnel at the low end of the market, which results in a cultural “short-term” mentality.
The result is that the teams assigned to their clients lack of a sense of ownership of the ultimate success of their work and focus more on achieving client acceptance than on software architecture, design and code quality.
When these firms pitch you, they will promise rock-bottom prices – often less than $3,000 per developer per month; the ability to start your project immediately;, a skillset that contains virtually every conceivable platform and technology; and promises of unrealistic deadlines. However, rarely do these promises become a reality. In short, the adage “you get what you pay for” applies equally in software development. What you save today on your outsourcing budget will cost you sooner or later either in missed deadlines that result in budget overruns; in code refactoring; or, worse, in low customer satisfaction when you are forced to release a low-quality product. There’s virtually no client for which a bottom feeder will prove to have been a wise decision.
Using services such as Upwork (formerly Elance and Odesk), Freelancer, or Guru, millions of software developers in countries around the world hang out their digital shingle to find jobs and advertise attractive hourly rates. While many of these people have solid training and skills, a hiring firm needing to build a team typically finds the following challenges trying to turn a collection of individuals into a team:
- Poor understanding of and less experience using the agile development methodology likely used by the hiring firm.
- Management challenges including communication, quality assurance controls, and design/architecture oversight, which ultimately result in design flaws and code quality problems.
- No integrated quality control processes or personnel. The code is written and committed and the hiring firm is responsible for ensuring that the code works correctly.
Freelancers are a great option up to a point in that the work of one or two individuals may be manageable, the quality acceptable, and the desired “product culture” achievable, but rarely does this option scale past a couple of developers for the reasons stated above. if a hiring firm needs to add one individual for discrete projects, such as building a basic website, which can and should be completed by a single developer, but when a firm needs to create a team, assembling a collection of individual freelancers often create more problems than they solve. A team is more than a collection of individuals.
Premium, Boutique Vendors – “Upsourcers”
When the hiring firm’s resource needs expand to a point that individual freelancers are no longer manageable, hiring a premium offshore development partner is probably the best option. As the name suggests, these firms focus first and foremost on delivering high quality software. Most of these firms are either run by an expat or an executive based in the United States who has worked with the overseas organization for years in order to build relationships with leadership and ensure the culture required to deliver high quality is maintained. These firms often staff fewer than 100 personnel, which enables them to maintain the high level of quality because senior management can maintain relationships at all levels of the organization. If they are larger, they grow slowly – client by client – adding senior project and technical management personnel as overhead and human resources personnel – all non-billable – to ensure that the culture, personnel quality and lightweight processes used to achieve success as a small company are maintained during growth.
This level of quality comes with an increased price over freelancers and bottom feeders. Premium vendors are likely to cost as much as 30 and 50 percent of the cost of hiring internal personnel based in the United States.
When you engage with a premium firm, expect to find the following:
- A vendor that wants a long-term engagement. This entails the vendor to hire personnel for a “job”, not a “project” and to find people with a long-term perspective on their work;
Personnel who take a personal sense of ownership for their work that you would expect to find in an employee;
- A team that embraces your product culture and ultimately becomes a seamless extension of your company;
- Management and a team that provide insights and advice – bundled consulting – that improve your product and your development processes, because, as a long-term partner, the vendor wants to ensure you are as successful as possible;
- A firm that builds a team specific to your needs, while pre-screening candidates to meet their technical and cultural requirements, so that you are able to participate in shaping the team just as you would if you hired personnel internally.
If you are able to engage with a firm that delivers these attributes, you’ve found a “Upsourcer”, not an outsourcer. This is an organization that can:
- Scale as your company grows;
- Be a seamless extension of your internal team and product culture;
- Deliver high-quality software at a fraction of the cost of US-based staff;
- Make your organization more productive and efficient with bundled process and product consulting.
Consider CodeStringers for your Upsourcing needs.