百相网

搜索
查看: 144|回复: 20

目前中国程序员和美国程序员的差距在哪里?

[复制链接]

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-2-1 08:23:32 | 显示全部楼层 |阅读模式
这里说的差距,是指平均技术水平,我知道国内也有很多高手!我希望大家能够从各个方面做出客观的讨论!
又:面对这些差距,我们应该怎么做?
回复

使用道具 举报

2

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-2-1 08:24:11 | 显示全部楼层
我是在美国工作过两年,回国经历了逆文化冲击,现在勉强算是适应了国内互联网公司的节奏。随便聊聊,没有崇洋媚外的意图,只是刚好最近被剥削得很不爽,趁机吐槽一下。
1.年龄

美国公司:


  • 同事里20多到70多岁的都有,众数是三四十的中年人,大部分工作目标都是为了早日退休,攒够钱就随时办退休party。也有些纯粹因为热爱工作、热爱写代码选择不退休的。
  • 我们组的核心成员之一,是位72岁的老头,他每天4点多起床到公司写一会儿代码,等天全亮就戴上头盔去骑山地车锻炼,9点多回公司继续工作。对这老头印象深刻,是因为他逻辑清晰、思路锐利,他是code review小组的成员,经常在邮件里破口大骂其他人写的代码写得有多烂,被投诉,只好在邮件里道歉,过几天继续骂,在我工作的两年里一直循环。
  • 我的另一位资深同事,是位68岁的架构师,热爱工作,每天都乐呵呵的,对我这种新毕业生也很友好,有人问他什么时候退休,他回答说他死的那天。
我国公司:


  • 回国之后我现在工作的公司,员工平均年龄在30岁以下。年纪大的都去哪里了呢?极少数在管理层。
2. 加班

美国公司:


  • 从没加过班,晚上发版除外(会默认第二天调休)。
  • 经常正开着会,时间到了5点半,产品打断领导说到点了他要回去喂狗(他是一个50岁的不婚族,养了一院子狗),然后就散会下班了。
  • 加班需要申请,有次我申请工作日晚上加班,没批准只好回家了。因为加班费会比较高,需要从项目预算走,领导控制预算不给批。
  • 偶尔周末去办公室取东西,几层停车场只有两三辆车。
我国公司:


  • 996是常事了。
  • 印象比较深的是我司之前有个清华本科+美国硕士的小伙子,每天7点半准时下班,结果试用期被辞退了,原因是工作态度不积极,据说后来还和公司打了官司,不知输赢。
3. 代码质量

美国公司:


  • 项目在前期花的时间是最多的,比如说需求分析、架构讨论、技术讨论。
  • 写代码会考虑得比较长远,比较有时间去考虑开发原则、维护成本,领导也会乐意去安排版本来解决技术债务。
我国公司:


  • 国内互联网节奏会要快得多,讲究小步快跑,就几天的开发时间,不管三七二十一先上线再说,刚开始我都惊呆了。
4.工作氛围

美国公司:


  • 老美的公司确实比较尊重员工,在员工关怀上做得比较好。我可以感受到,和领导职位不同,但是我们人格是平等的,彼此尊重。
  • 记得有一次发版前几天,组里程序员说他压力太大,领导给他假期让他放松调整,版本被延迟上线。
  • 美国有family first的文化。有个老印同事,家里老人身体不好,公司同意他回印度工作照顾家人,远程跨国工作。经常有同事因为要看孩子比赛请假。领导自己也会偶尔周五请假,因为要去和女儿一起参加学校的公益活动。
  • 对差异性接受度也比较高。同事有变性人、残疾人,大家相处得都很好。
我国公司:


  • 领导高高在上,官威很大。请个假,和求他借钱似的,组长还提醒我让我请假原因不要写“旅游”不然可能会不给批假。
  • 记得有个需求,大家都认为不合理没必要,我去找领导沟通,刚提了一句还没展开,领导直接甩脸色“你是领导还是我是领导”。
  • 有个同事因为耿直,和领导不和,被各种排挤冷暴力,逼他自己辞职拒给赔偿金。
  • 开个线上事故复盘会,做root cause分析,就像要把人钉在耻辱柱一样,我不理解这对解决问题有什么帮助。
5.工作之外

