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

/···以下内容转载于某乎博主,该文章也有很多大佬们的回复在我看完该文章之后感慨万千,值得思考···/
链接:https://www.zhihu.com/question/20941966/answer/2330615953

【回答1】

回复者:赵劼

16.4W+关注,700+赞同

不抖机灵地说,唯一的差距是英语水平。

【回答2】

回复者:王亚晖

18.7W+关注,2260+赞同

我在美国工作过、创业过,在中国工作过,创业过,在 freelancer 上发过外包接过外包,维护过开源项目

顶尖工程师水平

美国 > 中国 > 日本 > 欧洲 = 韩国 > 印度

平均水平

中国 = 美国 > 欧洲 = 印度 > 日本 = 韩国

大型互联网公司技术能力

美国 > 中国 > 剩下全加起来

无论公司角度,还是计算机技术能力角度,现在世界上只有两个国家能放在一起说,一个美国,一个中国。

【回答3】

回复者:Joseph Holy,Apple-inc SDE

3.4W+关注,350+赞同

在山景城参加一个小朋友的编程活动,小孩子们玩得家长拽都拽不走。

7-10岁的孩子们问:

你们用蓝牙还是Wi-Fi?

在什么系统上可以编程?

可以控制我的恐龙机器人吗?

无人机飞那么远也可以连接吗?

...

看看我们7-10岁的孩子们都在干嘛!

这就是差距。

【回答4】

回复者:IthilDawnstar

470+赞同

在stackoverflow上提问,哪怕多弱智的问题,只要配上详细报错内容,都能收到各种人连篇累牍的回答,甚至可能连原理都巴不得揉碎了告诉你…… 他们是真的热爱这件事,也希望大家都能做这件事。

中文这区只会:

你不会自己搜吗?

伸手党,gun吧!

看不懂报错嘛?文盲?

这个事情是有门槛的,学不会就别学,不如埋了吧!

...

这,就是差距。

【回答5】

回复者:硅谷IT胖子

20W+关注,720+赞同

飘在美国的美帝原装程序员强答一波:

第一个是语言问题,我说的是英语。中国程序员在单挑全世界,因为太多程序员看不懂英文。中国程序员获取信息的壁垒,是要高得多的,即使Google开放了又如何,大部分人还是看不懂。所以中国人的技术其实是相当厉害的,因为信息的接受要落后于所有英语国家,包括印度,但作出的成果却是世界第二的。

第二个是职场文化问题。中国官本位,认为管理高于技术,美帝其实也这么认为,但是技术人员地位高很多。美国的很多资深程序员有机会也不愿意做管理,认为管理更难、更累、风险更大、还不容易跳槽,收入却没有本质上的提升,所以其实是把人才留在技术方向。

第三个是管理水平。中国人的技术不弱于美国,但是管理差得多。主要是文化和历史原因比如接触西方太晚。我在微软时跟国内的外包公司打过交道,带他们干活,发现工程师还是很可以的,至少性价比是相当高的,但是管理混乱,管理人员大多数油滑、又贪功,缺少真正的责任感。美国我见到的各公司的管理阶层(除部分在微软外)都是精英,对各方面的把握都非常精准。所以,公司不会因为过大层次过多而降低效率。

第四个是社会差距。美国是技术的原产地,因此技术和新的模式是天然和社会状态匹配的一——比如诚信水平和隐私保护、立法等。所以,Google成为了技术创新公司,百度成了医药行业公司。这里不是贬低百度,Google不是不想做医疗行业(美国最赚钱最黑的行业),是有人不允许啊。Google卖过药,结果被罚了几十亿,老实了。

【回答5】

回复者:硅谷IT胖子

20W+关注,720+赞同

飘在美国的美帝原装程序员强答一波:

我是在美国工作过两年,回国经历了逆文化冲击,现在勉强算是适应了国内互联网公司的节奏。随便聊聊,没有崇洋媚外的意图,只是刚好最近被剥削得很不爽,趁机吐槽一下。

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多岁的年轻人,检查出来啥的都有,胆囊炎、结石、痛风。。。前几天还有一个要好的同事请假去做痔疮手术的(捂脸),据他说是因为久坐,加班经常吃小龙虾。
  • 相比之下离职率高太多了,每个月都有几个认识的同事离职,跳槽的、转行的、回老家躺平的。
  • 除了领导们,几乎每个人看起来都很焦虑,都想着退路,想着搞点什么副业。

至于会不会趋于一致,个人认为是时间的问题,但是我们这一代还能不能等到,要看身体好不好了。无论怎样,一定保重好健康。

【回答6】

回复者:Jeff Tao

2W+关注,1100+赞同

我自己作为软件工程师在美国芝加哥Motorola, 3Com等公司工作了10年,08年又回到北京创业至今,过去的一年多,在北京和美国硅谷两边跑,因此对中美的软件行业都比较了解。我来从自己的视角回答一下这个问题。

从软件产品的产值、品牌的影响力来看,无论是应用软件还是基础软件,中美差距相当之大。而据统计,中国软件工程师数量大约有700万,美国软件工程师大约440万,中国程序员加班普遍严重,而美国加班、超负荷工作的也有,但不是普遍现象,从这一角度来看,中国软件工程师的人效是远低于美国软件工程师的。是能力差距太大吗?我觉得未必,据我所了解,中国的程序员普遍的比美国程序员好学、努力。从我的观察来说,我认为造成这种差异化的原因主要还是因为学习和工作方法论不够先进。

技能高度专注

