有感于国内软件开发人员的素质普遍低下,招聘程序员往往面试了N个人都看不到一个顺眼的(当然这里面有很大原因是教育体制的问题)。因此考虑写一个系列,聊一下“如何成为优秀的开发人员”这个话题。
要想成为一个优秀的开发人员,先得搞清楚什么样的开发人员才能称得上是优秀的?要给“优秀开发人员”下一个准确的定义有一点点困难,于是我用举例来说明。
经我多年观察,对于大部分的软件开发团队都有这样的一个现象,那就是团队中的少数(一般来说,小于总人数的20%)开发人员具有更快的开发效率、更好的程序设计、更好的代码质量、更善于 debug、更能够解决技术难题......(总之就是让 team leader 事事省心)。而且这一小撮开发人员的贡献总和可能与另外那一大撮人(大于总人数的80%)的贡献总和不相上下(甚至可能超过)。那么,这一小撮开发人员,就是我所谓的优秀开发人员。
说到这里,列位看官应该明白我所指的“优秀开发人员”是什么样的了吧?(如果个别读者还是不明白,那只能说明你智商偏低,本系列帖子不适合你)
如果你觉得自己目前还不属于这一小撮之列,但是希望自己日后成为他们中的一员,你该怎么做呢?我的建议就是:仔细阅读后续的“如何成为优秀的开发人员”系列文章。我会在里面逐一介绍相关的东东,或许有助于你能力的成长。
反之,如果你自认为已经完全符合我所说的优秀开发人员,那么恭喜你,你可以直接略过该系列文章,去看点别的什么东西吧 :-)
本系列不会涉及到具体的编程语言技巧、不会涉及到具体的开发工具、不会涉及到具体的软件框架、不会涉及到任何当下时髦的概念(比如什么 OOP、FP、Pattern、SOA、REST、RIA......)。至于我具体会聊些啥,大伙看了以后就知道了。
最后补充声明一下:这里所说的优秀开发人员和开发大牛(洋文叫做 Guru)不是一回事,看完这个系列文章或许有助于你成为优秀开发人员,但并不能帮助你成为开发大牛。