# Topcoder

Topcoder (formerly TopCoder) is a crowdsourcing company with an open global community of designers, developers, data scientists, and competitive programmers. Topcoder pays community members for their work on the projects and sells community services to corporate, mid-size, and small-business clients. Topcoder also organizes the annual Topcoder Open tournament and a series of smaller regional events.

## History

Topcoder was founded in 2001 by Jack Hughes, chairman and Founder of the Tallan company. The name was formerly spelt as "TopCoder" until 2013. Topcoder ran regular competitive programming challenges, known as Single Round Matches or "SRMs," where each SRM was a timed 1.5-hour algorithm competition and contestants would compete against each other to solve the same set of problems. The contestants were students from different secondary schools or universities. Cash prizes ranging from $5,000 to $10,000 per match were secured from corporate sponsors and awarded to tournament winners to generate interest from the student community.
As the community of designers, developers, data scientists, and competitive programmers involved in Topcoder grew, the company started to offer software development services to 3rd party clients, contracting individual community members to work on specific tasks. Most of the revenue, though, still came from consulting services provided to clients by Topcoder employees. From 2006 onwards, Topcoder held design competitions, thus offering design services to their clients. In 2006 Topcoder also started to organize Marathon Matches (MM) – one week long algorithmic contests.
In an attempt to optimize expenses, Topcoder introduced new competition tracks in 2007-2008 and delegated more work from its employees to the community. By 2009, the size of Topcoder's staff had been reduced to 16 project managers servicing 35 clients, while the community did most of the actual work via crowdsourcing. Topcoder representatives claim that at this point their community had about 170k registered members, and the company's annual revenue was approximately $19 million.
In 2013, Topcoder was acquired by Appirio, and the Topcoder community (of around 500 thousand at the time), was merged, under the Topcoder brand, with the 75k member crowdsourcing community Cloudspokes, created and managed by Appirio.
In 2016, Topcoder, along with Appirio, was acquired by Wipro as a part of a $500 million deal and continued to operate as a separate company under its brand.
Since the end of 2017, Topcoder has continued to offer its enterprise clients the Hybrid Crowd platform, as a way to protect intellectual property in crowdsourcing projects. In addition to the public Topcoder community, the Hybrid Crowd platform allows for the creation of certified and private crowdsourcing communities. Its certified communities include members of public Topcoder communities who are vetted for a customer's specific requirements, such as signing an additional NDA, completing a background check, or meeting any other particular certifications. The private communities may include an enterprise's employees and contractors. As the first user of Hybrid Crowd, Wipro integrated its internal (employee-only) crowdsourcing platform TopGear with Topcoder.

## Topcoder community

Estimated size of Topcoder community :
| Date | Num. registered members |
| 2002 | 10 000 – 20 000 |
| 2003 | ~30 000 |
| 2004 | ~40 000 |
| 2005 | ~60 000 |
| 2006 | ~90 000 |
| 2007 | ~120 000 |
| 2008 | ~160 000 – 170 000 |
| 2009 | ~220 000 |
| 2013 | ~500 000 – 600 000 |
| 2014 | ~700 000 |
| 2015 | ~850 000 |
| 2016 | ~1 000 000 |
| 2018 | ~1 200 000 |
| 2024 | ~1 900 000 |
Topcoder community is the primary source of the workforce behind all Topcoder projects. It is open and global: anybody, with a few legal restrictions dictated by US laws, and listed in Community Terms, can join and compete, without any financial commitment to Topcoder. Also, participation in challenges organized in the interests of commercial clients generally requires the community member to sign a non-disclosure agreement. Intellectual property for the winning submissions to commercial challenges is passed to the client, in exchange for monetary prizes paid to the winners.
While the majority of community members participate in Topcoder challenges as regular competitors, those who become recognized for their performance, and involvement in community life (via communication in Topcoder forums, attending Topcoder events, etc.), are offered additional roles in the community, which include: copilots (technical coordinators of challenges), problem writers, reviewers, etc. Since the end of 2014 till the end of 2017, a Community Advisory Board (CAB) was selected from active community members for a one-year term to help improve communications between Topcoder company and its community. In 2018 the CAB was replaced by the Topcoder MVP (Most Valuable Player) program.
There are four primary segments of each Topcoder community, open to every member: Design, Development, Data Science, and Competitive Programming. Also, since the end of 2017, Topcoder, as a part of their Hybrid Crowd offering, creates sub-communities dedicated to specific clients/projects. The sub-communities may require members to meet additional eligibility criteria before joining.

