原创 《如何塑造自己成为一名优秀的软件工程师》ZT

2013-7-12 16:07 970 7 10 分类: 消费电子

 

关于《如何塑造自己成为一名优秀的软件工程师》的讨论
 
毕业十年了,正值班级十周年聚会之际,我要回母校看看,同时也应邀做一个关于《如何塑造自己成为一名合格的软件工程师》的讲座。
 
各位都是从学生时代过来的,相信有很多经验与建议要说,我就要听听各位的意见。
 
我个人的一些先说一说:
 
1、对编程着迷,好奇,有兴趣,乐趣编程,快乐编程;
 
2、编码编码再编码,最好的编码都是从实践中得来的,努力增加自已在校期间的有效代码行;在学校里不要除了老师布置的作业之外,却很少自己动手去写程序;要自己多动手;创作从模仿开始,模仿不是创作;
 
3、要认真学好基础理论,特别是操作系统,数据结构,算法等等;
 
4、逻辑思维要强,思考问题要严谨,自学能力要强;
 
5、性格和特长,做程序员的要沉下去,静的下去,不能轻浮,眼高手低;
 
6、团队协作,现在的软件工程都是团队协作的结果;尝试与同学一起合作完成程序等等,传帮带的作风要继承。
 
7、一定要多了解用户体验,不要只顾闭门造车,挖掘用户的真正需求;
 
8、钻研解决问题最简单的办法,而不是“最高级”的办法;
 
9、多参与一些技术活动交流,比如:开源的工作。。。21世纪什么最重要,人才,通过活动可以结识圈内圈外的人。
 
最后,在学校里能做的就是,要把基础打好,培养出强劲的自学能力,严谨的思维能力,只要基本素质练好了,在今后的工作当中,再投入相当的时间,自己的成长就很快了。就可以从一名合格的软件工程师向优秀的软件工程师迈进了。。。
 
暂时想到这一些,慢慢补充。各位一起来吧:)
 
------------------------------------------------------------
 
不要在乎重写代码,写出来的程序不要能用就算。当自己完成一个程序后,通常总可以有更好的实现方法,如果时间允许,不要怕麻烦,用你觉得更好的方式重写一次,你将发现每一次的重写,都会有很大的收获。
 
老俞说的好:
 
我补充两句我想到的方面,关于人人必须的领导力,责任和习惯:
 
领导力是人人都有的能力。。 不是领导才有领导力,只要在群体,团队中生活,领导力是自然产生的责任感和团队性,所谓one team ,one dream.
 
责任就是勇于细化,注重细节。不做表面工作;
 
习惯就包括:编程习惯,学习习惯啥的,特别是学习习惯,从小养成。。
 
还有:
 
记得平等待人,) 不要把自己当成高手,专家啥的。。
 
现实一点的: 
1, 考试只是最基本不过的技能。学生容易放低要求,把考试当成目的。特别不要把考过C,java当成目标。
 
2,在学校里面,去参加数学建模比赛、挑战杯、top coder或者其他有关的编程竞赛。
 
3,学完操作系统、数据结构、体系结构、编译原理后,先写10万行程序,再来读他们,再写20万行,再来读....
 
4, 读书前先看看是什么时候出的。在大学里面打基础的时候,尽量少买5年内出的书。不要浪费时间,试图搞懂一切,比如你没可能同时精通excel,ppt, dreamwaver, 3ds max , linux kernel, java.另外,只通过看书是永远不能掌握一门知识的。
 
5, 要是实在没事情做,去写个木马、病毒玩。不过不要泄露出去。
 
------------------------------------
 
说说我的感受。 毕业的时候我是没有搞过java jsp/servlet的。 当时准备面试asp的工作。 面试了几家都没有录取。 反而被一家java公司录取。 一进公司就搞tapestry spring hibernate。 eclipse也没用过。 当时那个晕呀。。小公司没有培训。 就硬着头皮上了。 只能是模仿别人的代码,当然自己是非常努力的。 其他时间疯狂的看着java基础。 所以说我是从高层-----》基础的。
 
