篇一:软件工程师的年终总结
总想着每天、每个月、乃至每年都有点进步。2021年,对我来说,是起伏不定的一年,也是收获颇丰的一年。当然,最大的收获是有了一个可爱的女儿。
在这一年,我跳了两次槽,一次是自愿的,还有一次是被迫的。我目睹了一些公司从盛到衰的过程,也看到了一些脚踏实地的公司。
离开X1公司,是因为我觉得X1公司不是在做软件,所谓的印度模式,我想,绝对不是这么做的。理想不合,不想浪费时间,也只能背负跳槽的恶名,挂冠而去。去X2公司,是因为看到他是美国独资公司,做外包软件,能够接触美国的客户和技术,希望能够有所收获,何况,职位也不错。的确很想好好做,也跳累了,只想稳定发展,毕竟,是做父亲的人了。没有想到的是,竟然让我目睹了一场资产争夺的好戏。公司易主,流言满天,诽谤四起,官司大战,这种平常只有在电视和电影里看到的情节,我实实在在的亲身经历了,也算是人生的重要一课吧,至少,让我看到了人性最阴暗和恶毒的一面。自然,是做不下去了,只能又走。
也看到了一些踏踏实实做事情的公司。园区的瑞博软件就是一个。很少看到如此踏实做事的公
司。若干年后,只要他能够存活,必定是一个成功的公司。虽然老板对我也很有诚意,只是,对于教育软件,我实在没有太大的兴趣,何况,如果想做教育,我何不选择安博呢?毕竟,安博给于我很多。回头想想,在其他公司,我都是在奉献,只有在安博,是学习了很多。
说起跳槽,其实,看看那些公司,有多少是在踏踏实实做事情的?老板本不懂软件,都是看着软件行业能赚钱,想来捞一票,结果把中国的软件行业做坏了,也害苦了中国的程序员。自己不好好做事,怎么怪别人跳槽?同工作经历的坎坷相比,,在个人能力方面,今年的进步是非常大的。今年上半年,我的进步集中在技术领域。我更加深入研究了设计模式、EJB体系和.Net平台,还有UML建模,终于有所突破,设计了一套自己的基于.Net平台的系统架构和开发工具,并且得到了应用的证实。在网上也陆续发表了一些文章,受到比较好的欢迎,还上了赛迪网的开发之星。
下半年,在软件工程方面收获是很多的。
看到网上对于印度模式从吹捧到批驳的吵闹,也看到X1公司学习印度的失败,加上自己从开始就对那些记者的怀疑,决定好好学习软件工程。我一向认为,任何东西,不能道听途说,
只有自己好好深入研究,才能得其精髓。同时,软件工程绝对不能只看印度的,毕竟,美国才是软件业最发达的国度。
列举一些学习的参考资料:《RUP软件工程过程》、《MSF微软解决方案》、《XP极限编程》、《CMM实践应用——Infosys公司的软件项目执行过程》、《人月神话》、《软件需求》、《软件工程Java语言实现》。每本书,我都仔细研读了,颇有体会。
我开始就想,印度软件工程绝对不会象那些记者所说的那么简单,所谓的高中生编程说。所以,我必须实际看看印度的软件工程。《CMM实践应用——Infosys公司的软件项目执行过程》,是印度最大的软件公司Infosys公司的分管质量的副总裁写的,介绍他们的CMM4的软件工程,果然不同凡响。这是我了解印度软件工程的主要窗口。
首先,同原来的想法不同的,也可能同大多数人(尤其是受那些软件记者影响很深的“专业”和非专业人士)想法不同的是,软件工程实际上不仅仅只是管理,而是一门涉及很广的交叉学科。在软件工程中,大约一半的内容是专业性很强的,涉及到软件分析、设计甚至编码的技术。所谓的结构化、面向对象,都在软件工程的范畴内,同样是软件开发和组织的重要内容,也是软件质量保证的重要内容。至于软件开发的管理部分,只能算是软件工程中软件工
程过程的部分,或者说项目管理部分。脱离管理来开发软件是绝对不可行的,同样,抛弃技术基础,空谈管理出效益,便如无源之水、无本之木。诚如《软件工程Java语言实现》中所说:“软件工程范围极为广泛。软件工程的某些方面属于数学或计算机科学,其他方面可归入经济学、管理学或心理学中。”在这里,我强调了软件工程中的技术部分,并非轻视管理,只想在软件工程的概念上做一些拨乱反正,也希望多一些人来关心软件的核心技术,而不要空喊口号和概念。毕竟,中国的软件太缺乏核心技术了。
其次,对管理要求的严格不说(这个谁都知道),实际上,不管是美国的软件工程,还是印度的软件工程,都是比较灵活的。即便是印度这样的所谓“软件工厂”模式,对于软件工程过程管理极为严格,也有一个部分是专门讲述过程剪裁的。整个软件工程过程是非常庞大和繁复的,然而,由于项目具体情况不同,如项目的规模,参与人员的数量、素质等的不同,对于软件过程的每个部分,不是都必须的,可以根据具体情况来进行剪裁。这个部分对于我的启发是很大的。以前做什么ISO9000等,开始做了一个以为很好的规范,但是,到具体项目,总是对不起来,到处有问题,现在想想,便是少了这个变通的部分。不过,话说回来,这CMM也是老美想出来的,而不是印度。
第三,对于开发人员的选用,我发现,美国人是非常注重选用优秀的开发人员的。Martin Fowler曾经开玩笑的说,如果给他一批水平不高的开发项目,他会考虑全部解雇,重新招聘。《人月神话》中也说,如果200人开发一个项目,其中25个人最能干,那么会考虑解雇其余的175个人,让项目经理来编程(当然,后面还有一些抉择分析,这里断章取义了)。其结论的基础是基于以下研究结果:优秀的开发人员和差的开发人员,其效率之差可以达到数量级。另外,从管理的角度来说,只有人多了,才会有管理问题,当团队规模控制在一定的范围内时,便不会有太大的管理问题。
对于软件来说,很难实现同传统产业一样的工厂化生产,这是由软件开发的本质决定的。软件的复杂性是软件的本质属性,在这个属性没有改变之前,软件便不会实现同传统产业一样的工厂化生产。至于印度的所谓“软件工厂”,实际上,只是完成了软件代码的编写工作,并不是实现了整个软件研发工作,而代码编写工作,恰恰是软件开发中最简单的一环。至于印度是否真的有很多高中生程序员,印度人的书上没有说,记者到说了不少,我也无从考证。所以,软件的开发,还是需要选用优秀的人的。除非,公司只想帮别人编写代码,而不希望有自己的产品和技术。
第四,软件开发中,最重要的还是团队合作和交流。这个是我目前最深切的感受。具体的,大家都知道,也用不着多说。
最后,对于软件开发来说,公司老板的想法是最重要的。如果老板说“No”,那便是水平再高,管理再好,也终归无用。年龄渐长,也做父亲了,却总是在漂泊,没有一个可以稳定发展的地方。希望目前的公司能够有这个机会。不想总是跳槽。
篇二:软件工程师年终个人总结
从八月份入职至今,已五个多月过去了,回顾自己这段时间在公司所走过的路,所经历的事情,没有太多的感慨,没有太多的惊喜,却多了一份镇定,多了一份从容。
回想入职初,在八月份,从开始第一周熟悉工作环境,第二周便参与煤矿安全生产管理系统的相关文档设计工作,期间在项目组各位同事的指导、安排下,进行了系统的软件开发委托合同书及系统功能模块设计说明文档的编写,也借此过程学习煤矿生产业务。
在九月份,便正式参与了管理软件功能模块的设计工作,在张工的指导、讲解下初次尝试完成了管理软件的维护子系统的功能模块设计;在九月中旬跟随公司施工人员在一号矿进行业
务调研,从而在我们自己的管理系统中,取其长、补其短,也借此机会了解实际的煤矿生产情况,加深对煤矿产业业务流程的理解;在九月底便根据张工的指导开始工程技术文档子系统的功能模块设计。
十月份,在张工张工的指导下,进行了物资管理子系统的功能模块设计,并就设计的正确性、合理性分别同张工张工及何工进行讨论;到十月中旬管理软件的各子系统功能模块基本全部设计完成;十月底,根据各子系统模块设计搜集系统数据,建立初步的数据字典及概念模型,为后期数据库设计做准备。
十一月份的工作以整理系统业务关系与业务流为主,但由于业务关系图的表现形式不够合理,不足以清晰、明了得表现出各层次关系,导致工作多走了几个环节,好在张工张工及时发现问题,并多次向我指导、讲解,最终决定以列表结合流程图形式搜集、汇总系统所有子模块的业务动作、涉及人员及联系模块,为后面工作的展开提供依据。开发一个平台需要多少钱
十二月围绕两个工作展开,一是系统业务描述文档的设计编写,因为该文档是日后编程人员了解煤矿生产业务、系统功能及数据库设计的主要依据,张工张工也多次强调,文档的设计务必从读者角度考虑问题,因此最终设计由简单到复杂,由整体到具体,各层次尽量做到衔
接紧密,易于理解;另一项工作是针对已完成的关系列表、系统功能模块设计的业务合理性、正确性和张工张工逐条讨论,并将设计中出现的问题逐条记录在问题跟踪文档中。月底的工作便是根据问题跟踪文档对模块设计进行修改、完善。
在公司领导的带领下,通过项目组所有成员的不懈努力,在十月份系统所有功能模块设计完成,在十一月份系统所有业务流程整理完成,在十二月份,对各功能模块设计及业务流的初次审查、整改工作已经完成,现在已开始进行项目组内对各功能模块设计及业务流的审查工作。
在入职初期,因为之前很少接触生产类软件,一时不知从何入手,好在项目组成员多次向我讲解,加上自己也通过网络查相关文档,认真阅读相关材料、思考业务处理过程,最终在一个月内便对煤矿整个生产管理业务有了较为系统的认识。之后在张工张工的指导下,完成了管理软件初始化子系统、工程技术文档管理子系统、物资管理子系统的详细功能模块设计和业务处理设计,以及整个系统的业务整理工作。因为张工张工多次强调前期的业务及功能模块的设计直接关系到整个项目最终的成败,一定要做到设计正确、准确、完整,因此在每个子模块的设计中,先把握总体方向,确保设计正确,再搜集大量业务材料、对比其它类似
软件处理方式、结合煤矿实际生产情况、思考业务处理流程确保设计准确,最后再将设计放到整个业务系统中,反复检验、审查,确保设计完整。回顾这一段时间的工作,我基本完成了本职工作,这与领导的支持和各位同事的配合、帮助是分不开的,但同时我也清楚得认识到自己还有很多不足,也从中获得不少经验、教训,总结为以下几点:
1.做事前准备、计划是很有必要的。
这一点在入职第一周业务学习及近期搭建各模块业务关系工作中就体会特别深,正是磨刀不误砍柴工,做好准备、计划对之后的工作能起到事半功倍的效果。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论