Has the time come for your company to explore software
development outsourcing? The potential for cost savings is always attractive,
but there are many other good reasons softwaredevelopment outsourcing has been pursued by other companies, including:
·
A large backlog of existing projects, exceeding
your staff’s capacity to address
·
Local talent pool challenges – finding and
retaining programming talent.
·
A need for new (or even niche) technical skills
that are not part of your team’s core skillset.
·
A need to temporarily scale up in programming
capacity, then throttle back down at some point.
·
Regardless of company size, outsourcing has delivered on promises for cost savings,
flexibility, and scale.
“How do I get started?” you may ask. Let’s explore a couple
of options that could allow you to “test the waters” with a chosen outsourcing partner.
Scenario 1: Small and safe software
One possibility is to select a project
that is small in scope with a clear set of project objectives and deliverables.
The main idea is to hire your outsourcing partner to tackle a software project
with clear boundaries. Start with a project small enough in effort that the
success of the outsourcing relationship can be quickly measured. Typically, the
software will not be mission critical or high profile.
If all goes well, then your new outsourcing partner has
presumably earned the right for larger (and more lucrative) assignments.
What kind of company will pilot a small project?
Companies who favor this “Small and
Safe” approach will usually have one or more of these characteristics.
·
Highly
conservative, low risk-tolerance culture
·
Internal
processes that are immature, or unproven in large enterprise work
·
Key
stakeholders (IT project leaders, User SME’s, etc.) that are relatively novice:
either in their role, or in leading formal IT projects.
·
Historical
resistance to outsourcing – whether in IT or in the business community.
·
There
is some lack of confidence or comfort with the
chosen outsourcing partner.
Pros and cons of piloting a small project
Pros: Work
complexity is low, so demands on your internal people and processes are low,
therefore the risk of failure is low. Some companies feel it would be easier to
part ways with a “bad fit” outsourcingcompany in this scenario.
Cons: The project may be too small or
strategically insignificant to matter. Because the project is small, some
companies will be tempted to allow themselves to be sloppy in process or people-contributions
to the project.
Scenario 2: Significant engagement
Another option is to take a more
ambitious approach. Some companies opt to spend money, time, and effort
(including energy to establish an outsourcing relationship) on a software
project that has high business importance. Companies will want to pair this
option with a commitment to an Agile development method for the pilot project.
While this option is more aggressive, it aims to solve the ultimate challenge
of getting impactful work done.
Sprint Zero and Sprint One
While using Agile, you’ll get a good
sense of your software outsourcing
partner during Sprint Zero and Sprint One (first 30 days). Some companies
find that their new outsourcing partners
will waive the invoice for Sprint Zero if the customer feels that irreparable
issues arise – and the relationship is severed. The outsourcing company offers this option to waive fees in order to
entice companies who wish to try outsourced programming for the first time, but
are hesitant. If a problem arises and the fees are waived, there is some
investment cost of time, but not money “wasted" by business to get
started.
What kind of company will pilot a significant project?
Companies who favor this “Significant
Project” approach will usually have one or more of these characteristics.
·
Have
a good ability to assess risk/reward payoff when evaluating options.
·
Have
imminent software development needs that, when delivered, can contribute to the
company’s performance.
·
Key
stakeholders (IT project leaders, User SME’s, etc.) that are relatively mature
in their role – or are new to the role, but seen as good “systems thinkers.”
·
Strong
sense of urgency in the business culture.
·
Able
to collaborate inside teams and cross-functionally.
Pros and cons of piloting a significant project
Pros: Typically, the key reason for choosing
this option is that you will deliver on a system that really matters to your
organization (i.e., high impact). Even if the outsourcing relationship sours,
your company will have made progress in design considerations and reusable
code. Your work efforts will never be “all a throw-away.” Also, because you’ve
chosen a software project of importance, the organizational commitment to
success will be higher. Your stakeholders may demonstrate a higher level of
personal investment.
Cons: Because you have chosen a high
priority project, the organizational visibility will be high. There may be some
elevated angst as your company and the outsourcing partner work out the kinks
of your daily rhythms of work.
Choose a great software partner
Regardless of the project you chose as
your pilot for outsourced softwaredevelopment, make sure you invest the time to select the best-fit
candidate. It’s crucial that you have an outsourcing
partner that fits your software needs.
Proper skills and experience. It may
seem obvious, but don’t short-sell the importance of performing a full due
diligence of the prospective partner’s skill sets. Look for technical
certifications. Look for certifications and/or expertise in related experience
in your business vertical (manufacturing, healthcare, financial services,
etc.). Look for experience in software projects that are similar to yours.
Examples might be:
·
Customer-facing
with high transactions through a website,
·
A
mobile solution with “store and forward” capabilities because of inconsistent
wireless service or internet access,
·
A
web solution for shop-floor workers which is highly visual and intuitive, with
minimal “clicks” required.
Size-appropriate. We believe the best
outsourcing relationship matches are those where the company size of your
partner complements your needs. The obvious bad-fit is a company that’s too
small, with insufficient bench strength to cover your needs. The not-so-obvious
mismatch is a partner so large that your project and company’s needs really
aren’t “big enough to matter.” My rule of thumb – which I call the Steve Mezak
5% Rule is: make sure your engagement represents no less than 5 percent and no
more than 20 percent of your outsourcing company’s revenue base.
Time zone. Collaboration with your
outsourcing partner will be key – especially if you are using Agile development
methods, with small rapid Sprints of completed work. Make sure your company and
the outsourcing team will be able to collaborate easily and rapidly without
asking either group to reach into non-standard hours just to converse. Your
options are no longer limited to a U.S.-based outsourcing company or Asia-based
team on a 12-hour time zone difference.
Culture. Any hiring manager knows that
cultural fit is the most important criteria for a successful hire – far beyond
experience or technical skill fit. Make sure that your candidate outsourcing partner fits your company’s important
distinctiveness: highly formal or informal, aggressive or conservative. You
must make sure that a team hundreds (or perhaps thousands) of miles away can
operate in a natural rhythm of communication and productive work with your
company.
Get started with your first engagement
Many companies, large and small, have
benefitted greatly from successful software development outsourcing
relationships. It’s a proven model. The partnership options have never been
more diverse. Pick your pilot software project, pick your software outsourcing
partner, and get started!
No comments:
Post a Comment