谷歌的好消息和坏消息,来得都很突然。
本周五,谷歌母公司 Alphabet 公布了第 1 季度财报:营收为 805.39 亿美元,较上年同期的 697.87 亿美元增长 15%,创 2022 年初以来最快增速——同样是发布财报,Meta 股价暴跌 15%,谷歌却由此正式跻身进入“2 万亿俱乐部”!
一直以来,Alphabet 持续大力投资 AI,在其搜索和诸多服务中都添加了生成式 AI 功能。在财报发布会上,谷歌 CEO 桑达尔·皮查伊还特意强调了 AI 的关键性:“我们在 AI 研究和基础设施方面的领导地位,以及我们的全球产品足迹,使我们为下一波 AI 创新做好了准备。”
因此很难料想到:在如此坚定投入 AI 的背景下,谷歌突然解雇了整个 Python 基础团队?!
在此,借用 HackerNews 上一位网友的锐评:“谷歌是一家 AI 至上的公司;谷歌的未来与其 AI 产品紧密相连;所有 AI 都是用 Python 写的;而谷歌解雇了整个 Python 团队。”
为了降低成本,在慕尼黑重建新团队
谷歌 Python 基础团队遭解雇这件事,最早是一位名为 Thomas Wouters 的谷歌 Python 工程师爆料的。从个人介绍来看, Thomas Wouters 不仅是谷歌 Python 工程师,还是 Python 指导委员会成员,也是 Python 3.12 和 3.13 的发布主管,负责其整体发布流程。
日前,Thomas Wouters 在社交平台发布了一个动态:
这是艰难的一天。当与你直接共事的每个人,包括你的经理,都被裁员——哦,不好意思,是“角色被削减”,而你却被要求安排他们的替代者入职,这些人被告知要在不同国家担任同样的职位,而他们也并不乐意。
这条动态下,一位业内人士询问 Thomas Wouters 的下一步计划,以及是否需要帮助新员工建立工会等,他回复道:“新团队在慕尼黑,他们有一个工作委员会,我们已经通知了那里的相关人员。现在,我一边想办法为老团队做些什么,一边尽量不给他们添麻烦。”
结合其他知情人士的补充,即谷歌已经把原本在美国的 Python 基础团队解雇,并在德国慕尼黑重建了一支新团队——至于原因?从团队的重建地点来看,大概率是为了更低的用人成本。
谷歌裁掉了他们的 Python 基础团队,并要求培训慕尼黑团队的替代人员。这与几周前财务部门的裁员类似,一些职位被转移到了成本更低的国外。
Thomas Wouters 爆出这个消息没多久,就迅速传遍了相关开发者社区:一时之间,几乎全是震惊并为其不平。
其中,Meta 杰出工程师、PyTorch 之父 Soumith Chintala 表示大为不解:“谷歌裁掉了整个 Python 基础团队,WTF!这个团队似乎已经完成了很多对谷歌内部也至关重要的工作。”
在了解到谷歌打算在慕尼黑重建团队后,Soumith Chintala 感慨,这就是典型且悲哀的大公司作风的“地点重构”。但他依旧认为,“基础/核心语言工程师很难被取代——他们对复杂的代码和社会动态有着深刻的了解,而这些是很难写下来的”。另外他还表示,这对其他公司是一个抢占人才的机会,且“Meta 已开始接触,但可能无法吸收所有工程师”。
不
到 10 人的
Python团队,长期人手不足
听闻这个消息后,也有人提出疑问:“我很好奇 Python 团队是做什么的?让一个团队专门负责一种编程语言并不合理。”
对此,有热心的开发者科普:几乎所有的 FAANG 公司,以及许多规模较小的公司,都为他们认为重要的每一种编程语言组建了团队。像谷歌,就有 C++、Rust、Python、Java、JavaScript 等多种编程语言的团队。而 Python 团队“通过修复上游漏洞、减少内存消耗等方式,打造更好的 Python,将 Python 内部安装升级到最新版本,确保升级顺利进行,并向上游提交语言功能建议,确保至少谷歌的用例会得到考虑。”
在这条评论下,一位谷歌 Python 团队内部员工 @compiler-guy 也出面,盘点了他们这个团队所负责的所有工作:
除了对 Python 上游项目的贡献之外,我们还承担了以下工作:
- 我们在谷歌内部维护了一个稳定的 Python 版本,确保整个单一代码库都能与之兼容。我在团队期间,我们从 Python 2.7 升级到 3.6,再逐渐过渡到 3.11,每次升级都需花费数月至一年以上的时间。因为谷歌有规定,任何提交的代码都必须对引起的所有问题负责。
- 我们还在维护相关的工具,确保数千个第三方包能持续从开源版本中更新。对于需要谷歌特定修改的包,我们还管理了补丁队列。
- 我们还定制了一些工具,如 pylint 和 black,来适应谷歌的编码风格和整体代码库的需求。
- 我们为 pybind11 做出了贡献,并维护了一些用于 C++ 集成的工具。
- 我们开发并维护了 Python 的构建系统规则,包括一个重大项目——把 Python 规则完全迁移到 Starlark 代码,使其不再依赖于 Blaze/Bazel 的核心引擎。
- 我们还开发并维护了一个类型检查器(pytype),它能在没有类型注释的代码上进行推断,能处理极大规模项目,采用逐文件处理的架构(这是我在谷歌的主要职责)。
- 我们还在数亿行代码上执行了自动化重构工作。
而这些,仅仅也只是我们职责的一部分:
我们还为谷歌内的 Python 用户提供支持,帮助解决复杂问题,指导新人正确入门。此外,我们还与多个团队合作,包括机器学习和 AI 团队、Colaboratory 和 IDE 团队、与 Python 绑定集成的团队如 protobuf、希望为客户提供 Python 运行环境的 Google Cloud,以及需要在庞大的 Python 系统中保持高性能和可维护性的 YouTube 等众多团队。
在大致介绍了 Python 团队所承担的工作后,@compiler-guy 还补充说,“这些工作都是由不到 10 人的团队花了几年时间完成的”。尽管人手一直不足,但他们还是因为热爱这份工作和团队选择了长期留下,并且“团队管理者努力确保我们工作与生活的平衡,推崇「持久战而非冲刺战」的工作方式,还做得非常出色”。
在最后,@compiler-guy 感慨道:“这是我做过最好的工作,我将深深地怀念它。”
Flutter 团队也“在劫难逃”
除了 Python 基础团队,据说谷歌的 Flutter 团队也没能逃过这波裁员。
不同于 Python 基础团队遭解雇的不解和惋惜,不少网友对 Flutter 团队被裁表示:“Flutter 就是个笑话,所以这是个好消息”,“Flutter 还有那么多问题要解决,裁什么裁,谷歌应该加大对它的投入吧!”
针对这个传闻,今日 Flutter 和 Dart 的产品经理 Kevin 在社交平台亲自回应:
裁员至少是在我们团队之上的几层决定的,影响了很多团队。很多好人得到了坏消息,很多伟大的项目失去了员工。Flutter 和 Dart 受到的影响并不比其他人多或少。这是艰难的一天……艰难的一周。
就在我们失去同事和朋友的同一天,我们还看到了演示和新东西的运行,以及关于新客户的讨论,这真是太疯狂了。我们很难过,但仍在努力进行 I/O 及其他工作。我们知道,你们非常关心这个项目、这个团队以及我们共同建立的强大生态系统。
你们很紧张,我明白,我们都明白;你们将赌注押在 Flutter 和 Dart 上,我也是,谷歌也是。
对于这个回答,再结合谷歌长期以来不断淘汰各种产品(“Killed by Google”网站中收录的谷歌已淘汰产品数,已高达 295 个),有用户提出担忧:“我相信每个人都只想知道一件事:谷歌内部是否有人提议要杀死 Flutter?这种想法是否出现过?如果他们这样做了,我想这是人们最后一次使用谷歌制作的东西。”