`
runfeel
  • 浏览: 902012 次
文章分类
社区版块
存档分类
最新评论

五年软件开发的一点自我总结

 
阅读更多

下周就要去新公司报道了,换城市(离开北京)+换职业(不做开发),这个决定下得其实还是蛮艰难的。最近一直在反思自己毕业后的这五年工作,自感惭愧,找个地方记录下(主要是这里谁都不认识我),也算是自己的一种反醒以及给过来人提点建议,少走点弯路吧。

  08年顶着名校硕士的光环加入了一家非常有名的非软件公司做软件开发,刚开始一切其实都很美好。大外企的各种好在头一年给自己带来了很多光环,当然自己也学到了很多(主要是非技术的东西)。可是从第二年开始,当自己被各种邮件,开会和扯皮的事包围后,技术能力急转直下。然而自己当时还没意识到这个问题,感觉钱还行,也不忙,再加上本来就很迷茫,就得过且过了。直到去年,很多清华北大同事的离职,日复一日的简单重复工作,明显的天花板,不涨的工资,以及家庭原因的集中爆发才让自己后知后觉,才开始反醒,才开始下决心做转变。

  然而转变是痛苦的,这五年技术上主要是在windows平台上做一些企业内部业务的处理和展示,主要用一点c++/c#,还有MFC,Winform,WPF,WCF。技术基本上是做的皮毛,一般问题用MSDN,google和stackoverflow就能基本解决。用不到数据库,也用不到什么数据结构,用到一点点网络知识,主要精力都在业务展现上。这一切在我看来招个应届生用一年也能有和我一样的开发能力,唯一懂的多的业务,也长进不多,都是繁杂的重复。所以在自己开始面试和找工作时被bs了很多次,顶着光环人家一般都给你面试机会,但是一旦聊到技术细节,自己很多都答不上来,也曾经一度非常沮丧。庆幸最后找了个技术相关的职位,能够兼顾到家庭和自己后面发展的想法,还算可以,这是后话,暂不讨论。

  总结这五年不成功的开发经验,现在想想主要问题如下:

  1. 目标不明确,由于学的专业不是纯软件,自己误打误撞的进来做软件开发,自己一直没想清楚自己的目标,结果导致自己浑浑噩噩的做了5年开发还停留在原地。
  2. 缺乏坚持,没能坚持一件事情做到底,自己其实在这五年也自学了一些东西,包括HTML,JavaScript,CSS,Python,Java......也看了不少技术的东西。可都很肤浅,一样也没有深入坚持下去,什么都懂一点皮毛,结果就是什么都不懂。
  3. 不够勤奋,我从小成绩优秀,学习能力很强,缺乏需要非常勤奋投入才能做成事情的锻炼,所以养成勤奋的习惯,到了工作中才发现要取得成功无不需要加倍的努力才行。

  此外从一个非科班出生搞软件的角度,谈谈自己对软件开发的了解:

  1. 做上层开发学了这么多所谓的语言,框架,技术,其实现在想想万变不离的却是底层的数据结构,操作系统,网络通讯和一些其他的基础的东西。自己也算半路出家,以前总是不屑基础的东西,总认为我懂了WPF,能画出很炫的界面什么就很好了。其实却是认识太肤浅,只有掌握了不变的东西才能应付好上层的技术,否则只会被微软牵着鼻子走。所以对新人来说,打好基础是多么重要,可惜我后知后觉了。
  2. 除了基础的东西,我认为其次重要的是软件架构,好的架构可以让事情事半功倍,让下面实现具体代码的感觉很轻松。说得过分点,一个好的架构师可以带一群实习生的干活都能出好东西。软件开发越来越不需要我们懂底层的东西,很多现成的轮子可以用,但是要知道怎么搭积木就需要好的架构师了。所以我觉得平常要多看好的开源架构,多学习框框的东西,当然轮子和积木知道哪里能拿到。最怕的是像我一样,只会google找积木搭,这就是所谓的纯码农了:(
  3. 其次是业务,开发很多时候要懂业务,很多开发的很不屑业务,认为技术才最重要。其实很多时候业务才是王道,软件开发在我看来大部分时间都是给业务做服务的,做支持的,公司都是靠业务才能赚钱的。所以开发人员也要懂业务,特别对那种不是很想一直做开发的来说,懂业务又懂技术也许会给你更多的机会。
  4. 最后是软件开发的职业发展,个人的看法是码农能爬上去做架构师和经理的其实很少,基本一个萝卜一个坑,我见到开发能一直做到退休的都是老外,人家基本没有title的,这样的我观察无非两种人。一种是对业务很精通,同时对技术系统又很懂的,公司少不了他。一种是对技术很热情很钻研,能力很强,又不想去要什么title的,基本可以挑大梁。我想国内的情况虽然不太一样,不过基本可以借鉴下老外。当然不做开发还有很多可以做,我想说的是开发是可以做一辈子的,就看个人的想法了。这个问题我自己也一直在想,目前只有一条模糊的路,也得摸石头过。

 以上是作为一个经验尚浅的码农对工作五年的反思,基本是想到什么就写什么,思路有点乱,敬请谅解。

 补:早上过来看到居然上首页了,也看到好多同行的点评,谢谢大家的鼓励,我会加油的!

29
6
分享到:
评论
27 楼 wangyu890912 2013-06-02  
工作两年了  从之前的 web开发 到现在的数据仓库开发  也算是转变吧  感觉自己 会的东西也很多  但都是 浅啊  “可都很肤浅,一样也没有深入坚持下去,什么都懂一点皮毛,结果就是什么都不懂。” 唉  加油  一起加油!!
26 楼 pangpang514 2013-06-02  
看完了感觉自己怎么和你的情况这么的类似。。。。加油LZ!
25 楼 xiangyong58 2013-06-01  
非常感谢,学习中,加油
24 楼 newjunwei 2013-06-01  
楼上说的很好,基础很重要但没必要全都学,框架很重要,但没必要都去了解,关键是去做,做自己的东西,实践出的能力才是自己的。
23 楼 silentworld 2013-06-01  
编程经验是很重要的,这里我所说的编程经验不是编程的时间,而是程序设计思考的时间。技术线,不管你未来是超哪个方向走,这是基础。一名优秀的程序员才有可能成长为一名软件设计师,一名优秀的软件设计师才有可能成长为一名系统设计师,一名优秀的系统设计师,才有可能成长为技术的顶级-架构师。这条路,是很艰辛的,需要技术信仰做支撑,如果没有把握去坚定选择,我劝楼主不要轻易放弃当下。
顺带说下软件设计是跨语言的,只要你懂了设计思想,学习一门语言真心花不了多少时间。所谓框架,只是为了快速开发,框架只是某一架构的一个具体。所以,学框架如果只是学习怎么用,对你提高不是很大,要去学习框架设计架构,和本质的原理。那天要是你能缺什么框架,自己就在找不到复用框架的前提下设计一个,恭喜你达到初级软件设计师的水平了。
22 楼 liuyang01 2013-06-01  
我跟楼主一样的感觉工作两年寻求改变中
21 楼 yuhaibo6646737 2013-05-31  
一语惊醒梦中人!博主好文。
20 楼 leyou 2013-05-30  
我比楼主差一些,做了4年的通信行业设计工作,现在从基础学习软件开发,不过我相信自己能做好
19 楼 JavaLuSir 2013-05-30  
xiangxm 写道
eserver220 写道
   你的问题在我看来很正常。
   1、你选择了一家非常有名的非软件公司做软件开发,说明软件业务非公司 core business。所以,你想在技术上发展很难,这同你是否勤奋关系不大,实际上你缺乏的是一个环境。当然,你仍然可以从这家公司受益,可以有稳定的工作和收益。
   2、你选择换城市、换职业,勇气可嘉。某种程度上你放弃了5年的工作经验,同高校毕业生站在了同样的起跑线上。
   3、若干年后,你说不定会觉得留在原来的公司是个不错的选择。

我很赞同这位大哥的前两点 。机遇、环境、自我目标确立、主观能动性 都是很重要的因素、 

18 楼 xiangxm 2013-05-30  
eserver220 写道
   你的问题在我看来很正常。
   1、你选择了一家非常有名的非软件公司做软件开发,说明软件业务非公司 core business。所以,你想在技术上发展很难,这同你是否勤奋关系不大,实际上你缺乏的是一个环境。当然,你仍然可以从这家公司受益,可以有稳定的工作和收益。
   2、你选择换城市、换职业,勇气可嘉。某种程度上你放弃了5年的工作经验,同高校毕业生站在了同样的起跑线上。
   3、若干年后,你说不定会觉得留在原来的公司是个不错的选择。

我很赞同这位大哥的前两点 。机遇、环境、自我目标确立、主观能动性 都是很重要的因素、 
17 楼 zxciop1100 2013-05-30  
看了后发现  这不管基础不基础的问题   高楼平地起基础固然重要。但最重要的是问自己  我的兴趣点在哪里? 年轻的时候找到自己兴趣 坚持下去  就算失败  老了想想我为我的兴趣奋斗过  失败也无所谓  过程而已/!
16 楼 jshy616 2013-05-30  
15 楼 jyan1992 2013-05-30  
不能荒废自己。
14 楼 Aillen0209 2013-05-29  
actiz 写道
人的精力是有限的,深钻一个领域已经很不容易了。

嗯嗯,这个我赞成。
13 楼 Aillen0209 2013-05-29  
himiya 写道
基础确实重要,多谢提醒啦。。哎。。不知道要坚持多久,都有考公务员的想法了。

看了你们的讨论,感触最深的就是“我还是尽快跳槽吧”,不能再这样子浪费自己的青春了。
12 楼 actiz 2013-05-29  
人的精力是有限的,深钻一个领域已经很不容易了。
11 楼 himiya 2013-05-29  
基础确实重要,多谢提醒啦。。哎。。不知道要坚持多久,都有考公务员的想法了。
10 楼 308202251 2013-05-27  
领悟了一些。
9 楼 Aillen0209 2013-05-24  
基础很重要呀, 加油。。。
8 楼 netkiller.github.com 2013-05-24  
任何行业都一样,在这个行业没有5-10年的时间,成不了什么气候。
转行又怎样,新的领域你要叫很多学费。
每个领域都有苦逼的

相关推荐

Global site tag (gtag.js) - Google Analytics