### Design

Topcoder design community is focused on:
* Information Architecture
** Wireframes – With customer ideas, application and business requirements as input, competitors are challenged to create a black-and-white interactive user experience guide, able to showcase the logic and user-experience with the further application, without spending time on the exact look and feel.
** Idea Generation – Competitors are asked to develop an idea proposed by the customer, with a written report or visual presentation as deliverables.
* UI/UX/CX Design
** Applications and Web Design – Competitors develop graphical designs for customer application or website; the deliverables are the actual design specifications (graphical images with associated measurements, font details, etc.) for software developers.
** Design Concept – More informal design challenges, where participants should turn client idea into a design, which is not meant to be used for the actual development without further processing.
** Icons design
** Presentation Design – Infographics, print materials, PowerPoint presentations.
Two particular types of Topcoder design challenges are LUX (Live User Experience, 24 – 48 hours long) and RUX (Rapid User Experience, three days long). In both cases, more substantial prizes compared to regular design challenges with the similar goals, are offered in exchange for the shorter timeline. Short timelines allow Topcoder managers to demonstrate to customers how crowdsourcing works on real cases, during live, and few-days meetings with the clients.

### Development

Software development segment of Topcoder community is focused on:
* Bug Bash – Challenges concentrate on fixes of numerous small bugs in an existing software product.
* Code – Generic software development challenges, typically with five day competition phase, and four more days for review, appeals and appeal responses. Usually, two prizes are offered, ~$600 - $1200 for the winner, and half of that for the second place.
* First-to-Finish (F2F) – Rapid software development challenges with no fixed timeline for the competition phase. The first participant who submits a solution satisfying the specifications wins the only prize. In case of defects in a submission, that competitor is provided with review feedback as soon as possible, and allowed to submit again, with no penalty for the failed submission. Typically, such challenges have a small scope, compared to other challenge types.
* Quality Assurance – Challenges focused on testing and search for bugs in the provided software products.
* UI Prototype – Challenges focused on frontend development. Typically, they are reviewed by scorecards paying more attention to the exact match with provided visual design specifications, and include additional phases for final fixes, compared to the regular code challenges.

### Data science

There are several types of data science challenges at Topcoder; typically, they are longer than software development challenges and focused on data science and algorithms, rather than on end-user software products:
* Marathon Match (MM) – A week-long algorithmic contest, in which submissions are judged objectively by an automated scoring function that feeds a live leaderboard, and multiple submission from the same competitor is encouraged during the match with no penalty. Programming languages allowed in MMs are C++, Java, Python, C#.NET, VB.NET. Topcoder has organized Marathon Matches since 2006, and 100th MM was held in April 2018. There are few similar types of challenges (Banner Match, Mini-Marathon Match), different by length and allowed programming languages.
* Data Science First to Finish – Algorithmic contests scored by an automated scoring function, where the first competitor that reaches the specified score thresholds wins.
* Data Science Sprint – A series of rapid data-science challenges, scored by a manual scoring function, and with no leaderboard.
* Data Visualization – Subjectively-judged competition that asks to analyze data and propose the best way to visualize them, along with trends and/or peculiarities in data that should be highlighted. The output of such challenges serves as input into design competition that outputs the actual visualizations of the data.
* Data Science Ideation – A challenge to discover new data/approaches/ideas for a problem with the help of a community.

### Competitive programming

The Competitive Programming track of Topcoder community rotates around Single Round Matches (SRMs) – timed 1.5-hour competitions in which all participants compete online trying to solve the same set of problems as fast as possible. These were the first type of challenges at Topcoder.

### Specialized sub-communities

The following table includes the list of Topcoder sub-communities dedicated to specific technologies and/or clients (within their Hybrid Crowd offering). See TopCoder § Notable Clients and Projects section for further information on these sub-communities.
| Name | Partners | Type | Focus |
| Blockchain Community | ConsenSys | public | Blockchain technology projects, with focus on Ethereum platform |
| Cognitive Community | IBM | public | Cognitive computing, with a particular focus on IBM Watson services. |
| Veterans Community | Operation Code | Only for US military veterans | Educational and paid software development projects for US military veterans. |

## Topcoder Open

Topcoder Open (TCO) is an annual design, software development, data science and competitive programming championship, organized by Topcoder, and hosted in different venues around the US. Each year, the most successful participants of each competition track included into TCO are selected and invited for a free one-week trip to on-site finals, where they compete for prizes, and also socialize with each other, helping to build community spirit among the most active members. In the first two years, 2001 and 2002, the tournament was titled TopCoder Invitational.
In addition to the main championship, from 2001 to 2007 Topcoder organized an annual TopCoder Collegiate Challenge tournament, for college students only. Also from 2007 to 2010, a TopCoder High School competition was held.
Since 2015, Topcoder Regional events have been held through the year in different countries.

## Notable clients and projects
### ConsenSys

In 2017, Topcoder entered into a partnership with ConsenSys, an incubator of Ethereum projects, to promote the Topcoder Blockchain Community, and provide ConsenSys with design and development support for their blockchain projects.

### Eli Lilly and Company

It was reported in 2008 that Eli Lilly and Co. would use Topcoder platform to crowdsource development of IT applications for its global drug discovery operations.

### Harvard Medical School

In 2013, it was reported that researchers from Harvard Medical School, Harvard Business School, and London Business School successfully used Topcoder Community to solve complex biological problems. Researchers say that Topcoder competitors approached the biology-related big-data challenge, and managed to create a more accurate and 1000 times faster alternative of BLAST algorithm.

### IARPA

Intelligence Advanced Research Projects Activity organization collaborates with Topcoder to create innovative algorithms for intelligence applications. From July 2017 to February 2018 it ran the Functional Map of the World challenge to develop deep learning algorithms capable of scanning and identifying in satellite imagery different classes of objects, such as airports, schools, oil wells, shipyards, or ports . In the ongoing Mercury challenge it aims to create AI methods for automated prediction of critical events, involving military action, non-violent civil unrest, and infectious diseases in Middle East.

### IBM

Since 2016 IBM has been collaborating with Topcoder to promote their cloud platform, IBM Cloud, and IBM Watson services, in particular. Within this partnership, Topcoder has created a dedicated Cognitive sub-community and run numerous educational and customer-oriented challenges.

### NASA

In 2010, NASA asked the Topcoder community to optimize the contents of medical kits for future human space exploration missions.
In 2013, NASA Tournament Lab cooperated with Topcoder to run data-science challenges targeting to improve computer vision algorithms for their Robonaut 2 humanoid robot; in another challenge, Topcoder members were asked to develop algorithms for optimization of ISS solar arrays usage. Also in 2013 Topcoder helped NASA to develop a software solution for tracking food consumption by astronauts.
In another challenge, Topcoder community helped NASA and National Geographic's explorer Albert Lin to develop an algorithm to identify human-built structures in Genghis Khan's homeland.
In 2014, Asteroid Data Hunter, Asteroid Tracker, and many other challenges were carried on to develop better algorithms for asteroids detection in space images.
In 2015, the Topcoder Data Science community was challenged by NASA, Quakefinder, Harvard Crowd Innovation Lab, and Amazon Web Services, to come up with an algorithm that finds correlations between ultra-low frequency electromagnetic signals emanating from the earth, and subsequent moderate and large earthquakes.
In 2017, NASA, HeroX, and Topcoder announced a challenge to optimize their computational-intensive software solution for fluid dynamics, FUN3D, which was cancelled later due to a high number of applicants (more than 1,800) during the registration, coupled with concerns about control over the public distribution of the software to optimize.
In 2018, a data science challenge is running currently to develop better algorithms for tracking of RFID-tagged items within the International Space Station.

### Topcoder Veterans Community

At the end of 2017 Topcoder, together with Operation Code non-profit charity, announced the launch of Topcoder Veterans Community, that will focus on helping US military veterans to make their way into tech careers in software development via education programs and paid crowdsourcing challenges.