TopCoder Inc.
Developing Software through Crowdsourcing
Group 4
Nikhil Goel
Pradeep Khan
Prasad Deshpande
Rachit Jain
Radhalaxmi R. Iyer
TopCoder Inc. - Inception
• Founded in 2001 by Jack Hughes
• Previously owned a traditional software firm – Tallan
• Had been frustrated with the following business
problems:
› Time-consuming and expensive process of talent
recruitment
› Talent retention – high turnover rate
› Development from scratch – unable to reuse
existing components
TopCoder Inc. – company profile
• Runs by providing platform between two sides:
› First side – clients. Interfaces with clients to understand their business
needs and generate programming challenges based on it.
› Second side – developers’ community. Arrange contests for the community
to create solutions to the challenges for money and skill ratings.
• Arranges two types of competition :
› Algorithmic competitions for generating solutions for generic difficult
problems.
› Competitions for developing software solutions for specific client needs.
• Evaluate the solutions of the community through bug-testing and community
peer-review
• Award money prize and skill ratings to the best solution provider.
• Identify reusable components from the software developed for the clients and
store it in a catalog.
• Also acts as a source for providing best talents of their community to their
clients.
What’s in it for the customer ?
How about
Idea !!
getting it from a
developer
community?
Throw the challenge at
them
Ar
ra
for nge c
the om
be pet
st c itio
od n
e
Get
b ac
sof k hig
twa h
re c qual
om ity c
pon he
ent ap
s
Crowdsourcing, the new software development methodology
• Outsource a challenging software
module/component to a large group of people - a
community or a crowd.
• Generate interests by giving incentives like money,
prizes, skill ratings etc. for the best performance.
• Access the quality of work through various
standard procedures like bug tests, peer review etc.
and generate scorecards.
• Use the best graded software module/component
for integration with other components.
Evolution of Top Coder Community
• Growth & Composition
– Growth
• >25,000 programmers added each year (2001-2009)
• 3 types of coders normal, latent pool(82.5%) & long tail
– Composition
• Core of TopCoder’s community was Single Competitive males in there 20’s.
• Had competitors world wide. Some coders were full time.
– Profiles & Ratings
• Profile
– Programmers maintained a public profile with all demographic data and top coder ratings
• Rating
– Ratings based on work done . Red , Yellow, Green color ratings were there .
– Success rate of contests & reliability was featured in programmers profile
– Motivating Members
• Through regular competitions , earning extra money
• Top coders ratings as one important criteria for prospective employers
• Work Flexibility & very high end learning
– Community Thinking
• Collaboration among top coder community members to help each other grow.
• Community help in time of personal exigency
Managing Top Coder
• Supply Side
– Unique Management Style
• Management through focus on community participation & community growth
• Managing clients & top coders programmers simultaneously
– Attracting Community Members
• Algorithms Challenges
• Advertising on Google for “design contests”
• University student participation through “member development days”
• Fairness & Quality of competitions
– Community Norms
• Enforcement of Integrity , fairness ,transparency & quality through well defined rules & procedures
• Elimination of community members in case of cheating
• Storing of all competition data to ensure transparency
– Governance
• Governance through community thinking
• Top Coder managers had rights to reduce, increase money for competition &
reviews
– Resource Allocation
• Dynamic resource allocation based on competitions
– Retention
• Consistent work streams & prize money
• Increasing participation
• Work Flexibility
Managing Top Coder
• Demand Side
– Platform Managers
• Project Planning , Execution & Client Management
– Top Coder Direct
• Clients managing there won project development
• Concept of “co-pilot” to assist the client
Client Benefits
Superior Decreased Speedy Flexibility
Quality Costs. response/ • Expand/Redu
• Delivery of • Compare the delivery ce business
Better below costs times requirements
bug free
Realization of Access to code. • $350,000 for • 72 hrs Vs 10 and
Ideas creative • Rigorous large IT firm.
business development
• Concept testing, ideas and evaluation.
• $200,000 for
days capabilities
small IT firm.
• Insight into solutions • Documentatio • $80,000 for
requirements. n process individuals
above • $35,000 for
industry TopCoder
standards.
Client Concerns
Intellectual Property & Problem
Cultural Change Coding Challenges
Security Identification.
• CIO’s dream, • Co. still required staff
• Increased risk to business
programmer’s for integration. • Find the right type of
plans/proprietary ideas to nightmare • Ensure no problem.
be leaked to competition. • Loss of control
• Community member bugs/threats • Amount of details to
over dev process. • Spend time to be revealed.
asking for royalty. • Members
• Solution is evaluate • Length of contest(< 2
pushy,rude. ideas/approaches weeks)
stolen/copyrighted.
Challenges !
• Competitive Landscape of TopCoder.
– Not much competition as of Dec 2009.
– uTest – only involved in finding bugs and
check functionality of applications.
Entry barriers for
large IT firms ?
Will community
members remain
with TopCoder ?
Challenges !
• Growth of Business model More contests
will lead to
– Sustainability of model. decreased
quality
– Future Growth.
Attracting
competitors with
increased contests!
Reviewers wanting to
compete in contests
– replacements?
Will increased
clientele change the
business model ?
What should we do ? - Jack Hughes
Our Thoughts !
• Unique Model
• Growth is there !
• Low cost & high quality software – key
advantage !
• Focus on generation of reusable
components.
• Quality of Work – significant motivation.
• Generate more algorithmic challenges for
the community to attract talent.