先问是不是,再问为什么。

难道美国的程序员就不加班吗?他们就一天八小时工作,还想来就来,想走就走?非工作时间完全找不到人?还有什么食物饮料都免费提供?

让我来告诉你真实的情况吧,还…

真是这样的

加班文化应该是中美两地最明显的不同了,形成这种差异的原因不是一两句可以讲清楚的。我在两个国家都工作过,也在不同岗位工作过,所以就尽量从不同角度来简要说一下。

国内程序员加班严重,问题首先不在程序员这个群体。

产品层面拍脑袋决策多

产品层面,拍脑袋决策多,美其名曰:互联网思维、小步快跑、试错思维,其实是没想清楚,反正我就需求一提,技术团队来做,上线后成功了我是产品天才,失败了也没啥坏处,找个借口说什么“互联网市场变化太快”也能搪塞过去,或者找个新项目,继续画大饼。

国内的产品经理实在是太多了,很多还是刚毕业的小鲜肉,没有一点经验积累,凭借天马行空的想象力,提一个需求,就能让一帮技术专家为之操劳好几个月去实现,这简直是不可思议的。即使产品经理很厉害,但人数一多,每个人都要业绩,都拼命想点子、提需求,技术团队怎么能招架得住那么多需求呢。于是就会这些现象:

  • 节假日来了,我们上一个活动,或者节日小彩蛋功能。

  • 竞品上了一个 xx 功能,看起来不错,我们也抓紧上一个。

  • 10个产品经理同时跟你说:这个需求我跟老板对过了,xx 之前必须上线。

产品经理没有想清楚某个功能的价值,或者带来的收益不痛不痒,而技术团队则需要为此付出巨大的心血,也就是加班。当然这也不一定是产品经理的错,国内公司,老板的指令太多了,不说了,你懂的。

在美国这边,产品经理大多是行业经验非常丰富的人,要么是从工程师转过来,要么是从多年的商业领域经历然后读个 MBA转过来。上线一个功能,经过严谨的理论推演、多轮前期调研、科学的 AB test,从提出 idea 到最终用户看到更新,经常耗时半年或一年。很多不成功的 idea 还没面市,就因为数据不好而“胎死腹中”。这样一方面提高了产品需求的质量,另一方面也给技术团队足够多的时间来设计和实现一个可持续发展的架构。

技术团队话语权低

管理层在做决策时,往往更重视产品更新迭代,而忽视技术的建设。

比如说技术团队有100个小时,老板可能会把90小时都投入到实现产品功能,给技术优化、修补技术债务。于是就会出现技术实现非常粗糙的情况,举个栗子,给你一周时间,实现一个 IM 功能,你还会考虑什么模块化、可维护性、性能优化之类的吗?当然是怎么快怎么来,百度一下有没有别人实现过的代码,ctrl+v / ctrl+c,一点运行,诶,跑通了,上线。

所以国内很多程序员看别人的代码,感觉都是一团 shit,完全没法维护,干脆自己重写一个。

技术老大能跑到老板面前说“我们先把产品需求停一停,让我们的技术团队好好地优化一下基础设施吧。”吗?只要他不是傻子,都不会这样说。

话语权低还体现在,对产品几乎没有决策权,甚至不能质疑产品决策,提反对意见,总会被产品经理各种理由挡回来,产品经理有一句话终结争论的尚方宝剑:这是老板要做的。

久而久之,技术债务越堆越高,bug 越来越多,程序员不加班,谁加班?

而美国公司的现象是,技术话语权非常高,一个没想清楚的产品需求,能被技术团队直接打回去。同时,技术团队可以自主地花很多时间在技术优化上面。产品不能按时上线?经理说:没关系,延后,按照最优的技术方案来推进。有时候你想赶紧上线,提交一段粗制滥造的代码,会被同事鄙视死,被老板骂死。

每个季度最后一个月,专门抽出精力,来弥补技术债务,产品需求放一边先。