美国公司:


  • 很注重对健康的投资。至少1/3同事有每天早上去健身房的习惯。公司很多球场,晚上下班能看到很多同事在楼下踢足球、打排球。健身不只是为了锻炼,还是很多同事的爱好。看起来平平无奇的程序员,可能都是隐藏的运动高手,多年马拉松选手、山地车骑手遍地都是,还有不少极限运动爱好者。
  • 喜欢看牙医。喜欢看各种体育比赛。喜欢旅游,基本上每年至少一次家庭旅游,游轮是热门项目。
  • 一部分同事热衷慈善回馈社会,小到捐血捐钱做公益,大到组织慈善拍卖会。
  • 据我观察都没啥夜生活,下了班就开车直接回家两点一线,偶尔聚餐也是和同事朋友。可能是我自己的感觉,人和人之间的链接比较淡薄,所以华人码农也会经常吐槽空虚无聊。
  • 已婚同事的其他时间和我国的一样,花在养孩子和投资上。
我国公司:


  • 办公室的好多同事,不敢看体检报告。都是20多岁的年轻人,检查出来啥的都有,胆囊炎、结石、痛风。。。前几天还有一个要好的同事请假去做痔疮手术的(捂脸),据他说是因为久坐,加班经常吃小龙虾。
  • 相比之下离职率高太多了,每个月都有几个认识的同事离职,跳槽的、转行的、回老家躺平的。
  • 除了领导们,几乎每个人看起来都很焦虑,都想着退路,想着搞点什么副业。
至于会不会趋于一致,个人认为是时间的问题,但是我们这一代还能不能等到,要看身体好不好了。无论怎样,一定保重好健康。
来源:https://www.zhihu.com/question/497793332/answer/2216734220
回复

使用道具 举报

2

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-2-1 08:24:22 | 显示全部楼层
我说个最具体的,差距在于对开发流程的理解。国内程序员,或者说国内公司,重视的是结果,是X天内上线,非常忽视性能以及测试这两个非常重要的领域,所以代码越写越多,结构越来越臃肿,性能越来越差,出问题的几率越来越大,无意义的耗时也随之增多。
我最早在某美国大厂,后来加入了一个有国内背景的初创公司(下文简称国内公司),现在又跳到了某美国中厂。聊几个亲身体会。
1,测试框架。在美国公司的时候,无论是之前微软这种大厂,还是现在这个近两年才ipo的中厂,都非常重视测试,我之前有个项目是个后端项目,每个api都有单独的unit test,合到一起还有regression test,专门雇了两个合同工跑behavior test,时不时整个部门再来个一周的pressure test。在国内公司的时候,同样的后端项目,测试是没有的,我要增加一个功能的时候,有个已有的api和我需要的新功能非常类似,正确的做法是我去修改这个现存的api,增加几个新的parameter和scenario就可以了,多个几十行的代码。但是我敢吗,不敢,因为没有这个api的unit test,我也不知道谁在用,万一搞挂了怎么办,所以,重新加了一个api,多了一百多行。
2,性能。在美国公司的时候,我曾经抽空鼓捣了一个infra相关的改动,降低了某几个重要的请求的反应时间,manager非常高兴,单独发了一封email给他的manager,cc了和他同级的manager,介绍我们的性能提升,升职的时候,这个也作为很重要的一点。不仅仅是我的manager,整个大组,只要是性能方面的提升,经常见到这种可以发到很高层的email。国内公司?别折腾这些没用的了,这个项目3周上线行不行,不行?测试和性能方面的工作先砍砍,我们一定要尽快上线。
其实能想到的还有很多,比如说文档方面,部署流程方面。其实程序员的工作,标准化很重要,而国内对标准化的普及,真的是有点差。甚至还觉得那些能把三行写到一行,天马行空特立独行的才是高手,这是完全搞错了方向。
回复

使用道具 举报

2

主题

7

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-2-1 08:25:19 | 显示全部楼层
以前我和一个技术大牛聊过一个很有意思的问题,如下:
当一个程序员,花了很多时间在底层,架构,这些方面的时候,后面写出的代码质量就会挺高的,而且出bug的时候也少。这样的代码和程序员,在我们这里是不行的。
因为,这体现不出你的价值。
最优秀的程序员呢,就是在底层搭建的时候,弄一些不疼不痒的问题,后面的代码出了bug,你可以去摸鱼,去改,而且还能体现你的价值。
你看,这程序员就是厉害,有问题就能解决!
而那些把底层弄得很好的,一天到晚没啥事干,天天就知道上班摸鱼~
这是真事,而且是某大公司的技术总监。
唉。。。。。。
所以,一个公司的老板和董事,懂技术和不懂技术,差距会有多大,就在这里看出来了。
回复

