如何在多个公司间做选择
如果你通过面试并拿到多个 offer,恭喜!接下来会遇到另一个“好烦恼”——在公司之间做选择。这里会给你一些决策因素参考。每个人的优先级不同,只有你能决定最适合你的选择。
做决定前一定要认真调研公司!
Compensation
首先是 compensation。大多数 tech 公司的技术岗位 compensation 结构相似:Base salary、Bonuses、Stocks、Sign-on。细节可看 Understanding Compensation。有些公司更灵活,会让候选人在更高 base 和更多 equity 之间选择。Base salary 最容易理解,无论公司好坏你都拿同样金额。Bonus 通常是 base 的百分比,所以对风险厌恶者来说,高 base 更安心。
Equity 也不一样。有些公司 vesting 是线性的(每年一样),有些公司如 Amazon、Snap 是 backloaded(前几年少、后几年多)。还要注意 cliff。Stripe 和 Lyft 最近改变结构,加速首年 equity payout,看起来很香,但其实有很多细节。
无论哪家公司,一定要谈,尤其是你有多个 offer。多 offer 是最强谈判筹码,必须用。详见 Negotiation。也可用 Rora 的 risk-free 谈判服务。
Products
公司在做什么产品?是否在你感兴趣的领域?大公司产品线很广,常见包括:广告系统、聊天、企业服务、视频、支付、硬件、领先 AI 工具、内部工具等。Microsoft、Amazon、Apple、ByteDance 也都覆盖这些领域。很多大公司规模足够大,会自研 infra 和内部工具,因为市面上的工具无法满足他们的规模。
不过,每个公司都有“DNA”级别的核心产品。若你明确想做某个方向,可以优先考虑:
- Meta/Facebook - 社交网络(Facebook、Instagram)、聊天(WhatsApp、Messenger)、Metaverse(Oculus)
- Google - Search、浏览器(Chrome)、Google Maps、云基础设施(GCP)、企业协作(Google Suite)
- Amazon - 云基础设施(AWS)、电商
- Microsoft - 操作系统、Microsoft Office
- Apple - 硬件、操作系统、服务(iCloud、Apple Music)
我个人更有动力做自己也在用的产品,因为我更懂用户视角,容易做出更好的工程/产品决策。
Prospective teams
公司产品多,但某些产品只在特定 office 做。例如 Google Singapore 主要做 Payments,如果你只想做 Search,那 Singapore office 可能不是最合适(虽然未来可 internal transfer)。详见下方 Transfers and mobility。
提前了解目标地点做什么产品和 team,有助于判断你未来的工作体验。
Company prospects
如果你的 compensation 里有 equity,公司前景会直接影响你的收益。公司未来是否能成功?是否存在阻碍增长的因素?
Career growth
公司晋升快不快?是否有成长机会?在小公司,你会戴很多帽子、做 0 到 1 的项目,适合想快速提升产品能力的人。但技术成长可能受限,因为小公司更关注产品交付而非大规模 infra(小公司不需要 Principal Engineer)。
有些公司晋升快、有些慢。有句俗话:去 Google “rest and vest”,去 Meta 加速职业发展。我个人经验也差不多。Meta 要求 E3 到 E4 2 年内、E4 到 E5 3 年内;Google 晋升更慢:L3 到 L4 >2 年,L4 到 L5 >3 年,L5 到 L6 >4 年。Google 的 terminal level 是 L4,所以压力更小。我身边 Google 的朋友还没到 L6,但 Meta 的朋友已经到 E6。Google 是学习“优秀工程师”的好地方(强调设计文档、测试覆盖、工程质量),Meta 适合 career-driven、愿意更拼来加速成长的人。
Company culture
Company culture 指领导层和员工的信念与行为。大厂文化各有特色:
- Google - 面试时评估 “Googleyness”:Doing the right thing、Striving for excellence、Comfort with ambiguity。Google 强调工程质量与 data-driven 决策。
- Meta/Facebook - 早期口号 “Move fast and break things”,后来改成 “Move fast with stable infrastructure”,平台成熟后更重视稳定。我在 博客 里详细写过。
- Netflix - 公开的 culture deck 在这里,核心是 people over process。像职业运动队,保留明星,淘汰表现一般者,不是“家庭式无条件包容”。
Engineering culture
对技术岗位来说,engineering culture 值得单独关注。
Gergely Orosz 提出 12 个点 来判断一家公司的工程文化是否健康:
- Equity 或 profit sharing - 员工是否有 equity?
- Roadmap/backlog engineers 可贡献 - 工程师是否参与 roadmap?
- Engineers 与其他 IC 直接合作 - 是否与 Design、PM、Data Scientist 等合作?
- Code reviews 和 testing - 是否常做 peer review 与测试?
- CI 和部署 - 是否有 CI 或工程师能推到 prod?
- Internal open source - 是否能跨团队访问/贡献代码?
- 健康的 oncall - oncall 是否可控?
- Technical managers - 经理是否有技术背景?
- Career ladder(>10 engineers) - 是否有清晰晋升体系?
- Parallel IC & manager tracks(>30 engineers) - IC 能否上升通道?
- Feedback culture - 是否鼓励互相反馈?
- Investing in growth - 是否有成长补贴、mentorship?
FAANG 基本满足所有 12 点。更多细节见 他的博客。
你最认同哪家公司的文化?
Work-life balance
一般标准是每周 40 小时、每天 8 小时,但有些公司压力更大、要求更多时间。有些中国公司著名的 996。很多 tech 员工加班没有额外报酬,所以更准确的算法是“时薪”而不是年包。
Google 以节奏慢、适合 “rest and vest” 著称,而 Amazon 在工作生活平衡评分只有 C-。
Transfers and mobility
公司是否有全球办公室?是否支持 relocation?小公司通常只有一个 HQ,但有些公司允许 remote,甚至全 remote。Meta、Google、Apple、Stripe 都是全球化公司。Meta 和 Google 的 mobility 非常高,美国、伦敦、特拉维夫、新加坡等都有大型 engineering office。我在 Meta 的某位 manager 甚至在 四个 office 工作过!我自己也在疫情前从 Menlo Park 调到 Singapore,一些 Meta/Google 朋友也做过类似搬迁。