在这样的环境下,短期看起来效率低,但长期是最高效的。国内是“欲速则不达”,美国是“慢工出细活”。

技术基础设施差

知乎上有一个比较热门的讨论:腾讯的技术建设是否落后?

这不但是腾讯的问题,实际上绝大部分公司的技术基础设施都非常差。

有多少个公司能养一个专门的 Infra 团队?有多少个技术团队能专门成立一个小团队,进行 Infra 优化?即使有,有多少个公司能保证 Infra 团队的成果能在全公司推行?

我相信能做到这样的公司是凤毛麟角的。

中小公司不必说,在这样高度竞争环境下,哪有财力养一个不能直接带来 KPI 提升的团队,即使有钱,也没时间搞优化。

而大公司呢,即使腾讯这样的体量,有一个 TEG 事业群做基础设施建设。但是现实情况是,依然没有全公司通用的内部工具,各个团队依然在重复造轮子。阿里算是做的很好的,前几年开始推行的大中台战略取得了显著的成果,解放了各个产品部门的生产力。

计算机程序这种东西,一个人写和一群人写,几千个用户使用和几千万用户使用,是完全不同的概念。没有强大的基础设施建设,技术团队越壮大,效率越低,用户数越多,bug 越多。出来混总是要还的,今天没有人关注基础设施,未来就会又无数个程序员为此加班。

而说回美国这边,专门的 Infra 团队几乎是每个公司的标配了。这也是工程师文化的结果,创始人、高管团队一定有很强的技术背景,走过了很多弯路,所以非常重视基础设施建设这种“重要而不紧急”的事情。

畸形的职场文化

最后再来说说文化的差异。

美国人非常注重个人和家庭,牺牲自己的时间来给公司加班,这是不可能的。一到下班时间准点走,非上班时间完全不查邮件。很多公司入职培训就专门强调了怎么平衡工作和生活,其实就是说:下班时间就是你的时间,你有权利不处理公司事务。

反观国内,不知道从什么时候起,加班就是约定俗成的。还出现了看似很有道理的人生经验,比如“年轻人就应该多拼一下”,“加班能学到更多东西,对未来也有好处”。

加班,竟然成了光荣的、可以拿来攀比的现象,比如说加班到凌晨一两点,拍个照,发个朋友圈,收到老板的点赞很开心。而管理者呢,还就吃这一套,谁加班多、会来事儿,考核的时候就更有好处。

在这种加班氛围下,甚至还出现了“伪加班”。早上十点到公司,上个厕所、看会儿新闻、刷刷朋友圈,就到十一点半了,什么工作也没做,然后准备吃午饭;饭后逛一逛、睡个觉,又到2点上班时间了,写会儿代码、刷刷知乎,一下午又过去了,很多公司有免费晚餐,吃完饭回来7点左右,再写写代码,磨到10点。哦耶,又是充实的一天呢,发个朋友圈给老板知道。

其实一天有效工作时间还不够8小时,但就是“加班”了。

综上,大概就是国内加班严重的原因。

我觉得这也是某个时代特有的现象,谁都没有错,谁也没有办法改变这种情况。在国内这样一个高度竞争的环境下,公司为了生存必须跑快点,个人为了发展必须多做事,毕竟你不做就会有千千万万的人来抢。

