新手程序员如何让他快速成长?一名老程序员,谈谈对程序员的培养

这篇文字是我很久以来的想法,有一些感悟,有一些激烈的言辞,我很自豪我就是一名程序员,我但愿给程序员或者前程序员们带来一点启发。也许你承认个人言辞,也许你不屑个人观点,不管如何,欢迎谈谈你的见解。程序员

让程序员作更多种类的事算法

为何有人说小公司锻炼人?在小公司,条件并不那么齐备,不少事情都须要程序员本身作,本身去澄清需求、本身作设计、本身搭建环境、本身测试,甚至本身上线、本身维护(这件事情在咱们团队被称为“本身吃本身狗食”)。编程

然而到了某些公司,在一些正规的流程下,“人”反而显得不那么重要了:一个完、整的流程被切分红若干环节,程序员只能负责那小小的一环,更严重的是,他们显示出消极和片面的情绪,他们称本身码农,自嘲而且以为在总作一些低级和毫无技术含量的事情。微信

关于“码农”——这彷佛是一件很悲哀的事情,在美国,程序员是一个至关值得尊敬的行业,硅谷的技术员工很早年薪平均已经超过10万美圆;在中国,教师的行业起码得到了人们口头上的尊敬(虽然实质上也许并无得到应有的待遇),而程序员,每每只能看到本身给本身呐喊。架构

这里没有绝对的对错之分,但我一直在博客中强调软件开发实质是一种创造性的劳动,只是在一个流程严格控制的公司内,这样的创造的火花可能被扼杀,换来的好处是人员的流动中,代价最小化:谁均可以走、谁均可以代替谁,全部问题都被认为只是时间问题……那么,程序员,你的自我价值何在呢?学习

关于测试

我听到不少真实的声音,都在抱怨测试工做乏味、加班辛苦。我认为,国内大部分的测试,其实彻底是程序员扭曲的工做形态致使的。测试

专职的测试人员去作专项测试、整个系统的集成测试等等,我都能理解,可是绝对不该当深刻模块内部去测试开发人员的代码,绝对不该该去考虑所谓的代码覆盖率——由于这些,好比白盒测试,本都是程序员本身该完成的事情。程序员本身开发的程序,固然要本身验证功能,不少软件公司在一些项目流程里就是没有专职测试介入测试执行,缘由很简单,难道本身拉了稀,让别人给你擦屁股?网站

另外一方面,测试该掌握哪些技能?编码

我见过许多测试人员,他们抱怨工做老是被轻视,没有说话的份量,可是天天的工做就是了解开发的流程,根据流程完成用例的编写,而后执行那些用例,发现bug并填写bug report。若是一名测试只须要作这些事情,那么确实太没有技术含量了、太没有入门门槛了,太单调乏味了。操作系统

测试须要成长,既为本身考虑,也为团队中的程序员考虑。

作一名优秀的测试,除了要有分析能力、辨识能力等等软实力之外,基础技能如通讯协议、脚本、编译原理、操做系统等等,亦视状况掌握,只有这样,才能和程序员从并不清晰的需求开始,一块儿去分析、设计、实现和质量保证、去和上上下下的环节作沟通、论证。微软的测试(SDET)都把算法和编码视为基础要求,敢问国内一些公司的测试人员,有几个敢这么说?

让程序员远离浮躁

去看看国内几家知名博客和论坛,多少浮躁的博文和帖子四处乱飞?多少人在骂公司狗血,在自嘲薪水,甚至在人身攻击?

浮躁的心态多是形成这种现象的罪魁祸首,有一位同事说得好,不少具体的技术均可以学,可是执着的心和对技术的热爱是不容易学得的。

整个社会都在日益浮躁,ITEye原本也是一个有技术深度、氛围浓厚的网站,如今看起来有些鱼龙混杂;微博的流行正验证了社会浮躁的趋势,不少人没有时间和耐心去写完整的文章,可是两三句感慨、甚至一词半句的惊叹却容易得多;程序员像寻找速配男女同样,在这个概念翻飞的时代,茫然地寻找本身应该进入的领域,应该了解的技术,因而,很容易看到许多所谓的架构师和咨询师能够把这些东西讲得海阔天空、天花乱坠,这个概念、那个素语,可是——给他一个具体问题吧,要他写写实际代码吧,你会要了他的命。

