首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

盘点中国程序猿与美国程序员的职场差距,谁的能力更强?

中国30岁的程序员觉得再不升经理就要转行;美国50岁的程序员还在安心写代码。中国30岁以上的程序员太多了,都混成老油条了,多招点应届生回来加班,挤走老的;美国50岁以下的程序员不够用了,需要加招50岁以上的,他们虽然加班少,但是经验足。中国按劳分配,老程序员不加班也不能加工资;美国论资排辈,老程序员没有功劳也有苦劳......

这些差异的背后,都暗示着中国程序员和美国程序员的哪些差距呢?千锋武汉小编告诉你。

心态差距

近年来由于互联网的迅速发展,全国各地,IT人才的需求量都出现了飞跃式的增长,程序员的薪资也明显高于其他行业。

但在国内,真正因为热爱编程而从事这份工作的人其实并不多,很多人学习程序想得都是这个行业火,赚钱快,入行门槛低。什么技术火就学什么,然后进入一个大公司,做几个成功的项目,积累工作经验,几年以后自己当个小管理,拿着十几万,或几十万的工资,再无追求的过着小日子就好。

甚至到了30岁,如果没能进入管理层,大多数人都会考虑转行,或仅靠自身的知识累积开始创业。

美国程序员大多数都是因为热爱编程行业而从事这份工作的,他们会专注某一个领域几十年。50岁以上的程序员还会安心待在同一个岗位写代码,专研技术。他们想法很简单, 对于编程这种事情更多的是那种单纯似的热爱。

影响因素:国外的程序员,专心写程序并专研,他的级别和工资就会年年往上涨,和做管理的人员没太大区别。国内的程序员这方面就杯具了,写程序的工资基本低于管理者,迫于现实的生活压力,不得不往赚钱更多的方向走。

资源获取

美国在资源的获取上有先天优势。Google和百度的话题就不多谈了,千锋武汉小编想谈的是语言的便利。同样的文档,美国人可以快速且精准的获取知识,而中国的程序员需要翻译。尽管现在大部分人的英语都不错,但毕竟不是母语,一本500页的英文书,可能读到第二遍的时候才能深入理解。

沟通能力

和美国程序员交流的时候,你能从他的切入点和具体思路很清晰的理解他的问题,在阐述问题的时候背景信息也给得相当全面,所以理解他们的问题比较简单容易。

中国程序员阐述问题时逻辑思维不清晰,背景知识没给全,讲了很多,但大家都get不到他要表达的重点,有些人一味的自顾自说,完全不去思考和理解别人给他提的建议。

影响因素:编程所用的英语,比较是美国人的母语;另外就是思维方式的不同。

解决问题能力

如果给我们中国程序员,规定好的方案,他们普遍完成的非常好。但如果没有具体方案, 完全是一个开放性课题,很多时候程序员会完全无法下手。

美国程序员这方面能力比较好, 他们的探索研究能力非常强, 经过一定时间的研究后, 能提出一套非常具体有效的方案然后一步一步去解决问题。

在一定程度上,这种差距就如同现今机器学习和真正智能的差距。机器学习可以解决很多特定领域的问题,模型可以优化得越来越好,但优化的尽头也不是真正的智能。

影响因素:两国教育方式的不同,一个善于解决问题, 另一个善于发现探索问题。

技术实力

工作初期两国程序员差距不大,5年是个分水岭,这之后开始出现变化了,在中国多数人工作个5-6年就开始琢磨转管理。虽然这5-6年我们代码上的时间,积累的经验可以说很多时候是高于美国程序员的。但在某一项技术上我们有多少人专研超过10年,所以在国内出现了程序员吃青春饭这种理论。

而美国程序员10年以上经验的人有的是。 例如,一个工作经验是30年,从dos时代就开发debugger一直干到现在, 一个24年工作经验外加5年的博士研究经验, 还有两个从毕业到现在一直从事CLR diagnostic api的开发到现在基本都干了十几年了。

在国内真的很难想象有这种团队。记得stackover上统计过,程序员的黄金年龄应该在40岁左右,但我们国内40岁的时候有几个还愿意写程序呢。

职业诉求

中国的程序员更需要关注物质回报,因为我们的文化强调尽早买房买车。欧美人在这方面要轻松自由得多,有大把的时间去尝试创造,但其实大部分人是不创造的,只是概率比中国大而已。

中国人妄自菲薄没有“创新”能力,是没有意识到自己到了创造力高峰的时候却被现实牵绊,我们用自己的青春和人家的大半生去比较,当然妄自菲薄了,人家可以投入的时间就比你多得多。中国程序员职业黄金时期所要面对的干扰非常大,首先是要让自己融入英语的技术圈子,其次是要应付一个不争气没追求强加个人的世俗文化。

评判程序员的标准

在美国,评价一个工程师的好坏不单单是考察他对系统了解的深入程度, 能解决什么难度的技术问题这么简单。同时,还有一些其他的要求。一个是领导能力, 一个好的程序员不应该只是自己完成feature, 同时也应该帮助或者指点其他组员克服技术上的难题。

另一个就是视野, 能够把握技术的发展方向, 根据这些把握产品的发展方向。虽然这个有点类似PM, 但和PM有区别:一个只是根据市场和客户的需求, 另一个是通过自己多年的开发经历进行判断。如Facebook的PHP hack项目,它们都是很多工程师的提出来的,而不是PM。

有时候,我们对于好工程师的评价往往只是简单认为技术好, 对系统了解就是好程序员。至于以上这两点并不是太在意。所以一句话概括是:我们认为你coding厉害, 你就厉害, 但老美有时候的想法是, 好的程序员并不只是coding厉害那么简单。

中国基层的技术人员,他们的水平远高于美国。解决实际问题的能力强,效率也高。但是高阶技术职位,例如架构师一类的,美国要高一等。因为在这样的职位上,中国技术人员往往专注于解决实际问题,而不是解决技术问题。总体来说,美国更注重把程序员培养成computer scientist,最起码也要做到engineer,而中国公司多是programmer。

长期来说,千锋武汉小编还是很看好国内的IT技术人员。但是由于环境所迫,很多上了一点年纪的技术人员会另谋他路;在思维方式上面,也比较急功近利。“路漫漫其修远兮”,在技术这条路上,重要的还是坚持。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180709A108HA00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券