很多人有一个误解,认为 10 倍程序员就是开发速度非常快。但我认为 10 倍程序员不是指开发速度,而是指开发的程序执行效率很高,是一般程序员开发的几十倍,甚至是成百上千倍,这才是 10 倍程序员的精髓。
那你认为呢

美剧《硅谷》里的 Gilfoyle

Gilfoyle 是天才,又快又稳,但现实中很少见。

需要有个好产品经理,把需求设计好,后期基本上不用再改,这样才行。

需求明确,目标精准,最终成品不偏离原先的规划,才有可能达到你说的这个标准。

事实上,可以无视客户需求的开发者才有这样的条件。

纯粹的乙方无论如何是做不到的。

到你这里拿不到 10 份工资,但是又傻到愿意为你付出 10 倍力的那种

厉害的程序员能发现最初 prd 中不合理可能会被修改的点.

在大多数业务中,快 10 倍远不如稳定 10 倍实在。。。查询 10s 和 1s 区别很大,但 1s 和 1ms 对大多数客户并没有什么卵用。。

0 bug 才是。

别人写一天的功能我需要写 10 天

哪怕质量一样,速度是现在 10 倍也比现在好 10 倍啊

虽然但是。。1s 和 1ms 差了 1000 倍。。。

质量*10
时间 /10

百倍程序员:Fabrice Bellard
ffmpeg 、qemu 、QuickJS 的作者

开界王拳着呢

电视剧是夸张了
Gilfoyle 又是运维,又是后端,还写人工智能

首先,10 倍指的是生产力,这是从项目角度来度量的。生产力体现在哪里?体现在开发效率、代码质量、设计健壮性、演化成本等方面。

其次,10 倍生产力是怎么获得的?两个方面。一是大量的设计经验,越是懂得如何处理各种分支场景和极端情况,设计出来的程序就越具有健壮性。这种健壮性可以在将来省掉很多成本。

二是大量的工具使用经验。这点我想单独强调一下,因为它其实被很多人忽略了,在面试中也很少被关注。

人的手工作业效率是非常有限的,想提升效率就必须用工具,工具越强大效率就越高,比如最近几年火起来的各种 CI/CD 和容器化,这就是被微服务架构逼出来的,必须用这些工具才能提升开发运维效率。所以千万不要贬低工具。比如你 IDE 使用熟练的话,基本上不存在一个字一个字的敲代码:

开发者会要用到大量的工具,包括 SVC (源码版本控制)工具、构建工具、IDE 、数据库工具,甚至还要懂容器,懂运维。如今开发人员的工具多样性已经不是 JBuilder 、VC6 时代能比的了,很多工具依赖网络,网络出问题的方式也是五花八门,所以如今的小白程序员一旦遇到点问题,让他自己去解决的话半天时间就没了。

程序员自己可能没误解, 但是他的上级领导一般会误解... 都是虚的

之前看过一些讨论, 又是偶然复杂度, 又是科学工作方法, 又是思维方式, 初衷是好的, 营销一段时间味儿可能就变了

1s = 1000ms

没有 vim mode 不能令人信服

实时音视频场景 400ms 的延迟都受不了,打游戏你延迟 1s 和 16ms 的差距对用户真的没有卵用吗…?

有 copilot 的程序员

垃圾的产品经理能设计出一个无解的逻辑怪圈

要有直升机的思维,有主动的向上动力,而且技术是真过硬。这个过硬不一定是技术很厉害,而且不懂的或者遇到问题,总能找到解决办法,而且不断找最优解

这可能是我见过对十倍程序员最肤浅的认识了。。没有之一

盲猜一行代码修复 10 个 BUG :)

10 倍速工具人。
不过有的是值得佩服的。

大多数国际路由优化,10s 优化到 1s 没人鸟你,但你能把 1s 优化到 100ms ,是相当美滋滋的,例如上海到洛杉矶的延迟,可惜得先有两台超光速交换机

刚好昨天写了一篇短日志:

《企业招聘 10 倍程序员和 0.5 倍程序员的区别》

c4ys.com/archives/2734
我的观点全文如下:

编程是一项需要协作的工作,很多时候是流水线试操作的。

小组的一个 10 倍程序员可能没法让整个小组效率都能 10 倍,真正 10 倍程序员也不太好鉴别,或者不存在(干每项工作都 10 倍?)。

而一个 0.5 倍程序员,却通常可以让整个小组的效率都变为 0.5 倍甚至更慢,而这通常非常容易鉴别。

所以招聘的秘诀是:不要花费太大精力企图去招聘 10 倍程序员,而是要防止招聘到 0.x 倍程序员,团队也要时刻警惕 0.x 倍程序员。

并不是说没有用,除了需要实时互动的游戏,大多数时候延迟并没有那么可怕,比如消消乐。相反,稳定性才是最主要的,如果一个游戏 10 分钟蹦一次,他绝对没人玩,但如果仅仅是延迟比较高,很多游戏是可以接受的。

而且,我们现在说的是哪个比较好,而不是延迟低有没有用,延迟低肯定有用,但跟稳定比,确实不及稳定重要。一家银行的结算系统延迟比较高但业务稳定,另一家银行的系统整天蹦还会丢数但 0 延迟,假如世界上就这两个银行,你选哪个?

10 倍指的是价值。
比如 1 个好的程序员,最初的架构设计合理;在业务扩张的过程中,程序在变大的过程中保持了更好的可维护性,每次新需求的开发成本有一点点下降,避免了很快就需要重构的境地;
另一个辣鸡程序员,上来一顿瞎写,可能用上一些奇技淫巧,执行效率开发效率都很快;业务扩张了,需要多招一倍的人来维护;
对于公司而言,这个价值可能就是 10 倍的

什么是赛亚程序员
什么是赛亚程序员蓝

那说说你得看法吧

你说得很对,在不同的场景,对稳定性和执行效率都有不同的需求,在总投入成本有限的情况下,我们可能需要做出选择优先照顾哪一个。
稳定性和执行效率并不是矛盾的,也就是我们可以都去追求,比如现在的智能汽车,既要反应迅速,又要非常稳定,这就要求投入很多的成本,大多数项目可能没有这么严格的要求,但是能做好其一就是一个很不错的成绩。

我认为相反,优化越到后面越困难,也越能体现一个 10 倍程序员的价值。

100ms 你还能打一个真空的直线地洞直接让激光在真空中传播

接上文,工作十多年很痛的几个领悟:

1 ,当我们在谈论 10 倍程序员时,通常我们只是想找一个 1 倍的,而是因为大部分都还没有达到 1 倍;
2 ,想招聘 10 倍程序员,成立 10 倍团队是不现实的,收益和成功可能性远少于踢掉团队 0.x 的程序员,木桶定律才是优先需要考虑的;
3 ,哪怕你真成为 10 倍程序员,公司不会给你 10 倍工资;
4, 10 倍只能是偶尔某些任务,并不是所有任务类型能 10 倍效率;

综上,要想成为真正效率上的 10 倍是非常难的,收益比不高,那么就如楼上所言成为价值上的 10 倍可行性怎么样呢?

我居然没想到可以打穿地球,这样只有 2r 的距离,而不是πr 了,可行

吴军参考物理学家朗道的理论,把工程师也划分为五个等级,其中相临等级的工程师,能力差 10 倍,创造的价值差 10 倍,收入可能也会差 10 倍。