------------------------------------------
 
如何成为一个优秀的软件工程师总的来说就两点。 
1正确的学习方法 
2坚持不懈的学习
 
学习没有捷径走,但却是存在弯路的,讲究正确的学习方法就是不要走弯路,首先是大学的基础,基础很重要,当时毕业的时候觉得基础不是很重要,但是经过两年多的工作发现基础很重要。所以基础要学习好。
 
但是只是基础好是没有用的,一定要多动手,要思考,要深度思考,边思考边实践。那么在工作之后这一点尤其重要,一个问题不能只有一个解决方案,一定要多想几个解决方案,这是锻炼个人思维能力的好习惯。
 
-----------------------------------------------
 
说点如何对待自己的事业和职业。其实不管你是做程序员还是做销售,步入社会都要经过一个养成自己工作习惯的问题。这里先不要说什么是好习惯,什么是坏习惯,你至少要先有一个习惯。才步入社会最缺乏的就是一个能够被别人也是被自己看明白的习惯了,经常是东一榔头西一棒子,没头没脑,想到啥就是啥。我想至少做为我,你不管现在交给我一个什么样的工作,我绝对不会说我去了就绝对做不了,我至少可以做到做不好但是至少也能合格。我想大家工作久了,这个信心还都是有的。记得当初我做销售,最羡慕老家伙们可以和客户打出一片,总是问应该如何和客户聊天。得到的答案,聊天就是聊天啊,随便瞎说就行了。而自己带第一个项目,问老人应该如何做领导,得到的答案是能带着大家干活,让大家知道各自该干啥就行了。第一次做设计,答案更加简单,让大家明白了就行。其实事情都是很简单的,只不过年轻人都会胆怯,都害怕做不好,而且又没有做事情的方法,不知道该从啥地方动手。其实这就是做事情前不会分析,也没有一个做事情的大的思路。其实写程序和写文章,写小说,画画,写歌曲,没啥在方法上的大区别;同时和做销售,做领导也没啥大区别。只不过是分工不同,做事情的思路都类似。
 
---------------------------------------------
 
培养出兴趣 优于 勤奋刻苦; 
寻找一条平滑的学习曲线 优于 从难从严; 
结合实践学以致用 优于 钻研理论知识和艰深技术; 
虽然我认为后者也其有价值,但是前者更有可能取得成功 
前者可以称为“敏捷学习方法”,后者更像瀑布型
 
--------------------------------------
 
补充下面几点: 
1、沟通很重要,要学会有效的沟通 
2、算法数据结构是基础,但实践同样重要,在大学要学好软件开发最重要的一环就是实践,找一个系统(或者跟一个老师做一个实际的应用系统)定一个计划去实现,保证能学到很多东西。 
3、思维方式进步的基石,要多借鉴别人解决问题的方法方式,特别是要培训自己独特有效的思维方式。
 
--------------------------------------
 
其实读书也是很重要的,不过自己一定要勤于思考和消化,并且逐渐养成选择的眼光,清楚知道哪些书对于提升自己的境界是有帮助的。相同层次的书不必读的太多,读上两三本足够了。 
例如GoF的《设计模式》和Martin Fowler的《重构》这两本书对于应用软件的开发人员非常重要,读过的和没有读过的理解面向对象设计的能力差别非常大。 
读过《设计模式》之后,其余的《Java设计模式》、《C#设计模式》之类的书大多是以不同的语言重复圣人之言,没有必要再读很多这一类的书。
 
读完了一本书并不是终点,一定要勤于思考和消化,在适当的时候学以致用,最终将其中的知识真正转化为自己知识体系的一部分,并且融会贯通。当然不是说读了一本书之后这本书中的内容一定要在任何地方都用到。其实《设计模式》中对于每种模式的适用场景都讲的很清楚。具体某种模式是否适用,需要靠自己的思考来判断。
 
以前看到过一个笑话,一位读者写信给GoF的老大Erich Gamma说他最近在一个项目中使用到了GoF 23种设计模式中的21种,还有两种模式没有用到,感觉很苦恼,希望Erich帮助他解决这个问题。
 
