湾区大厂程序员薪水构成level和对应期望
参考
本文转载自 https://zpjiang.me/2020/02/03/eng-comp-level/
转帖至此, 版权归原作者
新年伊始,周围不少小伙伴拿完 bonus,打算转行或跳槽,正好问到了程序员待遇、level 等话题,这里就硅谷几个大厂(谷歌、脸书、领英、亚麻、微软等)的薪水构成、程序员 level 以及职业发展做一些简单介绍。
薪水构成
科技公司的小伙伴们会用 TC,Total Compensation,来表示实际收入总包裹大小。TC 的计算方法各公司稍有不同,但无外乎包括以下几个部分:
- 基本工资 Base
- 年终奖 Bonus
- 股票 Equity (RSU/Option)
- 初始股票 Initial grant
- 新发股票 Refresh
基本工资 Base
这是写在入职合同上的固定收入,根据入职时的市场价、Level、面试表现、有无competing offer 等决定的。
升职后,基本工资会有所调整。在各大公司内部,不同的 level 对应一个范围,升值后有些公司会将 base 提高到下一个 level 范围的 p50,也就是中位数。
当然,具体情况具体讨论。比如,有些人在某一 level 待了很久,或者跳槽的包裹牛上天,很有可能他们现在的 base 已经是当前 level 的 high end(逼近下一个 level 的中位数),那升职后 base 只会微涨。
年终奖 Bonus
年终奖各公司计算方法不同,湾区的几个大厂或多或少可以按照这个公式计算:
bonus = base target_bonus_ratio individual_multiplier * company_multiplier + manager’s_tweak
其中,target bonus ratio 是固定的,level 越高,ratio 越大。Individual performance multiplier 是根据一年表现打分算得,company multiplier 是根据公司这一年基本状况算得。最后有些公司还有老板微调,每个小组会有一个 budget pool,根据小组成员贡献老板再稍微平衡一下。
Bonus 是对过去一年辛苦付出的肯定。
股票 Equity
股票收入主要包含两部分:
- 初始合同一次性承诺给予,分四年(或五年)按月/季度/年发放
- 各公司政策稍有不同,有些公司在员工入职一年后才开始按季度发(业内叫 one-year cliff),而有些公司入职第一个月就开始发
- 不是所有公司都等额发放,比如亚麻头两年 5% 和 15%,后面两年各 40%,Snap 也有类似规定
- 每年新发
- 每过一年,公司会根据员工表现,新发一定股票,同样也是分四年发完
- 新入职第一年,不是所有公司都给 refresh
- Uber 把 refresh 当成 bonus 的一部分,分 cash bonus 和 stock bonus
- 各家公司 refresh 规定都不太一样,会随着市场情况调整,具体情况具体讨论
Refresh 是对员工未来四年工作表现的期望。
其他
除了以上提到几点,刚入职是还会有一笔现金签字费,入职后一定时间内支付,主要由 negotiation(有无 competing offer、公司多么想招你)决定。
另外,还有各大科技公司著名的好福利,比如健康保险、免费的一日三餐、健身房、游泳池,博物馆免费门票/打折票,车险、房屋保险、租车、买车、滑雪等一系列的 corporate rate,免费/打折的衣服干洗、理发、体检,commuter benefit 报销上下班公共交通,等等。
例外,大公司里面:
- 微软、亚麻和苹果没有免费食堂(部分 office 有,个人认为自己掏钱是好事)
- Netflix 的福利,是给员工 all cash,很多很多 cash
程序员-Level
图片截自:https://levels.fyi
各大科技公司 level 各不相同,几家大厂基本都可以按照上图转换和参考,这点跟国内程序员level都看阿里有点相似。
对于应届毕业生、工作一年跳槽、合同工转正等的小伙伴,会拿到 L3/E3/T3/SDE I/IC I 等这些 level(每个公司叫法不一),基本是 Junior level,基本期望有:
- 在一定指导下,完成指定任务
- 在一定指导下,参与系统设计
- 产出质量还可以
- 新人 rampup 可以是半年到一年
博士毕业生、工作个两、三、四年再跳槽的小伙伴,会拿到 L4/E4/T4/SDE II/IC II 等这些 level,算 median level,基本期望有:
- 在 minimum guidance 下,完成有一定挑战的任务
- 在 minimum guidance 下,完成系统设计
- 逐步成为一些项目的 go-to person(有问题就知道可以问你)
- 工作完成质量高
- 最佳状态:能够独立工作,包括项目系统设计、实现、协调各方、测试、内测、QA、文档、做实验、发布这一系列的任务
- 新人 rampup 可以是三个月到半年
下一级,便是老年人行列 senior level, L5/E5/T5/Senior,到达这一级每家公司需要的时间差异挺大,相应的机遇成分也开始变得重要,基本期望有:
- 独立自主,完成上面提到的一系列工作
- 独立自主,攻克模棱两可的问题,提出完美/次完美/临时/长期的解决方案,成为组里的技术专家
- 项目负责人,或者成为一个产品分支的负责人,带领团队,完成系统设计、开发、测试等一系列的工作
- 自我驱动,也能带动、影响身边的人,制定自我优先级、制定小组优先级
- 写代码之外,更加注重系统的稳定性、扩展性、安全性、监控、报警、文档、跨组、跨部门甚至跨公司协调工作
- 更佳的状态:协调组内资源、争取内外部资源、招人、带人、扩大 scope
老年人之后的 level,各公司叫法不一,Staff、Principal、抑或是直接用数字表示。到这一 level,个人能力是一方面,个人精力、愿意付出的时间、机遇等因素会扮演更加重要的角色。我理解的期望有:
- 做好以上的所有工作
- 更多地参与战略、资源、季度/年度优先级的讨论
- 标准化整个团队的工作、提高团队的工作效率、产出水准、工作范围
- 培养团队,帮助小伙伴成长
- * 可以解决没有人解决过的问题,进入全新或非常有挑战的领域
- * 可以管理10+的人
- * 可以是一个领域内的专家,对这个领域的未来都能带来影响
- * 充分非必要条件
在这之后的等级,等以后有机会再写吧。。。
以上提到的是 IC 岗,Individual Contributor,如果转 People Manager,或者是依然做技术的 Teach Lead Manger (TLM),那 L5 一般对应 M0, L6 是 M1,以此类推。
特殊说明:
以上只是部分大公司常见的 level 分法,老年人这一级,Uber 还会细分 5.a 和 5.b,微软有 63 和 64,而 Netflix 所有人都是 senior
目前没看到程序员到 35 岁就一定要转管理的现象,转与不转,这取决于机遇、个人性格以及家庭等多方面因素,我周围非常多 high level IC,WLB 好得很,也不用处理很多 dirty work,收入跟 level 相关,跟 title 无强相关
小结
之所以写这些,一是因为最近朋友跳槽刚好问到,二是想记录过去这一年自己大公司爬梯子的心得体会。在湾区,周围聪明人很多,不管你曾经多么优秀,这里你永远能找到比你强还比你努力的人。
当然了,生活不只是工作,能找到喜欢的项目,让自己时刻保持积极的学习状态,勇于走出眼前的一亩三分地 comfort zone,清楚当前市场的需求并保持警觉,最后结果都不会太差。
Enjoy Reading This Article?
Here are some more articles you might like to read next: