Sunday, February 28, 2016

The Importance of the TopCoder Community

TopCoder has achieved a large amount of success directly because of the community it has fostered.  Without the community TopCoder would be non existent.  The community relies on TopCoder's platform to participate in coding competitions, and in turn TopCoder relies on the community to develop software solutions for clients.  If I were a senior manager at TopCoder, the main key to achieving success would be to create and maintain a great community environment.  

Many internet communities are  malicious in nature.  The TopCoder community has developed a culture where constructive criticism is given in a very professional and non hurtful way.  This is very important for management because keeping the community happy is similarly important to the necessity of keeping employees happy at a large organization.  This comes at a large risk.  TopCoder does not have direct and personal access to every single one of their community members, and does not have an instant way to see if their community is happy.  If the community is dissatisfied, they just leave.  This was evident in 2008 when TopCoder reduced prize pools for contest winners.  Many community members decided that it was no longer worth their time to participate in TopCoder contests.  If TopCoder wishes to maintain the level of success that they have become accustom to, they need to manage the satisfaction of their community of users.

The TopCoder community does not exist solely for monetary gains.  The community is a learning environment for coders who are not as skilled as the others in the community.  Inexperienced coders can post questions in the forums and get quality answers from high level coders.  This exists so that a coder can get better and eventually win competitions.  This is part of the important community culture that TopCoder has created.  Management has done a good job of incorporating coders of all skill levels, many of whom are not likely to win an money from contests.  

This community environment is much different than a traditional software development company employee environment.  Crowdsourcing code allows TopCoder access to many different opinions while traditional companies are limited to the knowledge of their employees.  Managing this large community can present problems.  TopCoder relies so heavily on their community that if top level coders started to leave, TopCoder's clients would not receive quality code.  The community is the heart of TopCoder, and managing it is the key capability needed for success.  

3 comments:

  1. I definitely agree the maintaining a constructive and productive community is imperative to the competition-based business model of TopCoder. This model seems extraordinarily more complicated than a traditional IT outsourcing firm because TopCoder not only provides a platform manager, the competition environment and a guarantee that software solution is created, but also follow up maintenance for the client.

    The after-project maintenance aspect of TopCoder's business model specifically stood out to me in the case. TopCoder's dedication to client satisfaction makes this an integral part of each competition. Because some of the software needs to be tweaked or fixed after the completion of the competition, added pressure is placed on management to keep the TopCoder community loyal and active. For example, if a community member developed software for Verizon that was extremely unique and complex, it would be ideal for that same community member to be consulted if anything in the software were to malfunction in the future. Therefore keeping a community of highly skilled and consisted programmers is arguably the most important aspect that TopCoder management should focus on.

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. I agree that keeping the top coder community together is essential for its survival. They seem to be keeping the avid teachers and competitor types happy, but trying to find a new angle might bring in a new types of top coder members. For example, Raytheon holds the hackathon at UofA every year. This contest is a great way for students to show of the skills for whatever reasons they want. More importantly though, it lets Raytheon seek out potential new hires and figure out how to solve their own internal problems.

    I think Top Coder could benefit from acting as an intermediary for finding students and Top Coder members a career. This relationship could bring members into the top coder community, and it would look good for a student to have “Top Coder Teacher” on a resume. By encouraging coding students to participate or even join in events, they can enrich these students’ lives, as well as increase the amount of Top Coder members. Everybody wins in a scenario where Top Coder focuses its energy in the school system.

    I think that the only issue with this method is retention rate. Not every student is going to want to stick around, and they may land a job that is too time consuming to return to Top Coder. However, this would greatly increase the amount of Top Coder members. That being said, the student section of the model is not necessarily meant to keep a high “expert coder” retention rate. Instead, it will expand the community and bring in flesh blood to look over problems.

    As long as Top Coder keeps its strong code of conduct in place for discussions this method could work. They would have to increase the amount of moderators, but this could help expand the community. Giving students a platform to expand their research is great for the colleges, and Top Coder gets to associate with well-known institutions .

    ReplyDelete

Note: Only a member of this blog may post a comment.