程序员少走弯路的10条忠告(作为一个程序员多年的历程)
程序员,就是从事程序开发和维护的专业人员。一般说来,IT工作主要分成两块:一块是网络工程师负责,另外一块就是由程序员承担。可能在很多人眼里,我们能编代码、写软件,偶尔网络新闻中出现的黑客多数也是我们的同行,因此,认为我们都顶着“高智商”“人才”的光环。然而,熟悉IT行业的人都了解我们的艰辛与苦恼。
和不少同行一样,我之所以对计算机感兴趣,是因为曾经痴迷电子游戏和早期电脑游戏,进而引发了我对电脑技术的热爱。其实,在我参加高考那年,关于“IT人才饱和”的传言已经出现了,但是怀揣梦想的我仍然一腔热血地填报了计算机专业。
梦开始的地方
大一整个上学期,我的表现还算中规中矩,12年寒窗尤其是高中生涯留给我的一些好习惯还没有消失。我不逃课,每天还坚持去上晚自习。可到了下学期,或许是作息时间太过自由产生了副作用,我开始无所事事起来。买了电脑,懒散的情况更是变本加厉,整天就想泡在游戏里。进大学之前亲口说出的梦想,早已被我忘到了外太空。那时根本不知道以后要干什么,更不懂得去规划自己的未来。
至于后来为什么迷途知返,那是另一个故事,在这里就不细说了。总之,大二开始后,我把更多的注意力集中到学业上来。大一听学长说起“某某学校某某前辈读书时坚持每天写200行代码,后来还没毕业就被微软中国签了”这事的时候,我暗暗鼓劲告诉自己一定要向这位学长学习。可是,每天写代码我断断续续只坚持了一个月。“机会总是留给有准备的人”又一次得到印证,那位前辈的毅力的确值得我们敬佩和学习。同学们,保持一个良好的习惯是很重要的,重要之处不是在习惯本身,而是习惯能够培养你的毅力。
程序员的苦与乐
如果要用一句话来形容进入IT行业这几年的工作情况,我一定会说:“不断地加班,不断地跳槽,不断地学习,然后再不断地加班。”而且,相信这句话也能够代表广大IT男(或称“挨踢男”,是程序员的另一种称呼)的工作状态。
在这里,我想先提醒各位同学,“刚毕业的大学生不适合创业”(具体原因后文会提到)。
刚从大学出来,尽管没有签到有名的软件公司,但我对自己还是有一定信心的。谁知第一次面试,就让我尝到了挫败的滋味。对于程序员的面试,通常面试官会问你接触过哪些语言,对编程有怎样的认识,能否对目前一些主流的软件算法进行编译等,或者会让你展示几个自己编写的程序。当然,应付这些问题比较容易。不过,绝大多数时候面试官还会直接给个编程作业让你完成,借此测试你的实战经验。而我,恰好就在这个环节失败了。
第一次失败激发了我的斗志,接下来的两个月我把C/C 、Java、JavaScript又狠狠熟悉了一番,再次出击,终于签到了一份工作。进公司后,作为新人,我的主要业务只是打杂。谁的电脑崩溃了,谁的系统要重装,哪个新同事要配电脑……都得我去处理,运气好点才会被安排写一点测试代码,干干自己的本职工作。可对于上述的这些业务,大量通信、自动化、数学及其他相关专业的人也能做好。
很快,受不了新人阶段工作琐碎的我选择了辞职。结束第一份工作后,年轻气盛的我打起了创业的主意。通过写ASP程序、数据库的设计,我设计了一个网站。因为没有太多经费,所以就在网上搜了个免费的ASP空间,加上域名就发布了。网站内容我每天都更新,但似乎没起到太大的效果。于是,我开始在百度上找一些个人创业和站长创业的文章来读,学习技巧、经验。接下来的这段时间(近3个月),学到的东西、得到的经验非常多。虽然最后“创业”失败了,但是我吸收了很多新知识,包括简单的经济学、市场经营等。同时,我也清醒地认识到“刚毕业的大学生不适合创业”这句话是不无道理的。因为无论从经济、经验还是精力上来说,刚毕业的学生都还没作好准备。
第二份工作的公司比第一次工作那家规模要大,也要正式得多。第一天上班,发现公司多了许多以前公司没有的制度,比如不能自己下载安装任何软件,不能传输任何数据到公司的电脑上,不能把公司的文件带出办公室等……给我的感觉就是,这确实是正规的公司。
在正规的公司里,提供给员工的锻炼机会自然很多。在这里,我也第一次感觉到一个人的力量实在很弱小(如果有同学认为只要给程序员足够的时间,一个人也能完成所有的事情,请打住这种疯狂的想法)。工作中,很多时候都需要团队协作才能完成任务,而且正规的开发流程也是我以前不了解的。
在这家公司,让我印象最深的经历是公司的封闭开发。第一次参与封闭开发,真有一种悲壮的感觉。30多个程序员被送到一个宾馆里,从早上7点起床、洗漱、吃完早餐后就开始干活,直到晚上11点才回去休息。每两周休息一天。有时候,还在熟睡中的你也会被拉起来去修改代码,哪怕那个时候电脑屏幕上的代码在你眼里已经变成了歪歪扭扭的蝌蚪文。“为什么每次都不能给足时间去做一个东西,非要大家拼命熬夜赶进度?”“为什么需求总是变来变去?”“为什么改了N次的代码又要改回最初的模样?”牢骚、抱怨可以有,但统统没用,该做的还是得继续做。3个月后,封闭开发结束了。有人因为表现优异升了职,也有人不堪“折磨”愤然离开。忙碌、疲惫、轻松、兴奋……所有的体会一下子全都涌了上来,令人无比感慨。不得不承认的是,封闭开发很疯狂,却对技术快速提升大有帮助。在经历了第二次封闭开发(两次开发之间隔了两年左右)后,我当上了项目组长。
让梦想飞得更高
两年后,我又跳槽到另一家公司,直到今天。如今,我已经成为项目经理。每天守在电脑前敲打代码的日子,已一去不复返。一是因为工作性质的变化,现在我主要负责与客户洽谈业务;二是由于时间太忙,每周几乎都有出差任务,天南海北到处去。
频频跳槽,可能在不少人看来是“喜新厌旧”“喝完粥就忘了和尚”的无情表现。对于这一点,我不敢争辩说自己在道义上没有差错。但是,这确实是IT业的行规,毕竟我们也是吃青春饭的。作为一名程序员,如果在30岁之前没有开发出一个非常有代表性的产品,成为一名受到行业认可的“牛人”,就必须考虑转向项目经理或者直接参与公司管理工作。否则,在这个新人辈出的年代,你可能很快会被淹没在年轻人的热情、拼劲之中。当然,如果你追求的是技术上的突破,大可以全心全意地投入进去,IT行业是需要幕后英雄的。
从收入上来说,程序员的工资是很不错的,普通程序员月薪七八千元的情况在很多城市都比较常见。但是,由于工作时间长,经常需要加班,不分昼夜,所以我们又戏称自己为“IT民工”。其实,高薪也好,“民工”也罢,只要我们拥有一个梦想就好,不管它是什么。有梦想,才会去追求。
最后给大家一个福利:对于暂时性的能力不足,想成为优秀程序员一员的小伙伴,C/C 是一个既可以强化思维能力,又可以打好编程基础的编程语言,你想要做软件开发,成为核心程序员的话,学习C/C 是比较好的选择,笔者有一个C/C 的编程千人湫羣(Q艘索:C语言编程学习聚集地(无言建立))你如果感觉自学C/C 语言有困难的话,有兴趣学习或者了解一下C/C 编程的伙伴就可以进来交流。下面给大家分享一下C/C 的学习路线图:
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com