(本文参加CSDN举办的畅想“个人IT成长路”活动,谢谢!)安全
光阴似箭,日月如梭,转眼之间,我毕业工做都将近两年了。回首往事,我最大的感触就是:时间都去哪儿了呢?微信
最近,我看到CSDN举办了一个叫作畅想“个人IT成长路”的活动,以为挺有意思的。做为广大的软件开发工程师中的一员,我和大部分人走过的路都是同样的。咱们从学校里面毕业,来到单位上,在经历过无数的挫折以后,从一个懵懂的学生艰难地转变为了职场中人。咱们有过懊恼,有过气愤,有过抱怨,有过喜悦,在不知不觉中,咱们慢慢地成长起来了。网络
同时,我也读了《逆袭大学:传给IT学子的正能量》这本电子书,里面的内容都是中国当今大学教育的真实写照,读来让人深思。做为一名通讯和计算机专业毕业的学生,咱们所面临的问题都是同样的:课程多、难度大,学生多,工做很差找,工做累,等等。面对各类问题,不论是学校仍是工做上的,咱们都只有一个办法,那就是独立地去面对。微信开发
多的不说了,仍是来讲一下本身的状况吧。我本科毕业于一所普通的“211”大学,专业为通讯工程;研究生毕业于国内某很有名气的邮电类高校,专业为计算机应用技术。研究生毕业以后,我就到了国内一家知名的通信公司工做,从事多媒体业务的开发工做。工做至今,已经差很少两年了。在这两年时间里,我参加了多个产品版本的开发工做,也被评为了“优秀员工”,同时得到过部门的一些奖励。工具
本文分为两个部分,第一部分对这两年的开发工做作一个总结,第二部分对将来的成长之路作一个展望。单元测试
第一部分 两年开发工做总结测试
我走出学校的时候和不少人同样,很是的“轻狂”,认为本身在学校里面已经学得够多了,要完成一个软件的开发,简直就是小菜一碟。但在工做中多次碰壁以后,我才发现本身当时的想法是多么的天真。咱们踏上工做岗位,一切几乎都要从零开始。不少在学校里面学到的东西,不只没有实际的用途,有的甚至还有误导的做用。编码
我从如下三个方面来进行总结。spa
第一方面 软件研发流程及注意事项.net
学校里面只传授具体的专业知识,没有对实际的软件研发流程进行说明,这不能不说是一大缺陷。本人所在的公司很注重研发流程的规范性,以确保产品的质量。
一个典型的软件研发流程如图1所示。
图1 一个典型的软件研发流程
在软件开发的过程当中,咱们须要注意如下事项:
(1) 必定要遵循编码规范。从学生转变为职场人,最为重要的就是要学会遵照规范。对于软件开发来讲,学校里面没有强调编码的规范性,只要一个程序可以运行起来就OK了,这在实际的软件开发项目中是绝对不行的。不光是新员工,不少老员工都不注重代码的编写规范,这不能不说又是中国计算机教育的一大失误。
(2) 必定要对代码进行充分的自测后再提交。我刚参加工做的时候,觉得把代码编写完就了事了,但这个观念是极其错误的。软件开发人员对软件质量负有很重大的责任,咱们必定要确保拿出去的代码中的问题尽可能少。代码可以运行,并不表明它就没有问题,有关逻辑错误等只能经过充分的测试才可以发现。
(3) 要编写好研发相关的文档。在软件开发阶段,咱们须要编写的文档包括:详细设计说明文档、单元测试规程/报告文档、集成测试规程/报告文档,及相关的协议和说明文档等。不少开发人员认为本身只须要将代码写好就好了,文档什么的就不用关心了,这是很很差的想法。好的文档有利于程序版本的维护,对于版本升级、查错等都是颇有帮助的。
(4) 要有良好的版本管理习惯。所谓的版本,是指产品相关的代码、文档和数据等。在家里的时候,不少人喜欢将东西乱放,正到了须要用的时候却找不到。对于程序版本,不少开发人员也是随便一放就了事。在版本较少的时候,这可能还不是问题。但一旦版本数量增多,要找到某个时间较长的版本就是一件比较麻烦的事情。所以,为了节省时间,提升工做的效率,咱们必定要养成好的存放版本的习惯,要规划好本身的计算机硬盘。
第二方面 沟通交流及人际关系处理
软件开发工程师因为专一于作技术,所以大部分确实在人际沟通技能方便略显不足。但在单位上,咱们不是孤身一人在工做,有不少事情都要与人沟通、都须要向他人请教,要具有团队意识。
我总结了一下,除了面对面沟通以外,咱们能够利用一些通信工具进行沟通,这些工具包括:邮箱、手机/电话和某些即时通信工具(像QQ、微信等)。面对面沟通的效果最好,能够将全部的问题说清楚。沟通方式的优先级如图2所示。
图2 沟通方式的优先级
有些开发人员就喜欢发邮件,一个问题讨论了大半天都没有结果。这个时候,若是采用面对面沟通的方式,也许几分钟就可以将问题解决掉。
此外,为了信息安全,不少大的软件公司禁止员工使用QQ软件来交流。那么,就只能使用公司内部的即时通信工具来进行沟通了。
对于搞技术的人来讲,人与人之间的关系就相对比较简单,你们坦诚相待,有什么技术方面的问题也是直接说出来。但要注意的是,涉及到版本、需求、评审和现场问题等,咱们必定要让本身的上司(也就是项目经理)知道你正在作的事情,若是出现大的问题,他才好给你支招,千万不要一我的硬着头皮去顶。
第三方面 身体锻炼
我将身体锻炼拿出来单独说,是由于这比较的重要。“身体是革命的本钱”,对于软件开发人员来讲,尤为如此。
咱们长时间地坐在电脑旁边,身体素质也逐渐地变差了。不少同事腰椎、颈椎都出现了问题。这就是锻炼太少的缘由。所以,咱们必定要改变本身的生活习惯,多出去走动,适当地参加一些体育锻炼。
第二部分 将来展望
对于软件开发人员来讲,将来的发展道路有两条:一条是继续在本行业中奋斗,另外一条就是转行。对于我来讲,我会选择第一条。
在这个知识大爆炸的时代,咱们须要的任何知识均可以很快地从网络上获取到,但惟独经验这个东西是须要时间来积累的。对于软件开发来讲,不少人认为多少岁以后就干不下去了,必需要另谋出路。
确实,若是单就编写程序来讲,年龄大的人是没有优点,由于年轻人毕竟动得要快些。但你们忽略了一点,那就是软件开发也是须要经验的。有不少软件问题,新手看了好久都不必定可以知道,而对于老手来讲,也许看一眼就明白问题出在哪里了。因此,我认为,在21世纪,知识不是最重要的,经验比知识更为重要。
个人想法是在若干年以后,我会去当一名传道授业解惑的IT老师,将本身的软件开发经验传递给本身的后辈,让你们在软件开发这条道路上走得更顺畅一点。目前,我已经在作这方面的准备,我会陆续在CSDN博客上发表一系列叫作《让你提早认识软件开发---学长的软件开发经验总结》的文章(http://blog.csdn.net/zhouzhaoxiong1227/article/details/20395131),将本身的软件开发经验总结出来,让更多的人受益,欢迎你们批评指正。
“路漫漫其修远兮,吾将上下而求索”,互联网的精神就是开放,就是分享。经过互联网,咱们能够认识更多的人,咱们能够从他人身上学到不少东西。那就让咱们一块儿努力,一块儿体验软件开发这项工做的酸甜苦辣,向着更美好的将来狂奔而去!
谢谢!