2006年夏天,一个朋友告诉我,我可以在一个叫做Rent A Coder(现在叫做vWorker)的网站做编程,挣些外快。我当天就注册了。由于在一个项目上耽误的时间,没有来得及做,我就对“编程挣钱”的想法失去了兴趣。我几乎忘记了这个事儿。
很快两年后,我在北美洲的一个大学攻读博士学位,身上只有一种学生的visa卡,口袋里空空。很多月里,我都是靠学校的奖学金维持生活,直到有2个月,他们忘记了给我打款。哦,一个半月只吃大米的日子真是享受… 很糟糕,也很刺激。
这段“黑暗”的日子让我意识到,我应该干点什么来防止这种日子再次发生。我一直很喜欢编程;我的博士攻读的是计算流体动力学(Computational Fluid Dynamics)的编码方法。我的不足?我只会Fortran这种一种语言,对C语言只有初级水平。当然,我非常擅长写小的Bash和awk脚本,能用来处理我的数据文件,我知道的也就这些了。
我重新激活了Rent A Coder上的帐号,开始寻找一些小的项目。我的第一个“项目”是一个区区5美元的C程序,为了这5美元,我给这个挑剔的客户干了1个星期(对于新手,这是个好事,一个挑剔的客户会督促你实现更强健的程序,提高你的水平)。一周后,我提交了代码(用来统计任务的,通常的输入数据的文件会有10-100MB),还要完成“C语言(第二版)”这本书里的所有习题:-)。
我以一个只知道写简单的“Hello World”的初学者开始了我的这个C语言项目,到了一周的结尾,我已经学会了使用C语言,能用它来处理大型数据流。当然,我的C程序都是以Fortan为样板,依葫芦画瓢出来的,在我的博士项目里也是这么干的。我对Fortan非常的熟悉,1999年我就参加了Fortran学习的课程。
从这第一个C语言项目后,客户开始每周都给我一个C语言任务,我要的报酬越来越多,因为任务开始变的复杂(使用Liunx上的系统程序包做并行程序编程)。此时,我也开始研究C++了。
我学东西很快,这是我跟其他竞争者比较时最大的优势,因为我的数学很好,运用这些知识我可以在几天内学会一门新的语言。我非常积极的寻找新的项目,第一年我干的非常努力和辛苦。
头一年末尾,在Rent A Coder上,我已经能从一个新项目上挣到100美元了。我从来不拒绝新客户:要做一个Flash和ActionScript的交互式凸显程序?没问题,我几天就能学会…Processing?这是什么?哦,OpenGL方面的,没问题,我可以做。Python,Ruby,JavaScript,C#,Matlab。那是一段很刺激的时期。
另一方面,作为一个新手,你需要跟那些具有各种经济水平的程序员竞争,这会使价格拉的很低,一个人不可能靠做这些项目为生。竞争在初级水平层面上尤为残酷,特别是挑剔的客户只愿意出10美元,还要不停的往项目里加新的需求。
做自由职业的第二年,我不再任何项目都接了,我开始挑选客户,接每个项目愿意出至少要500美元的客户。这样的交易不错,一个月4到5个项目,在加拿大,我的收入也算中等水平了。后来我也开始挑选项目了。很烂的项目不再接受。这感觉很好!
2年多来,我已经从每个项目5美元,到了一年3到4万美元了,我对编程的知识突飞猛进,我还参加了数据结构的课程。我在那个网站上已经跻身前500名了(总共有20万会员)。这来之不易,有时候我需要每天工作8到12小时来完成一个项目,或学习一种框架。
现在,我有了一些私人客户,可以直接给他们干活,我有充裕的时间来做自己的一些事情,例如开一个编程博客,写一个Scheme语言的解释器,或写苹果应用商店里的程序。我偶尔的还到那个网站上干活(现在叫做vWorker里),只做一些有兴趣的项目(通常是并行程序编程和图形计算)。我不需要再四处找项目,现在我可以竞标参与我感兴趣的项目。一旦你能跻身前100名,你基本上就能自己定价,只干自己想干的项目了。
但这最重要的你要知道的是,做自由职业只是你事业的第一步,你的最终目标应该是挣一些具有主动性的钱,例如开发苹果应用商店程序或直接面对你的客户,而不是一辈子干的活都是去实现别人的梦。
http://www.aqee.net/my-life-as-a-freelancer/
分类目录
- arch/management (17)
- computer (38)
- java/j2ee (304)
- lnmpa (237)
- mac/iphone/ipad/android (11)
- mysql/oracle/postgresql (126)
- os/software (74)
- other (518)
- python (6)
- redis/memcached/mongo (31)
- sitebuild (143)
随便看看
标签云
程序员 创业 人生箴言 eclipse 快捷键 术语 索引 unix命令 vim wordpress java学习笔记 环境变量 oracle内置函数 index 人生 数据类型 nohup tuxedo mysql学习笔记 MS-DOS命令 servlet spring 职场进阶 职业进阶 服务器选购 服务器选型 apache JPA MongoDB 注解 tomcat 子女教育 jquery maven JVM aix命令 网络营销 java异常 seo 人生规划 关键字 css 网络推广 struts 系统优化 成长 frame iframe bluehost jdbc select 我的信仰 oracle函数 cookie HashMap 站长工具 乱码 ArrayList secureCRT jsp session tail find halt 事务 oracle单记录函数 算法 URL window table javascript操作表单元素 String 字符串处理 健康 http 域名 情感 more google A记录 域名解析 netstat 弹出对话框 弹出窗口 框架集 框架 excel 字符串 javascript函数 showModalDialog nginx number 数组 sql frameset 开源程序 java数组 软件 oracle服务友情链接
收藏链接