为什么美国程序员工作比中国程序员工作轻松、加班少?

这个题目能出书了。两边的IT的企业五花八门,形形色色的都有。大部分答案都是抱着批判的态度。主要谈谈自己的看法吧。毕竟我也只在一家美国公司工作过,国内的工作经验为0,不足的地方希望指正。

社会形态的差异

社会形态的差异肯定是原因之一。美国是一个很讲究Work Life Balance(工作生活平衡)的国家,人权大于公司的利益。所以如果企业如果过分“压榨员工”,是肯定会被劳工部告的。大公司只要有任何风吹草动,都可能惹上负面新闻。

比如,

Google paid female employees less than male colleagues​www.theverge.com图标

告的就是Google付给女性员工的工资低。当然男性员工也在告Google。

Google accused in lawsuit of excluding white and Asian men in hiring to boost diversity​www.usatoday.com图标

举这个例子只是说,在我们眼里,美国是一个非常“事儿逼”的国家。两国人民从小接受的教育非常不一样,美国人偏理想主义,而中国人比较现实主义。

美国的企业非常怕事,哪怕他们没错,他们都会花重金摆平这件事情。比如前段时间的UA事件,Starbucks事件,都很好的说明了美国企业有多怕事。所以过度加班这种高压红线根本不敢碰。作为一个企业CEO,该破产就破产。美国的企业是非常好“碰瓷”的,告自己雇主的事情是在太多了。在我们眼里,屁大的事情他们都能够上法庭。公司即使没有错,也会花钱摆平。不然一帮好事的媒体整天在显眼的地方报道这些新闻,非常影响企业的声誉。

企业是趋于利益的。而且有时候确实需要加班来满足需求。所以很多公司喜欢雇佣亚洲人和墨西哥人,因为这两种人即使加班也不会抱怨。很多美国公司用各种非美国人的Contractor和ICC也是这个道理。

当然美国某些公司也是加班很严重的,比如四大。但是(听说)美国的四大好像没国内累。只是相对而言。

美国人看重家庭大于工作,家庭比工作重要。所以那种牺牲自我,保全公司利益的行为是很少会发生的。

当然中国也不是最差的啦。日本加班比我们多多了。这边加班太多了。日本人讲究的是为了工作可以抛弃一切。要论程序员的幸福度:美国 > 中国 >>> 日本。

我没有见过美国码农的公会。也没见过罢工。。。

公会发达的是欧洲。法国是公会的巅峰。啥屁事,都罢工,而且完全不管后果。你能想象地铁和大巴司机罢工吗?整个城市会陷入大混乱。有一次考试,我辛辛苦苦背完了所有的概念,结果地铁罢工,考试取消。。。导致我第二周得继续再背一遍。

封装和抽象

大学经常学的Encapsulation(封装)也是主要原因之一!OOP编程里面的封装其实非常重要。美国这边的公司非常注重Encapsulation。最简单的例子就是,用web framework去写server比徒手用原生java sockets去写要容易多了。

很多公司都喜欢Everything As Service (把所有技术都封装成服务),然后把这些Service做成Platform(平台),然后模块化。比如在Google,所有的Infrastructure(架构)都被封装成Service了,使用起来只要关心业务逻辑和资源分配就行,非常省时间。在新的Server里面加Feature也只需要加一个加一个新的模块就行。相比而言,如果花大量时间去调各种开源软件的配置,会花大量的时间。Google的做Infra时间比Facebook长,Infra种类多余FB,这也是“Google比Facebook轻松一点的一个原因”。

每次开发产品,我都有种搭积木的感觉。从web framework,到pipeline framework,到monitoring和resource,基本都是非常直观的事情。偶尔有问题,一个邮件就能解决。

平心而论,硅谷的Infrastructure比国内好太多了,每个公司都有专门的组去认真研发新的Infra。所以硅谷的公司,只要不是太小,都多多少少有一些开源的项目。

凡是做Public Cloud Computing的公司,封装都不会太差。国内现在很多公司也开始做了。因为Cloud Computing讲究就是把自己Infra打包给外面的程序员使用,同样的功能,接口越简单越好。如果外面的人都可以很好的使用,自己人就更容易了。

中国企业的迭代速度快

硅谷技术强,但是产品迭代速度比国内差太远了。所以,Uber,Airbnb,Linkedin在国内的市场表现都不怎么好。很多技术壁垒不高的产品,比的就是用迭代速度去占领市场。技术壁垒高的产品,不是迭代速度能解决的。

中国的IT公司对用户的需求感知的特别快,他们清楚的知道用户需要什么。国内公司对竞争对手的动作也特别敏感(抄的特别快)。你会发现, 阿里,京东比Amazon的功能多多去了。饿了吗,美团也比Ubereats功能多多了。王者荣耀的新东西出的实在太快了。

Google的大佬很多都是工程师出生,重技术,轻产品。而硅谷大部分有特色的新型互联网企业早期都有大量的前Google员工,所以这也是硅谷的一个特色之一。

所以中国的IT和硅谷其实是两种IT。迭代速度和发现新的Use Case是中国企业的强项。为了保持这个优势,唯一的方式就是加班了。

其实科学的规划和合理的安排可以令每个人的工作量减少的同时令结果质量更高。

然而有些人就是不信,怎么办呢(摊手

国内很多公司的领导自己都没有想清楚就交代任务。自己多做1%,就可以让好几个手下减轻一半的工作量,稍微动脑子优化一下流程更是不得了。其实这就是领导能力差的表现,他们还不自知。真正的领导能力不是令人服从,而是让大家用正确高效的方法完成任务。

在国内做游戏都是外行指挥内行,做的越快越多改的越多

还不如直接拖到deadline之前做完,大家都没时间改,你好我好大家好

在国内,你做的快是工作不饱和,下次分配任务你会被增加工作量,而且你做的快还不能早下班,早下班就是没有集体意识

这种环境下怎么出效率出产品?

还有看楼下说开会的,国内开会现在也开,开会定了之后leader说改就改,你还不能有意见,因为人家说是对数据负责,改了之后的工期还要算在你头上,你上哪说理去?1、具有1-5工作经验的,面对目前流行的技术不知从何下手,
需要突破技术瓶颈的。2、在公司待久了,过得很安逸,
但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的。
3、如果没有工作经验,但基础非常扎实,对java工作机制,
常用设计思想,常用java开发框架掌握熟练的。
4、觉得自己很牛B,一般需求都能搞定。
但是所学的知识点没有系统化,很难在技术领域继续突破的。
5. 群号:570210627高级架构群备注好信息!
 

猜你喜欢

转载自blog.csdn.net/qq_41790443/article/details/82114580