Outsourcing in questions
- What is the best approach to getting started with outsourcing?
- What works and what does not (i.e. types of projects, processes, etc)?
- What changes are necessary to a company's development process to make effective
use of outsourcing?
- What are good practices for managing outsourcing partners?
- What are the pros and cons of setting up a local office vs. using an outsourcing
- What are good strategies/options for taking over a team from an outsourcing partner?
- What are good strategies for keeping staff turnover low?
- What business and development workflows (models, processes, methodology) must be
used in outsourcing to achieve maximum efficiency/productivity?
What is the best approach to getting started with outsourcing?
Let's be realistic. Direct question means direct answers. So I can suggest the following
- Define which process or project do you want to outsource
- Define what knowledge do you have in process or project that you want to outsource
- Find corresponding outsource provider
- Sign contract agreement with provider
- And communicate, communicate, communicate...
Define what to outsource
First of all this must be only processes that are not significant to your company.
Of course this is only suitable when you just started outsourcing.
If you are experienced in this area then you have options. Then you can outsource
most significant parts of your own business without great risks.
I do not recommend to do this. Why not? As an example I'd like to share one story
from MBA book:
At the beginning of the IT industry there were two companies well known to us today:
Microsoft and IBM. IBM was very powerful at that time and controlled mostly the
whole IT market. Signing contract with Microsoft which on that time was a simple
supplier of computer OS, became a big mistake in IBM management. Software became
so important that supplier became a company that we know now.
So when you search supplier you are taking the same risk, supplier can become so
important that you will lose opportunity to control and you will loose own business.
Define own knowledge in outsource area
If you are not experienced enough in the area you want to outsource then you have
- hire consultant that has such experience and will control the process (low risks)
- formalize the process that will guaranty acceptable level of understanding from
both sides (normal risks)
- play without full understanding what supplier will do and how (high risks)
Finding corresponding outsource provider (outsource partner)
Try to follow those steps:
- try to find partner that has references on other customers (success story);
- choose company of corresponding size;
You can choose between three main categories of companies:
Middle Sized Company
No sufficient control
Company has more resources
No quality guaranty
Company has own workflow with proper control from TOPs side.
No workflow process
Wider specter of services
Not the same jurisdiction
No personal approaches
Factory style business
No agreement responsibility
Self motivated staff
Project staff is overblown
Limited in visiting other countries
Personal approach for customer needs
May have unfinished process
Huge development risks
Big company has advantages over middle sized company, but also provides additional
- try to find company that has certification, certified staff or well described workflow;
The best way to choose between several suppliers is to create tender.
Tender is a document that describes to suppliers what kind of services do you want.
Supplier must react on this by creating special document, named: PROPOSAL.
This practice is known as RFP (Request for Proposal).
Information to PROVIDE Vendors in an RFP
Information to REQUEST from Vendors in an RFP
- Background on your organization
- Your contact information
for the proposal process
- Criteria for making your decision
- Basic summary
of the project, including
overarching goals and time-line
- Project's target market, if applicable
(customers, users, stake holders)
- Detailed overview of the project
- Primary goal
- Secondary goals
- General scope
- Time frame
- Business requirements
- Creative/design requirements
- Functional requirements
- Content type/Content development needs
- Existing technical environment/requirements
- Your preferred working relationship requirements
- Ongoing support and maintenance requirement
- Vendor company information
- Company background/history
- Quick overview of services and capabilities
- Management or key personnel bios
- Contact information
- Vendor's proposed solution
- Basic summary of the solution
- Solution methodology/process
- Development plan
- List of tasks
- Details on proposed solution
- Original ideas - strategy, creativity, etc.
- Features and functionality
- Options and add-ons
- Technical requirements
- Preliminary design compositions (voluntary)
- Proposed budget
- Cost of services
- Required 3rd party costs
- Support and maintenance
- List of deliverables
- Proposed Project Team
- Vendor references
- Show examples of previous work
- Provide client references
- List awards/accolades and special certification
Main disadvantage of tenders is their cost. At least you will spent money on RFP
document preparing and you will pay organization that publish tenders for suppliers.
In some cases it even can cost you a percent from project total to tenders affiliates.
But affiliate companies can guaranty that they have sufficient database of suppliers
that can help you.
You can also search partner directly and reduce own expenses. You can search in
public directories: Microsoft Partner Search, EuroPages.com, Yellow pages, etc.
Don't forget to look on geographical area where your potential partner is located.
Most countries from xUSSR have a very good technical background and are very good
in many technologies. People from India advantages: English native speakers, easy
to find not qualified resources.
Second best practice - Pilot project
After you have RFPs it will be good to test suppliers in real live.
Main criteria's here are:
- supplier/partner performance
- quality of services
- cost of services
- workflow transparency
In most cases Pilot project is simple testing practice. It is scheduled on 1 week
of time and just shows if your choice of partner is right or not. But be careful
if pilot project will have no payment many companies will break any pre-arrangements.
Most companies prefer to use own resources in projects where payment available,
otherwise this is just loose of time.
This is recommended only if you choose partner for a long period of time. Most companies
now prefer to skip Pilot project practice.
What changes are necessary to a company's development process to make effective
use of outsourcing?
First of all outsourcing has great disadvantage: geographically outsource partner
can be on the "other side of the moon" and this makes communication very difficult.
Main problems here are:
- different points of view on business
- different native languages (they are not native speakers)
- different time zone
All this problems can be resolved only by better communication and fixed response
time. You have to be sure that supplier will react on your request not later then
defined fixed time. And be ready that if you request 24/7 you will pay for that.
How to be sure that partner understands me?
Don't hesitate to ask. And be ready that outsource partner will ask some questions
Check everything and then check once more. You make requirements and outsource company
have to satisfy your requirement. But if requirements are not good and not detailed
enough, the result will also be not good.
So to control the process you have to solve such problems:
- requirements management
- acceptance testing
At the beginning define several scenarios:
- what is hierarchy in supplier team, who is responsible and for what? Get all contacts
from supplier side.
- define "emergency" protocol:
- Who has higher rank in supplier company?
- How can you contact higher rank
- What will the response time be in emergency situations?
- Create the list of requirements and post them to supplier's side. Supplier has to
prepare specification on requirements, of course with your help, otherwise you will
only loose your own time. Only after several success iterations and when you became
sure that supplier understood you well, you can reduce control, but I do not recommend
this. It is better to keep control at the same level due to the whole project life
time. Always keep communication on high level. Good communication means to you good
- Define estimations and create work plan. Be ready that estimations will be not correct.
That is why you have to discuss reporting with supplier. It is most recommended
to get once per month total/overall progress report that will in general describe
situation. If you will need more details you can ask about once per week report,
but be ready that they will be in RAW format, with many technical details.
- If reports are not sufficient then ask about live meetings, live demos etc. Everything
that will give you the understanding of on what phase project is and what the next
step will be is good. Don't ask too much, otherwise supplier will spent on management
more time then you expect and this will increase cost of the outsourcing.
- Always ask about work plan, milestones, iterations and estimations. They maybe not
always correct, but this will give you the understanding of where you are and won't
give you a chance to "loose focus".
Don't try to make emergency a usual practice, supplier don't like this and
this will show you in not "good colors". They will prefer to break agreement if
they will have opportunity.
- Acceptance testing. Don't pay any money till you become sure that supplier gives
you what you want. Define in contract time required for acceptance testing.
What are good strategies for keeping staff turnover low?
This is well know list:
- Care opportunities
- Self-actualization opportunities
- Team climate
- Workplace conditions
What are the pros and cons of setting up a local office vs. using an outsourcing
Control is less
Different time zone
Different languages (not native speakers)
Different geographical regions
What are good strategies/options for taking over a team from an outsourcing partner?
Many outsource companies start to discuss this issue in agreements. So be careful
What risks you will have?
- Investments could be not returned
- Management overhead
- Big/Medium start-up investments
- Trust required or own person on outsource side/area
- Big delay in infrastructure preparing
- Not easy repeatable workflow
- Experienced staff lost
Why should you do this?
- You want to reduce cost of the development
- You want to eliminate limits that supplier has (resource limits)
- You want to share own company influence on other geographical areas
- Do not try to discuss team take over directly with team members. You don't know
how loyal they are.
- If you want to take a team then prepare the infrastructure for it or find corresponding
person who can do this.
- Find the best workflow for a team.
- You can try to find small company - invest into it and on it infrastructure reallocate
teams from other places.
- Prepare environment that will allow team to recover lost resources (time, money,
Author: Oleksandr Kucherenko, CVO/ArtfulBits, 2007