两年程序员生涯总结

来源:互联网 发布:用c语言实现socket 编辑:程序博客网 时间:2024/04/28 17:32

埋头工作了2年时间,从事我比较熟悉的计算机软件行业,这个让我如此亲切的事业(我很热爱软件,因此我想称它为事业,尽管是给别人打工)第一次让我感觉很陌生,也许是因为我太莫不关心自己了,没有好好问下自己,我这2年都做了什么事,这就是我想要做的事情吗?我的未来呢?记得初中的时候,老师告诉我,学习最重要的环节是最后的总结,如果没有认真回顾前面所学的所有知识,梳理,是不能把知识融会贯通的。突然,我在想回忆总结下2年来的程序员生涯,我倒底学了些什么东西。

记得刚进公司的第一天,带我的程序员就让我做下简单的数据列表的显示,一周内做完,那个时候用ASP.NET还不是很熟,很久没做过了,花了点时间硬是挤出来了,主管看过就说可以,转试用,刚入司的这段时间里,比较严格要求自己,生怕哪个地方出错,不能转正,老老实实的学习着,在第二周,主管就丢给一个Delphi的程序给我,说要我熟悉下,这对我来说确实挺挑战的,Delphi从来没接触过,看起代码更是晕,没办法,每天看电子书,快快的把语法熟悉下,就看源码了,现在想想,看的源码会影响一个程序员的程序风格,在初学程序的时候,需要认真对待,区分好的风格的代码和凌乱的代码,尽量学习好的方式,不同的程序员的代码风格有非常大的区别,从代码中可以看出程序员的思考风格,好的思维方式成就优秀的程序。就这样,忙忙碌碌地过了三个月的使用期,其实,这三个月我没真真做到什么项目,对所有的东西来说,只是一个熟悉,一个开头而已,这个时候,主管和两个主程序员要离职了,这意味着我需要交接一部分的程序了,公司老程序员使用的大部分都是Delphi程序,对刚刚了解这么陌生语言的新手来说真得太棘手了,好在原来的程序运行得算稳定,没有太大的改动,这段时间内,我就慢慢的熟悉,慢慢的学习,维护的程序经常有业务上的改动,难度不是很大,但是太过于频繁,一开始觉得修改一些功能挺有成就感,但是,机械的修改,无聊的需求,渐渐让我觉得乏味,没技术含量,接下来的5个月时间我都是在学习Delphi程序和一些.net的配置工具开发,在学习.net网页开发的过程中,又是百度,又是查看MSDN的,晃晃悠悠的学习了挺多技巧,这个时候我开始混CSDNC#区,解决别人的问题和看别人解决问题确实可以提高很多,慢慢的在程序结构上又有了很大的提高,但是Delphi还是停滞的状态,同时学习2门程序语言是很累的,一个时期有一个重心是对的。

在来公司8个月左右,开始改造呼叫中心的核心项目IVR平台,这个平台软件是Delphi做的,原来的程序员是交接到我这里了,终于开始静下心来看这个神秘的程序,花了7天的时间就了解了程序的概貌,好在这个程序结构良好,思路清晰,在原来的基础上做修改花不了很大的精力,就这样,一知半解的复制粘贴着程序,还算改造成功了,1个月时间改造加测试就这个结束了,改造程序的重点是理清楚程序原来的开发思路和架构,如果不是,就会出现结构混乱的情况,以后维护的人会很郁闷的,自己维护其他也会吐点血。开发和维护呼叫中心的这些日子里,是非常枯燥乏味的,为了测试程序的压力,编了一个比自己想象要复杂的测试程序,反复的测试,改进。哎,郁闷的事情,想想一个项目的子项目的程序编码,测试,维护全都是一个人,这就是软件业的现状,至少在以业务为主导的软件业是这样的。

接下来的时间,我都在碌碌无为中度过,反复的修改代码,没有什么创新,没有什么挑战,只是复制粘贴代码段而已,这段时间内,公司的管理算比较松散,把事情做完了,就可以做自己的事情了,我就开始赚CSDNC#社区的积分,下载C#游戏代码研究,改进Delphi代码,优化SQL语句,在这样闲散的情况下,是可以认真的研究如果提高程序的效率,优化算法的,想想在公司这样的时间并不多,这段时间里,我认真研究了C#的线程代码,事件委托,程序结构上也有比较大的提高,Delphi学会了类的应用,线程的应用,虽然不多,但是对优化程序还是很有帮助的,在玩手机游戏的时候,迷上了扫雷游戏,抽空花了半天时间用C#实现了一个简易版的扫雷,思想算法都有,但是效率上就有点失败,突然对GUI很感兴趣,想写些正规点的游戏,就在当当网上买了两本游戏编程书,C++的代码看得我挺晕,猛得看了一段时间后就没有继续下去,主要是想按照自己的思路写代码,而不是只是看书上的例子,做到这点挺不容易的,可能方法上有问题,还有一个原因是,项目又来了,这段时间,我有个感悟,在一个公司做技术,一年左右就会遇到技术瓶颈,感觉无法继续提高,因为公司的程序是为这个公司的业务服务的,翻来翻去,就那么几种形式,很难接触到新的领域,自己抽空学习可以给现有的程序润色,但是改变不了接触的领域,我发现,我在CSDN论坛上解答的大部分问题都是WEBSERVICE,线程,SOCKET这些,其他的小问题就不算了,就这样,我就打算离职,去其他地方看看,因为我看不到职业发展的方向了,没有目标就没有动力了,打算提交辞职报告时被主管拦下了,他说服我留下在做段时间可以涨工资,这个时候,我离职的大部分原因还是那处于低靡状态的工资,加上主管的关系不错,我就留下了,后来的工资确实涨了,从3000涨到4000,就这样又做了一年。

在一个没有目标的环境下,心是很累的,没有上进心,没有目标,每天麻木着做着事情,在工作一年零四个月的时候,我选择了软件考试,因为以前大学时候一直没有考过的软件设计师让我一直耿耿于怀,于是,我就在晚上时充电,做真题,分析错误,补充知识点,通过半个月的复习,最终通过了考试,是中级资格的,发现工作后,下午的试题特别容易,不用复习也可以拿不错的分数,而上午的基础题则比较悬。

在工作两年的时间内,一直没有用C#做过大项目,总是在Delphi上修改历史的项目程序,然后按原来的框架写新的程序,一直有自己搭过大程序的框架,在这最后的半年里,我终于有机会补上这一课,通过一些开源DLL来搭建框架,效率是非常高的,而且稳定性也非常好,比Delphi中的公共代码稳定多了(原来的公共代码都是公司的程序员前辈写的,存在许多问题,版本也比较多),通过1个多月的努力,完成了公司比较大的一个项目的子模块,可以实现电信级别的通信效率,使用全线程操作的通讯,程序在整个项目中起关键性作用,出点问题就容易引起比较大的事故,出了事故就要扣钱了,因此,我有写了一个测试程序,对子模块进行反复的测试,直到稳定为止才申请上线。

到现在,我发现软件的结构上一直没有摆脱维护程序的框架,看得代码都这样类型的,写的就会向这个方向靠近了,但是,代码思路上有了一个质的提高,自己是可以体会得到的进步的,这种进步是那么得可怜,甚至可以被时代的发展所忽略,因此,我又下定决定两年的合同到期就去寻找更大的空间。

两年的时间说长不长,说短也不短,想做一个有成就的程序员,就要时刻问自己,今天有没有什么进步,比昨天进步了多少,哪里才能实现自我价值。如果没有这样做,做十年的程序员和做一年的程序员有什么区别?

原创粉丝点击