等到中国真的发展到美国这样的发达程度,生存的减小了,才有资格谈更好的生活品质。

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

  1. 中国程序员超 5000 万?北上广等一线城市 IT 岗位已开始饱和过剩?

    作者 | 纯洁的微笑 来源 | 纯洁的微笑(ID:keeppuresmile) 中国程序员数量有多少,一直是一个谜. 中国有多少程序员? 这两天在知乎上闲逛,看到这样一个问题比较感兴趣,我们来一起研究 ...

  2. 马斯克亲自审核代码,裁员50%员工,硅谷程序员的福报来了

    就在刚刚过去的周末,即美国时间的11月4日,马斯克正式开始对推特进行大规模裁员. 据推特安全部门负责人透露,本次的裁员比例高达50%,也就是说将会有超过3500名员工被裁掉.据称,每个人会有三个月薪水 ...

  3. 为什么美国程序员不用加班,而中国程序员就只能996?

    点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...

  4. 中国程序员VS美国程序员,作为程序员的你有何感想?

    说起程序员,大家都会想到一个画面:这样一群人对着电脑加班,他们穿着格子衫,工资高但却没时间花,常常迷失在996中无法自拔. 那么在国外也是这样吗? 中国程序员VS美国程序员 在国内,程序员到了35岁, ...

  5. 神操作!美国程序员把工作外包给中国程序员,上班摸鱼吸猫年入 20 万美元

    作者 | 英国那些事儿 来源 | 转自英国那些事儿 话说,今天在 Reddit 上看到一个无比骚的操作... 这事发生在 2012 年,事情是这样的- 主人公是个叫 Bob 的美国程序员. 他 40 ...

  6. 中国程序员 VS 美国程序员,差距就在这五点

    心态差距 近年来由于互联网的迅速发展,全国各地,IT人才的需求量都出现了飞跃式的增长,程序员的薪资也明显高于其他行业. 但在国内,真正因为热爱编程而从事这份工作的人其实并不多,很多人学习程序想得都是这 ...

  7. 美国程序员把工作外包给中国程序员,啥也不干年入 20 万美元,这操作也是骚...

    公众号关注 "GitHubDaily" 设为 "星标",带你了解技术圈内新鲜事 转自英国那些事儿 话说,今天在 Reddit 上看到一个无比骚的操作... 这事 ...

  8. 【java毕业设计】基于javaEE+原生Servlet+MySql的企业员工信息管理系统设计与实现(毕业论文+程序源码)——企业员工信息管理系统

    基于javaEE+原生Servlet+MySql的企业员工信息管理系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于javaEE+原生Servlet+MySql的企业员工信息管理系统设计 ...

  9. 中国程序员VS美国程序员,差距在哪里?

    心态差距 近年来由于互联网的迅速发展,全国各地,IT人才的需求量都出现了飞跃式的增长,程序员的薪资也明显高于其他行业. 但在国内,真正因为热爱编程而从事这份工作的人其实并不多,很多人学习程序想得都是这 ...

最新文章

  1. MySQL数据库job怎么写_数据库中job是什么意思
  2. python可分组字典
  3. linux c 内核 ISO C90 forbids mixed declarations and code 警告
  4. OOP设计模式[JAVA]——03职责链模式
  5. python字符串/列表/字典互相转换
  6. NVisionXR_iOS教程三 —— NVisionXR渲染一个立方体
  7. django前后端结合_简单4步用FLASK/Django部署你的Pyecharts项目
  8. 真叫人头秃!Python也有pdb
  9. WordPress 后台评论如何自定义搜索条件
  10. cass道路设计教程_cass道路曲线设计
  11. SSIM公式:结构相似性计算原理,基于SSIM的图像质量评价
  12. 基于java水果网店管理系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  13. 云计算基础与应用 第五章 云存储
  14. 聊一聊固态硬盘的那些事
  15. java web象棋教程_【Java学习笔记】实战——网络象棋
  16. 关于@Vaild注解的使用
  17. MySQL8免安装版安装教程
  18. shell的一些基础
  19. 【20220207】【信号处理】希尔伯特变换定义及解调原理
  20. UML用例图-用例图

热门文章

  1. 微软Azure CDN现已普遍可用
  2. 《计算机科学概论》—第3章3.2节数字数据表示法
  3. redis安装及用Redis Desktop Manager连接Redis
  4. RDS最佳实践(三)—如何制定相关的流程来规范RDS的使用
  5. memcached与spring集成
  6. Pattern-No.03 设计模式之策略模式
  7. [WPF]WPF中材质制作——图片和矢量图之争
  8. windows 7 安装及.net开发环境搭建
  9. Jar文件的小小总结(原创)
  10. ora-01033:oracle initializationg or shutdown in progress