在美国,一般的开发工程师与中国的工程师相比,真就是不思进取,不仅不996,也很少有主动学习的。我曾共事过的美国同事,以及我现在打交道的很多美国朋友,年龄大都超过50,一辈子都是只做一件事情,就是写程序,从没想过换行,也从没想过自己去创业或成为统领八方的高管,即使有些做了director或是VP,做些管理工作,仍然能随时写程序。

这些美国程序员,由于10年甚至20年在一个细小领域的长期积累,虽然他们工作时间上是955,但在他做的那一小块工作里,是绝对专业,是特有效率的,而且一些技术的硬骨头还只有他们能啃下来,与一些新手相比,他们不996,也是十倍程序员,是最有价值的程序员。

而在中国,35岁程序员是个永恒的话题。从学校毕业,写了10年程序,就觉得没法再继续写下去。无论自己还是周边的朋友、同事,认为还继续写程序,做些具体的事情,就是职业生涯的失败,无法做到管理层,就要改行。但35岁的程序员,正处于人生技术的巅峰,不仅有了经验,精力还十分旺盛,学习能力也没衰退,就放弃了,不仅是个人的损失,也是中国软件行业的损失。

我自己也是一个典型。毕业离开学校后,我只做C语言开发,而且只在UNIX系统上做。到目前为止,我几乎不碰其他编程语言,也几乎不碰IDE类的研发工具,而是vim, cscope, gcc, gdb, valgrind几个研发工具用了快30年。任何时候,只要给我一个unix的terminal,不用翻任何参考资料,不用Google,我就能马上写、debug程序。如果抹掉我的真实背景,去面试任何一个C语言开发岗位,我相信没有哪家公司不会录用我。这就是我2016年底,决定开发TDengine的时候,选择C做开发语言的原因;是我一个人,在49岁的年龄,进行第三次创业,两个月就能写下近1.8万行C代码,打造出目前所做产品——核心为高性能时序数据库(Time Series Database)的物联网、工业大数据平台TDengine原型的根本原因;也是我从不惧怕来自对手的产品竞争的原因,因为只要产品有不足,我自信一定能把它解决。

对个人而言,长期的专注产生的价值远超过追逐时髦的收获。只有成为一个细分领域的绝对专家的时候,你的身价才有市场溢价的可能。但要做到专注,不受外界的诱惑,也是十分不易,专注后要成为专家更是不易。考试80分容易,从80分到90分,要多付出一倍的努力,从90到100分,可能要多付出好几倍的努力。但世界只会记住第一名,三名后就完全没有了溢价的空间。

对于TDengine团队,我倡导的就是追求卓越,任何一项工作,无论是代码、还是文档、技术博客,都要达到全球同行的水平,而且要超越他们。我最不想听到的是,与对手相比,我们相差不大。

个人的全球视野

对于程序员个人而言,全球视野以及在全球同行的影响力也是极为重要的。中国的程序员普遍比美国程序员好学、努力,但在全球的影响力就是不在一个层级。

有两大原因,一是技不如人。中国程序员大部分是看中文的资料、教材、论坛、技术博客。而在IT领域,美国毫无疑问是领先的,中国只是追随者。任何新的技术翻译成中文,甚至变为教材之后,已经不是最前沿的技术了。因此中国程序员的技能相对美国的程序员,总是慢上半年到一年。作为后来者,你开发的产品的创新性就是不够,自然没什么人理你,你的价值也大为缩水。

另一个原因就是在全球舞台,发声太少。中国程序员群体庞大,并不乏技术高手,不乏爱写技术博客的人,但写出的内容基本都是中文,GitHub上有好几个火的项目,所有信息都是中文,这样中国之外的程序员都不会关注。过去的一年多,我参加了很多欧美的IT会议、展览,很少见到来自中国的程序员。几大主流的IT交流平台,比如hacker news, reddit等,包括LinkedIn, youtube上,发声的中国程序员寥寥无几,自然没有影响力。

要解决这个问题,要能与全球同行交流,得到认可,程序员在技术上就是要养成看英文、写英文的习惯。但遗憾的是,连西安交大这样985的学校都对毕业生的英文不做任何要求。中国高校的一些计算机老师都热衷于写自己的中文教材,而不是直接拿全球最流行的英文教材授课,中国的出版社大多积极的翻译海外流行的英文技术书籍,而不爱邀请国内的程序员写英文版书籍,全球发行。这种大环境下,需要程序员自己严格要求自己,看英文、写英文,只要坚持几年,就不会有任何问题。

为推广TDengine,过去的一年多,我写了大约十篇英文的技术、产品相关的博客,我的同事也写了不少,在LinkedIn和其他社交媒体上分享后,TDengine独特的“一个数据采集点一张表”“超级表”“等概念总能获得来自全球同行的一些评论和赞赏,TDengine的超强性能也获得认可,因此我们得以认识了来自美国、德国、英国、比利时、印度等国家的很多同行。但数量还远远不够,博客质量也没达到全球热传的水平,这是我们TDengine在海外的推广比较缓慢的根本原因。如果有人爱写英文博客,热爱技术,欢迎加入到TDengine团队,我们急需这样的人才。

结语

只有专注于技术、拥有全球视野并乐意为世界发声,个人才能在全球同行中获得影响力,并充分展现自身价值。否则,无论是公司还是个人,都可能只能在产业链的末端。尽管工作时间长、工作强度高,但我们仍然无法超越像美国那样的工作模式(955 vs 996)。

中国拥有全球最大的程序员群体,而且大部分都爱学、努力,只要我们认识到专注和全球视野的重要性,并付诸行动,我相信中国程序员的人效和产出一定会高于美国的程序员。这样,中国就一定会创造出占领全球市场的软件产品。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值