[转载]TopCoder兼职赚钱入门(Part. 1)

  最近找我问TC的朋友越来越多,于是就想写一个入门教程放在这里。对我来说,TC目前是总收入的一个重要组成部分,虽然不如工资多,但是性价比极高。由于我基本只干Design/Development,因此本文只介绍这两种,对于有志于Architecture/Assembly乃至Studio的,我给予精神上支持。另外,我在软件工程方面的知识体系极其山寨,这篇文章应该会有不少错误,请海涵。最后,转载请注明。
一,准备
  虽然说TC的门槛并不高,但是还是有一些基础要求的,基本可以概括为:
  基础条件:
1. 语言:Java/C#其中的一种;
2. 英语水平:这个我比较没有具体化感受,至少我本人没有碰到过交流障碍,可以算四级以上吧;
  以下条件则不那么重要,如果有则事半功倍,毕竟有些学起来也是很快的:
1. 常用framework:对于Java来说就是Hibernate/Struts/Spring等,对于.net来说就是WCF等;
2. 企业级应用开发经验:TC的开发模式是借鉴了Agile Programming的,如果对这个有所了解应该能更快入门,当然,我不了解;
3. UML相关知识:这个应该是必须,但是考虑到学得很快,就放这里了;
4. 忽悠能力:这点在appeal时尤其重要,后面另说。
5. 网络情况:出国速度越快越好!(抢review很重要!)
二,TC的开发流程
  TopCoder作为一个老牌的软件外包(Outsourcing,参考 http://en.wikipedia.org/wiki/Outsourcing)公司,在六年多的发展中自己完善了一套开发模式,从一开始只有Design/Development作为比赛开放给member,到现在的一条龙服务,按照开发时间顺序排列如下,括号里是我自己的土鳖翻译:
  Conceptualization(概念化): competitor直接与客户公司代表沟通,确定需求,将需求形成文字;
  Specification(规格化): 根据conceptualization的结果,进一步完善成需求文档(一般称为ARS,  Application Requirement Specification);
  Architecture(架构): 根据ARS确定整个系统的架构,并将整个系统打散成多个component,给出每个component的逻辑功能以及对外接口;
  Design(设计): Design的基本单位是component,这一点与上面都不同;Designer需要根据Arch给出的需求文档(RS,Requirement Specification)确定模块的内部逻辑,给出UML图及模块说明文档(CS,Component Specification);
  Development(开发): Dev的单位同样是component,Developer根据Designer给出的UML图和文档进行实际的代码开发,并且需要自己给出Unit test suite;
  Assembly(装配): 将完成的组件按照archi的要求装配到一起,成为一个(或者一组)可部署的程序;
  Test(测试): 测试,不多说了。
  关于Design和Development的细节在后面详述。
(未完待续)

转载于:https://www.cnblogs.com/YYi_H/archive/2011/03/10/1979928.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值