从开始编程到现在已经有10年的时间了,10年之间我做过很多的工作,当然都称不上卓越,我虚度光阴,过一天就算一天。在深圳呆了6个年头后,我才发现事情的严重性,作为一名软件开发工程师,我一事无成,我还没有一个身经百战的团队或team,没有一个能拿的出手,又有知名度的软件产品,经常与印度程序员交流,却连国门都没有迈出去过。
于是在今天这个飘雨的周末的黄昏,内力莫名的涌出一阵阵地懊悔,世界不会因为我没有完成代码而停滞不前,地球依然在转动,我讨厌这种感觉,这让我觉得我的存在毫无意义。中国的人太多,程序员太多,如果你想变的卓越出众,那么你就必须相信你所做的事情正在推动整个世界的发展,同时你也必须付出比别人更多的努力。开始回顾和记录我程序的生涯的点点滴滴,拿出来跟各位朋友分享,也希望各位程序员朋友们,不要再我摔过的地方倒下;不要再我迷茫的地方浪费时光;更不要在我们所热爱的这个行业里,也和我一样变的一事无成。
我觉得每个人都有自己的卓越之处,只是在懵懂中没有找到打开心中那扇石门的钥匙,希望我的程序人生,能抛砖引玉帮大家找到那把钥匙。下海做程序员的第一步也是最重要的一部,如何订制自己的程序之路。
很多人在一谈到自己的计划的时候,都会去看看别人是怎么做的,一味的跟随别人的规划,多少岁之前做coder,多少岁之前做manager.其实每个人都有自己的特点,你应该停下来好好的审视自己的职业,不要跟着别人的路去走了,你应该知道自己要何去何从.
我们的职业之路要怎么制定呢?毕竟程序员是一门职业,作为软件的开发人员,我们就是一个从事某一个职业的工人,公司雇佣我们,绝对不是因为公司爱我们。虽然天天公司教导我们“公司我是家”但是深圳的住房公积金,公司的交的那部分,还是转嫁给我们自己承担。事实上,公司以前从没有爱过我吗,将来也绝对不会。公司是你自己的那就另当别论了,否则,程序员就不是一个职业了,职业不就每天要我们去一个地方,呆上8个或者更多的小时,牺牲大量的脑细胞或者汗水,然后领取报酬吗?职业就是生意,把我们做的生意说的惨淡点,就是出卖自己i的劳动力,换钱,再高级的白领也是如此。当然做生意有赚有亏得,想要在这个行业里面成为佼佼者,那就是必须要知道自己应该如何去做这门生意,如何为自己创造利润?
如果把你的职业人生想象成为一个你正在开发的软件产品的生命周期,现在你的所有需求都已经明确(有车,有房,有钱,有公司等等),接下来我们就要开始职业人生的设计了,在制定这个规划的时候,我们要重要的注意以下4个方面的内容,这个四个方面运用到整个人职业的生命周期中。
一、选择市场。 一定要谨慎的挑选你要关注的技术和商业领域。如何权衡风险和收益?
都是做软件开发,你究竟要做与硬件相关的还是与网络相关的?与手机相关的还是与汽车相关的?每一个分支都有专家和权威,你要确认自己想站在哪一个分支的顶点。在深圳很多程序员,为了生存,先入行再转行。程序员需要积累,面试官不喜欢一张白纸上满是编程理念的空头支票。
二、投资。
做生意哪有不投资就赚钱的好事,你的知识和技术就是你这件生意的基础。所以你要在这两个方面合理的投资,时间,金钱。只知道在理论上使用VB或者Java已经远远不够了,那么在新的环境下,新的平台下,又有哪些新的技术你应该具备的呢?
三、执行力。
用我老板的话来说单纯有技术出色的员工,并不能给公司带来利益。员工必须要有产出才行。有的时候一名优秀的员工产出远远不及一名普通的员工,反而有时候会让简单的事情变的一团糟糕,2分钟一个简单的算法,被花上2天时间提高0.001%的效率这种事情也是经常发生的。所以我们应该考虑的是能否创造最有利的价值而不是完美,
四、团队 。
程序员孤军奋战成不了大事。一个再优秀的程序员也完成不了整个windows操作系统的工作,虽然我见过一个人是可以独立完成破解windows的工作的。所以如果不想过于孤单和山寨,请找到一支正规军加入他们。
五、又是市场。
你们肯定会说,你开始写循环了是吧?怎么又是市场?
一个人选对了市场,投资技术,有了回报,有了产出,有了自己的团队,恭喜你,你离出产品的日子不远了。但是你有没有考虑一下你的产品的市场,若是无人知晓,毫无用途,又怎么会有利润呢?你的成绩又怎么会被老板和同行认可呢?请记住:一个团队奋斗了1个月写出来一个:Hello world!是赚不了钱的。
到这一节结尾的时候了,写几句鼓励的话,鼓励一下自己和大家:如果你要做一名优秀的软件工程师,请绝对不要萎靡不振,也不要毫无成果的去寻找工作,因为有很多跟你一样的人,因为努力成功了,所以你也不要担心,请相信自己一定会成功,没事多写写代码,或者来我博客逛逛,这样就不会感到恐惧了。