如果程序员的学习、工作动力主要来源于项目管理时间表、管理层的压力,或者金钱,那么它不会成为一名杰出的程序员。对大多数杰出的程序员来说,动力实际上来源于更高的追求,例如对改变世界,做出人们实际使用的程序或产品。杰出的程序员希望并且需要为具有世界影响的项目工作,他们希望能够感受到自己的工作是有意义的,哪怕只在某个很小的方面有意义也行。杰出的程序员偏爱能够满足他们更高理想或要求的公司和项目,他们非常在意自己所做的事情,常常为了想要的结果而超负荷工作,而不会在某种压力下自愿做低技术含量的重复劳动。 美国科罗拉多大学早在1993年就做过一个关于软件工程师的研究,报告显示:“和普通工程师相比,那些出类拔萃的工程师往往更能照顾全局,更喜欢实际心动,更易受使命感推动,更能展示和表达出一种坚定的信念,在管理中更容易发挥主动的作用,更能帮助其他工程师”。 世界上杰出的程序员不多,不可能让每个项目团队都拥有杰出的程序员。而且多数团队也只能容忍队伍中有一两名杰出的程序员。大多数的程序都需要靠普通程序员完成,他们通常是称职的、专业的、能干的,但是可能会把程序设计看作为一种工作,而不是追求。 阶段总结 管理程序员不是一项简单的任务,即便你当过程序员也不例外。本文我介绍了管理的基础知识,包括对岗位、经验、人员品质的要求,然后介绍了如何组建和管理团队,最后对一些影响程序员思维的知识进行了介绍。下一篇文章我会介绍如何进行项目管理,这是团队领导者的另一项基本任务。 写在最后 开始第二篇文章的写作前,我请小智导出了所有InfoQ微信公众号收到的读者反馈。夸奖的反馈我就不多说了,能够得到各位同仁的认可和支持,是我写作的动力,感谢你们!这里我对提出的建议和异议进行一一回复: 关于“无名墓碑的故事”:这是我在网络上看到的故事,觉得蛮有意义,所以修改后加入文章,并没有考证是否属实,感谢这位朋友,让我知道了这可能是一个虚构的故事,后续文章会注意此类情况。 关于“开口闭口就随便定义几类工程师、几类产品经理”:我不赞成对人分级,但是做事的能力、对于做事方式的理解,我感觉确实可以分级。我还没有达到可以清晰描述工程师能力并依此分级的阶段(能力),看了吴军博士的《硅谷之谜》,认同他对于工程师能力的分级,所以本文引用了他的内容。 关于“个人感觉例子举的有点多了”:后续文章尽量避免频繁举例,只是我个人认为,能说出例子,说明自己有些理解了,这也是我在IBM开发者论坛发表文章和《大话Java性能优化》一书读者反馈中获得的比较多的正面的评价,很多读者喜欢听我讲故事,其实这样我内心也很愉悦,所以这位朋友,让叔叔我继续愉悦吧~~。 作者介绍 周明耀,2004年毕业于浙江大学,工学硕士,国外投资银行12年工作经验,4年分布式系统,物联网工作经验,10年技术团队管理经验。IBM开发者论坛专家作者,Infoq专栏作者,九三学社社员。著有《大话java性能优化》,即将出版著作《深入理解JVM和G1 GC》,已提交分布式计算领域发明专利超过15项。微信号michael_tec。 活动招募 在日益复杂的应用环境中,网络、移动端、浏览器端、服务端的性能问题种类繁多, 如何精准的定位问题根源,并留住用户? 如何通过全栈溯源的技术来追踪并采集用户数据,直接定位到代码行级,快速解决出现的问题? 快来听听QCon免费专场:新一代APM技术专场,寻找解决方案 今日荐文
链家鸟哥:从留级打架问题学生到PHP大神 (责任编辑:本港台直播) |