都 2026 了,还在考算法?
最近被邀请去帮其他部门面试。题目一看,还是熟悉的配方:两轮 coding、一轮 design、一轮 leadership principle。
Zoom 里,candidate 正在共享屏幕手写 LRU Cache,我脑子里却在想另一件事:这个人如果入职了,他每天的工作有多少跟眼前这道题有关系?
最近被邀请去帮其他部门面试。题目一看,还是熟悉的配方:两轮 coding、一轮 design、一轮 leadership principle。
Zoom 里,candidate 正在共享屏幕手写 LRU Cache,我脑子里却在想另一件事:这个人如果入职了,他每天的工作有多少跟眼前这道题有关系?
昨天我做了一个小实验:让 Claude 和 Gemini 围绕”谁是最好的 AI”这个话题自由辩论。
为了实现这个实验,我写了一个叫 Agora 的小工具。它的原理很简单——用 Puppeteer 同时打开两个浏览器窗口,一个登录 Claude,一个登录 Gemini,然后自动把一方的回复喂给另一方,让它们来回对话。就像古希腊的 Agora(广场)一样,给两个 AI 一个公开辩论的场所。
Alphabet 刚发了一支百年债券。
没错,100 年。上一次科技公司干这件事,还是 1997 年的摩托罗拉——那也是摩托罗拉最后一年被认为是”大公司”。Michael Burry 立刻在 X 上发了一条警告,暗示 Google 可能在重蹈覆辙。
上周有个朋友看完我的博客,发消息问我:”你哪来这么多时间写这些长文?”
我回了三个字:没时间。
然后他更困惑了。
事实是,这些文章确实是我”写”的——但不是我一个字一个字敲出来的。它们是我跟 AI 对话的产物。我负责想法和判断,AI 负责把它们变成完整的文章。
Jim Cramer 在 2008 年 3 月 11 日对着镜头斩钉截铁地说:”不!不!不!Bear Stearns 没问题。别把钱从 Bear 撤出来,那太傻了。”
五天后,Bear Stearns 以每股 $2 被 JP Morgan 收购,不到前一天市值的 7%。
前几天提了一个 PR,是一个 MCP Server 的实现,从设计到编码到测试,前后大概花了 1 小时。同事看到 PR 后,在 Slack 上 @我说:”这也太快了吧?我研究了好几天都没搞明白 MCP 的 transport 怎么接。”
最近在跟团队讨论 AI 辅助开发的时候,话题突然跑偏到了一个更宏观的问题:如果未来所有软件都支持 Agent,那我们现在做的这些 App 还有存在的意义吗?
这个问题乍一听有点危言耸听,但仔细想想,却让人后背发凉。
最近这一年,AI 辅助编程工具如雨后春笋般涌现,从 GitHub Copilot 到 Cursor,再到 Claude Code,每一个都号称能让程序员的效率翻倍。作为一个在代码世界里摸爬滚打了 20 多年的老兵,我不禁开始思考:当 AI 能够理解我们的意图并自主完成任务时,我们的角色是否也应该随之改变?
前段时间写完《亲眼见证程序员职业的终结》后,收到不少私信。有人问技术细节,有人讨论 Claude Code 的用法,但问得最多的是一个更根本的问题:
如果 AI 真能做到 Staff Engineer 的水平,那我们还能做什么?
自从用 Claude 完成了 Graphite – 基于 JVM 字节码的静态分析框架,工程质量和解决问题的方法和效率着实把我给震撼到了,然后又让它用 Rust 写了 Rustyman – 面向 AI 的网络代理服务,效果也很是出奇的好,名副其实的 10x 工程师。于是,便产生了一个大胆的想法 – TestPilot,在纯 JVM 上运行 Android APK 。拿到需求后,它便进入了 Plan 模式,根据对需求的理解提出了双层架构的方案,然后规划了 Road Map,分了 3 个阶段来进行,从 Phase 1 - MVP 到 Phase 3 - Production Ready。在 MVP 阶段表现跟前两个项目一样丝滑,到了 Phase 2 一开始风风火火的重写各种 Android 系统类,也没觉得有什么不对,逐步完了 Activity, View, Fragment, ViewPager, RecyclerView 的重写,接下来它提出要重写 ConstraintLayout 的时候,我意识到不对劲了– 重写系统类我能理解,但为什么要重写一个二方库?ConstraintLayout 并不属于 Android Framework?于是便跟它一起仔细地 review 了整个方案,才发现它对底层依赖的 layoutlib 的能力不太了解,才提出重写系统类的方案,这不禁让我开始思考一个问题:Claude 的能力边界到底在哪里?