使用道具 举报

2

主题

6

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-2-1 08:25:43 | 显示全部楼层
最近和我媳妇的大哥聊了聊很有感触,先介绍下基本情况:他之前是主管技术的副厂长,后来内斗没赢,开始主管安装,相当于降成科室主任,再后来厂子各种瞎搞倒闭了,他现在跟村里物业随便工作养老等几年退休。他之前的厂子是专门做压力容器的,比如油站的储油罐,商用的大型灭火器。企业性质是乡办企业。
先说他是怎么当上的副厂长,之前他就是主管技术部门的主任,原来的副厂长搞关系腾挪辗转把正厂长明升暗降搞走了,他自己不会技术,找我这位大舅哥帮衬,让他主管技术和生产,自己外头跑关系,搞订单。
下面是典型的几个事情,能够看出职业官僚有多么昏聩。

  • 不舍得花几百块钱买正版的标准手册,却肯花上千块钱活动关系请吃饭:某个投标项目需要9000标准认证,我大舅哥说,那需要的话,咱们就得搞啊,而且他觉得标准化和规范化是必然要做走的路,所以先跟正厂长说,先花几百块钱买本9000标准的认证书籍,他研究研究看看怎么后续找咨询公司引入之类的。正厂长说,那东西还需要买?网上不是很多么。就不想批那几百块钱。我大舅哥说,网上的东西,很多有错误,你到时候咨询或者验收,错一个步骤,整个一批的东西就废了,多大损失。
  • 提交人跳过审核流程,提交人没挨处罚,审核人员却被处罚:早年厂子里派了一批人去学技术设计,这些人里技术好的去了技术科专门搞图纸好审核,能溜须拍马的安排到管理办公室,此为背景。有一回管理办公室的A同学,有一张图纸需要给技术科的B同学审核之后,才能发给生产部去制造第一批货。B同学手头有别的活没搞完(我大舅哥说,可能也有点看不上他这个同学A,觉得他一个技术菜鸡就能分配到办公室),然后呢A 同学说手里还有活,明后天才能审核。A同学竟然跳过了B同学的审核,直接发给生产部制造,结果图纸果然有问题,加工的东西不能用了。这一批容器全部作废,后来厂里一查,确定责任,竟然扣了B同学的奖金。A同学毛事儿没有。闹到管理办,管理原话:我们就这么处理,不是问你的意愿。气的B同学直接跳槽,后来相同岗位,厂里花了两倍的工资,才招聘到能胜任的人。
  • 朝令夕改,说话不算:后来我大舅哥多次推行制度化无果,和正厂长的理念有冲突,被调离了,让他主管安装工作。安装工作都是要去客户现场的,很多时候要雇佣临时的民工。得管人家吃午饭啊。那时候也很少有外卖的概念,就找厂里经常合作的普通饭店,带人吃饭之后签单,回头厂里统计结算。我大舅哥现去问了正厂长,民工的吃饭问题怎么解决?正厂长说,你看着办就行了。我大舅哥说,那好吧,那我就把人带去签单了。某一天,安装工人在吃饭,店家老板说,你们正厂长亲口跟他说的,以后只有他能签单,别人都不行(没提前打招呼)。我大舅哥没带钱,最后把身份证压在饭店才解决这件事。
果不其然,厂子没挺上几年,2000年以后,疯狂的走下坡路直至几年前彻底倒闭。
制造业的核心竞争力,无非就是人无我有,人有我精。尤其是人有我精方面,制度化和规范化是必不可少的。这些个职业官僚一天玩弄权术,钻研人心。真正懂技术有远见的人,被排挤出去,产品越做越次。最后被进口产品打的满地找牙。这些个职业官僚在这事儿,产业能升级,产品能有竞争力就出了鬼了。
最后回到问题:以上举出的昏聩例子,我在互联网行业里,也是屡见不鲜。
所以中美程序员最大的差距是什么?
是中国程序员头上有一堆碍事儿的官僚作威作福。
是这帮傻x官僚,一天把持着权利,干啥啥不行,抢功第一名。
是这些官僚思想,在我们中间特别有市场和竞争力。是我们这个群体认为,当官就是一切,却忘了真正有价值的是生产者。这帮官僚不给生产者应得的尊重和价值,你就别怪优秀的生产者润了,别怪生产者生产不出有价值的东西。
回复