给程序员一点宽松和鼓励

都在说国内的IT环境不如欧美,大量劳动力的富余让人力成本变得无比廉价,能让青年付出卖*代价以购买大部分配件都“Made In China”的iPhone,中国却只得到了1.8%的利润,这些都让人感叹,为何中国作不出苹果系列这样的产品?为何中国始终要给别人套上“廉价劳动力”的帽子?中国的程序员,大家的创造力呢?大家精彩的点子呢?

好吧,我听到有人在说是教育体制的问题。对于程序员的地位的思考有不少,惋惜咱们不是教育工做者,咱们也没有那么大的影响力,不过,在团队中间,咱们应当多给予这些脆弱的程序员们一点鼓励,让他们表达出本身的想法,特别是在设计上、实现上的想法,不要嘲笑任何人弱智,不要咒骂评审的代码狗屁,多一点沟通,把眼光放长远一些。

这些能表达出想法的人起码能够证实两点:有思考、有勇气,仅这两点,仅足以让旁观的人鼓掌。

一名优秀的Team Leader,不该该成天陶醉在跟踪项目进度和获取程序员工做反馈上。咱们都明白,所谓一张一弛,在工做压力恰当的时候,是最适宜工做的,程序员的工做原本就须要创造性,没有适度宽松的环境,就没有思惟的火花。

让程序员本身去布置工做台,给他们创造机会聊聊天,把各个团队、各个角色放到一块儿说说话,组织分享一些有趣的话题,作一些有意思的研究(最初程序员都很腼腆,得劳烦您多牵线搭桥了),Team Leader的工做,毫不仅仅是说“行”或“不行”。

程序员的理想

1983年,乔布斯对百事可乐的CEO John Sculley说:“Do you want to sell sugar water for the rest of your life, or do you want to change the world?”(你想卖一生糖水,仍是改变世界?)。

咱们已经不在战火纷飞的年代,有多少程序员还愿意怀抱那些原始的理想,还能说出“作互联网的弄潮儿”、“用技术改变世界”这样的话来?

这个世界执着的人并很少,用这样的理念去吸引程序员的公司,则更少。

关于技术

我始终以为,作软件的公司是须要依赖于技术的,固然国内能够称得上是“技术公司”的并很少,可是,优秀的技术能让程序员脱颖而出,也做为一种谋生的手段,为其觅得不错的回报。

作技术能不能一直有饭吃?我想答案是确定的,有许多公司声称技术路线能够一直有发展的可行性,可是技术牛人仍是转了管理或者一走了之,有一种粗暴可是易行的鉴别技术公司的办法,就是寻找里面又没有40岁,甚至50岁以上还在作实际设计和编码的人(不是那些脱离了具体实现向客户吹嘘的角色)。

世界上有两种最赚钱的人,一种是真正的生产者,他们用本身独一无二的聪慧、灵感和劳动创造了价值;一种是极其老道的投机者,专门从别人口袋里把钱掏出来放到本身口袋里。他们都受人尊敬、受人瞩目,后一种让本身的生活变得更美好,可是前一种,让整个世界更美好

若是你不能在技术的道路上坚定地走下去,在大部分公司作市场、作管理、作咨询,顺便鄙视一下别的辛苦工做的程序员,那么也能够混得很好——毕竟,生活的解老是有不少种。



自学C/C++编程难度很大,想提高你的编程能力,不妨和一些志同道合的小伙伴一块儿学习成长!

C语言C++编程学习交流圈子,【点击进入微信公众号:C语言编程学习基地

有一些源码和资料分享,欢迎转行也学习编程的伙伴,和你们一块儿交流成长会比本身琢磨更快哦!

相关文章
相关标签/搜索