一位读者写道:
我是一个软件工程师。对于任何一个从事于这个领域的人,这有一个众所周知而且毫无疑问的事实:最有效率最专业的程序员的产能会比最差的那个高上1000倍。如果这个看起来不太可能,请记住,如果一个程序员写出了很多bug而需要其他程序员去修改,那他的生产率是负的。而且除非他造成的破坏性已经产生后果,否则你很难发现问题所在。我过去曾给专业的程序员上课,即使在我的这些学生中,你也可以很容易的发现这种事实。
我没有发现哪个企业,不管在哪 — 即使在硅谷 –也没有一个企业能把对程序员的工资等级差异化到接近一个数量级的程度,更别说三个了。事实上,我们更倾向的做法是辞退或拒绝考虑任何超过35岁的人。给出的理由就是他们要求更多的钱。
在某种程度上讲这是有些道理的。如果你不能区分哪一个更好,你就该要那个便宜的。你实在是太难去评估一个程序员的效能了。
跟其他的人相比,一个好的程序员能用更精简的代码和更少的时间解决一个问题。所以你不能按代码行数和所花的时间来评估。按Bug数也不行 — 对于其他程序员,当看到有人漂亮的解决了一个问题后,都会确信自己也会这样的解决这类问题。不止一次的,当我按时的不带一点差错的做完一个任务后,我就会被告知:因为那是个任务太简单。而同时,逾期未完的团队因为一周的通宵加班表现出来的敬业和苦干精神而受到嘉奖。完成了工作的优秀程序员也许并不知道他所解决的问题对于其他的同事来说有多么的困难。
在一个公司里,你赢得了声誉,大家看到了你的工作。但你写的程序是商业机密,他们不可能轻易的让你把它们带走。不论你是好是差,打算雇你的人都看不到你的更详细的作品。他们可能会通过让你在白板上写几行代码的形式来筛选你,但这种事情就像是让钢琴师为观众用嘴哼出曲子。
我觉得印度外包产业所创造的一个辉煌成就就是放弃追求最好的程序员的思想。(我并没有侮辱印度软件工程师的意思 — 他们有很多人都很优秀,但单从数字上讲,我可以确信的说,如果他们能有像美国人那样多的机会,他们一定会从事其它行业。)人们知道,如果你能在印度雇到20个普通的程序员,你的报价可以压的很低,即使他们花了20倍的努力完成任务,你的成本是一样的,软件的交付也是可预料的。相对于判断你招的那个程序员究竟是高手还是低手来说,判断这20个程序员要多少时间完成任务还是更容易些。用20个普通的程序员,也许会用掉你两倍的时间。用一个程序员,也许只需要一个普通团队花的时间的二十分之一,也许会是100倍。
[本文英文原文链接:Paying The Experienced Hand Less, Ctd ]

我写的程序很混乱连我自己都不想修改,如果拿给别人改,我想他们会疯的
bull shit!
好文章啊
其实我倒觉得能者应该多得,否则大家都不用去学习了,尤其是程序员这个行业,既然努力提高自己的能力不能获得更好的报酬,那为何还要去学习呢??
现在很多都是在规定时间没有完成,然后通宵加班,最后得到表扬。太现实了。
商业也,都是tmd商业
就标题而言,瞎扯淡!
很睿智啊,非常有道理!
这就是为什么google、amazon、facebook能做的东西(GFS、BigTable等),国内的公司做不出来的原因。人是根本!
往往是会干活的不如会表现的混得好
太赞同了
毕竟想找到好的程序员太靠人品了。还不如踏踏实实的从设计和管理角度来提高开发效率。
很有道理。时刻不得闲 也很有有道理。
程序员给公司带来利益~要程序员自己的技术基础,技术好和全面的话会省去很过时间,不只是在自己一个人埋头工作的时候,还有沟通的时候。技术沟通~
面对这种问题,我表示只能尴尬地笑笑…
在没有标准时,领导只看工作时间,代码行数,设计页码
很多时候,不得不一边心里骂着,一边陪着加班。。。