使用道具 举报

2

主题

6

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-2-1 08:26:25 | 显示全部楼层
差距来自这里...





























出处:中国程序员VS美国程序员,太形象了...
回复

使用道具 举报

1

主题

4

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-2-1 08:27:18 | 显示全部楼层
我在美国工作过、创业过,在中国工作过,创业过,在 freelancer 上发过外包接过外包,维护过开源项目。
顶尖工程师水平:
美国 > 中国 > 日本 = 欧洲 = 韩国 > 印度
平均水平:
中国 = 美国 > 欧洲 = 印度 > 日本 = 韩国
大型互联网公司技术能力:
美国 > 中国 > 剩下全加起来
无论公司角度,还是计算机技术能力角度,现在世界上只有两个国家能放在一起说,一个美国,一个中国。
-
统一回复一下。
我接触过很多三哥,写的代码根本不是人看的,三哥是把计算机和互联网行业当做了低端制造业去做,能力真的不要太高看他们。印度那些外包公司很大程度只是他们能产出大量廉价会说英语的工程师而已,不代表技术又多好。
毛子和日本其实非常像,都有一些领袖级的人物和公司,但平均水平非常低。我之前接触过一些日本和俄罗斯的公司,他们还在拿至少10年前的那套东西搞开发。
国内互联网行业从业者千万不要妄自菲薄啊,至少 BAT 的平均水平不会比 Google + Facebook + 苹果的平均水平差多少,国内更多是管理层的问题。真正技术上的差距差在2%的牛逼阶层,这些公司有些叼炸天的大牛,这是国内互联网公司不具备的。真正剩下的98%其实都在一个水平线上。
最后我其实也没有回答问题,我完全赞同  @赵劼 说的就是英语的差距。
回复

使用道具 举报

2

主题

4

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-2-1 08:28:07 | 显示全部楼层
从教育说起
中国:实践太少,填鸭式灌输太多,大学起『汇编』『数据结构』,学不好又培训『java三大框架九大XX』,然 并 你懂~
美国:引导发扬兴趣试教育 『黑客与画家』,发现一个问题,搞出一个解决方案,然后命名『XXX』,积累几个解决方案之后,就成了中国最先进大学最前沿教材研究方向『YYY』。
故事
好久之前美国一个青年小伙看JavaScript 不爽很久了,然后写了个自己的js框架jQuery,发布到github上好多人来fork。
三个月后,中国程序员开始吵架『jQuery到底是不是最好的js框架』,大量中文翻译文档出现,老程序员面试鄙视小程序员『你连jQuery都不知道?』,小程序员心里非常胆怯,『心想赶快回去恶补一下』

最后

美国程序员成了商业精英,他们拿了钱,把技术做成公司越玩越high
中国程序员被一帮商业精英忽悠着面临转业

回复

使用道具 举报

3

主题

9

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2023-2-1 08:29:00 | 显示全部楼层
工资。
求折叠吧..._(:з」∠)_
回复

使用道具 举报

2

主题

8

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2023-2-1 08:29:09 | 显示全部楼层
中国工程师打开百度,搜技术问题,翻两三页,摇头叹息,打开vpn,Google翻译后的问题,点开链接(右键在新tab中打开),阅读,把问题答案在脑中翻译一遍,解决。
美国工程师
Google,点开,阅读,解决。
=======以=下=链=接====与=本=题=无=关=========================
有个任性无比为所欲为的女朋友是什么体验? - 知乎用户的回答pvp玩家玩pve是种怎样的体验? - 知乎用户的回答
为什么男人对丝袜有幻想,会被诱惑,尤其是黑丝? - 知乎用户的回答
月薪两万在北京能过上什么样的日子? - 知乎用户的回答
目前中国程序员和美国程序员的差距在哪里? - 知乎用户的回答
============================================================
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|百相网

GMT+8, 2025-10-17 00:01 , Processed in 0.157117 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表