1 / 13

Topcoder 简单介绍

Topcoder 简单介绍. topcoder 是 一家专门组织计算机程序设计竞赛的 公司。 TopCoder 在线举行算法竞赛( SRMs )、组件设计竞赛和组件开发竞赛 。算法 竞赛在世界上 与 ACM 、 Google code jam 并 称为三大赛 。. TopCoder 本质是什么 呢?

Download Presentation

Topcoder 简单介绍

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Topcoder简单介绍 topcoder是一家专门组织计算机程序设计竞赛的公司。TopCoder 在线举行算法竞赛(SRMs)、组件设计竞赛和组件开发竞赛。算法竞赛在世界上与ACM、Googlecode jam并称为三大赛。

  2. TopCoder本质是什么呢? 我认为,它是一个采用新颖模式的软件开发企业,他并不完全采用固定员工,主要是通过互联网,利用世界各地的注册用户参与开发。其核心,在于将原本通过企业形式组织起来的软件开发工作转向了市场形式。改变通过网络和软件工程规范,形成了以单一模块开发为服务商品的市场,全   球的Coder均可以在该市场上提供商品和服务(设计方案、模块代码、模块评测)。而TopCoder成为该商品的采购商。契约形式的采用取决于不同契约间交易费用的比较。  

  3. Topcoder的竞赛类型 Algorithmscompetitions(算法竞赛) 这类的比赛类型比较多,最常见的就是最常见的是周赛SRM(Single Round Match)另外还有TCHS SRM(TopCoder High school SRM,题目和SRM一样,仅限中学生参加,参赛者水平较低),马拉松(Marathon Matchs),还有TCOpen(每年两次的大比赛)之类的比赛。

  4. 参赛者须在大概75分钟的时间内完成三道不同难度的题目,每道题完成的时间决定该题在编程部份所得的分数。而比赛可分为三部份:参赛者须在大概75分钟的时间内完成三道不同难度的题目,每道题完成的时间决定该题在编程部份所得的分数。而比赛可分为三部份: ●Coding Phase:参赛者用C++、Java、C#或者VB解决 三道问问题(分值分别为:250、500、1000)。每道题的分值计算规则:随着时间的流逝,题目的分值也会越来越少,不过分数的减少速率也会逐渐变慢。这意味着,答题速度越快得到的分数也就越多。

  5. ●Challenge Phase: 这部份是让参赛者浏览分配在同一房间的其他参赛者的源代码,然后设法找出其中错误,并提出一个测试。如果参赛者的程序不能通过别人和系统的测试,这参赛者在此题得分为0。 ●System Phase 在系统测试阶段,系统会自动对每个提交方案代码进行测试,确定其正确程度和可行性,并以此给出参赛者相应的分数。整个评测过程耗时很短,参赛者当场可以知道自己的比赛结果。

  6. Topcoder 成功原因 前面介绍的只是竞赛针对Topcoder公司举办的竞赛部分,而Topcoder的实际意义远不只于此。 1.对于热衷挑战的人而言,Topcoder是为Coder而生的一个用于挑战的自我的网站。Topcoder除了举办两年一次的multiple-match锦标赛以外,它还举办常规比赛,这种比赛让参赛者尽可能快的解决复杂性不同的算法问题。在常规赛 和锦标赛中的获胜者都将获得现金奖。参赛者获得既获得金钱,也获得荣誉。

  7. 2.对于寻求兼职的人,TopCoder是个获取软件开发兼职的网站。以编程工作为 例,他的流程如下:提供工作列表->用户接工作->一周后提交->评分。在评分中得第一名者,获500美金(组件类一般为800美金);第二名获250美金(组件类一般为400美金,其他名次不获得奖金,但是某些组件会因为难度或者紧急性而把这个金额提高,同样,也有某些组件会因为难度较低而下调奖金。工作类型包括:系统 设计、代码编写、模块测试等。通过一段时间的熟悉,大学在校生、业余开发人员 均可以在网站上接下兼职获取奖金)。

  8. 3.对于TopCoder的客户企业,它是个优秀的软件开发商或编码工作外包商,由 于其规范化流程及各模块编程的冗余机制(同一模块有多人同时开发,择优采用),TopCoder能够按时按质的为客户提供软件开发服务。 4.对于各软件企业,TopCoder是个优秀的人力资源公司,它汇集了世界上众多高手,通过这个平台,软件企业可以获取到优秀Coder的信息,并从中招聘员工。Google、Microsoft等公司都曾经在TopCoder上寻求优秀设计人员加盟。

  9. Topcoder的收益? 在常规的软件行业中,由于交易费用过高,软件企业所需的商品和服务(设计方案、模块代码、模块评测)市场难以存在,原因包括:协调工作的困难、质量监控、与模块代码提供商的联系 等等。由于产品难以通过市场契约形式获得,因此,软件企业采取的是企业契约形 式,招聘人员进入企业,以员工的形式为企业提供所需的商品和服务。而TopCoder利用网络及软件工程理论的成熟,将企业内部由员工完成的各项软 件开发工作外部化,降低采用市场形式的交易费用,使得市场购买成为优于企业内部化的选择。

  10. 首先,TopCoder利用其在软件工程方面的经验与技术,将服务与商品的标准化,使得沟通成本大大降低。TopCoder的软件开发流程,包括系统设计、代码编写、模块测试等各环节,在每个环节之间,TopCoder都设计了标准化的文档,上下游环 节之间所需的所有沟通内容都通过文档展现。通过这种形式的标准化,每个环节的 工作人员均可以在完全不和上下游工作人员沟通的情况下进行工作,最终工作人员交给TopCoder的最终产品,也完全以标准文档形式给出。由于标准化,商品具有了独立性,使得TopCoder的注册用户为其提供商品成为可能。

  11. 其次,由于商品标准化,对各商品的质量评估指标也因此可以标准化(模块运 行速度、稳定性等),因此,有了商品的质量评价指标,则商品的定价和择优采购成为了可能。TopCoder将评估指标最后转化为一个总分,总分第一的定价1000美元购买,总分第二的定价500美元购买。由于指标清晰,商品提供者也能够逐渐改进 自身提供的商品质量。相较于企业形式的生产,由于每项工作只有一个人完成,质   量得不到比较,无法选择最优。而且,软件开发工作作为一种知识型的工作,难以 为员工的工作表现作精确定价,监督成本也相当高,而市场形式则避免了上述交易费用。

  12. 另外,TopCoder与注册用户间的心理契约,与企业与员工的心理契约有很大区别。作为TopCoder的注册用户,其期望获得的并不仅仅是金钱,作为其目标对象的大学在校生、业余工作者,他们还期望获得荣誉、工作经验、能力提升,甚至于前面叙及的,进入知名IT公司的机会。因此,即使只有前两名可以获得奖金,仍有许多用户参与承接工作。由于这些附加价值的提,TopCoder在商品采购价格方面,实际上低于其现金价值。 综上所述,TopCoder利用网络技术的发展,改变了常规的生产方式。

  13. 谢谢!

More Related