这就是一个非常极端的本本主义教条主义的例子了。另外以前看到某位同学罗列10余本他所认为的软件架构设计方面的经典图书,希望一年之内读完这些书成为一名“优秀的软件架构师”。这种学习精神值得鼓励,但是具体的做法不值得提倡。一下子注入这么多的真气进来,这些真气还有可能相互排斥,运气好的人可能最终像令狐冲一样能够全部化掉,运气不好的人可能很快就会死掉。
PARTNER CONTENT

文章评论3条评论)

登录后参与讨论

用户1586985 2013-7-15 12:15

只要功夫深铁杵磨成针 不要想太多,just do it.

zyb_954840375 2013-7-15 09:51

以上是一组讨论的话题,不是一篇文章!

用户3809340 2013-7-15 09:36

确确实实如您所说,您的读者和听众感觉都是被“东一榔头西一棒子”了:思路混杂。

 

作为软件工程师的发展,除了多个开发工工具语言和项目的参与,更加重要的就是逐渐学会如何思维了。诸位不要感觉奇怪,似乎我上大学前还不会思维么?作为一个人类,难道还需要从软件编程的过程中,逐渐学会这个基本的“生活能力”么?中国的小学中学的应试教育到到大学的照抄填鸭教育,结果就是这样。关键不是少较了什么知识,而是年轻人在人格性格思维需要定型的年纪,没有机会学思维。那么,其中少数愿意用功同时有足够悟性的同学,在学校死记一些、到公司再多做积累实际功夫,从中才有机会《第一次》成为一个会思维的人类。而大多数,就难讲了。

 

 

 

用户1662270 2013-1-20 18:28

有助于模拟与数字信号设计的测试,而且这种组合很实惠!
相关推荐阅读
zyb_954840375 2016-01-21 19:44
科普 | 虚拟环绕声技术的升华,探索人类的听觉感知
早在10年前,许多环绕声技术和AV品牌就开始研究虚拟环绕声的技术,而当中来自日本的多家AV放大器品牌,就推出了各种各样的虚拟环绕声技术,例如Yamaha的11.2声道3D音效,还有美国的Audys...
zyb_954840375 2016-01-18 13:27
我国音响消费简史
我国音响消费简史新中国国内音响娱乐,大致可分为以下几个阶段:1,初始阶段 建国初期音响限于高干阶层消费,在港台是民国遗老遗少,器材是机械发条78转唱盘、进口开盘录音机、电子管收音机。以熊猫那款卧式落...
zyb_954840375 2016-01-08 13:46
广州艾美网络科技有限公司
我加盟的新公司介绍: WWW.MEDA.CC 广州艾美网络科技有限公司是一家专注于移动互联网音乐设备研发公司, 包括网络音乐服务终端、音乐娱乐设备,网络音乐HIFI产品。 艾美致力创造...
zyb_954840375 2015-12-25 10:02
为大家推荐两本非常值得一读的好书<创业无畏> <富足>
<创业无畏>  <富足> 双双进入美国权威网络媒体Business Insider 2015年商业畅销新书榜单。《创业无畏》是企业家帮我们抵达未来世界的行动路线图。美国...
zyb_954840375 2015-11-27 15:05
何时选择纯后级功率放大器
行内人一直十分明确,万元以下的合并式功放后级部分不值得考虑,特别是新出的合并式功放,后级严重缩水,虚报功率,乃扩大到所有的合并式功放。   其实,多年以前没有这种偷工减料,虚报功率之事。现...
zyb_954840375 2015-11-09 15:44
耳机发烧七宗罪
耳机发烧七宗罪 一、 盲目攀比 不考虑自己 的经济能力,一味追求高档。好多朋友也买了HD600,够档次吧,不过是插在电脑和随身听上,能发挥HD600的几成实力?其实光有高档耳机就够了吗?高档耳...
EE直播间
更多
我要评论
3
7
关闭 站长推荐上一条 /3 下一条