Skip to main content

脸书4年,吐槽、干货、真心话、爆工资单!

 

Context

一点点自我介绍:硕士毕业+3年工作经验,18年跳槽来FB,现在4年。入职 IC4,目前还是ic4。

历史每个half rating:MA, EE,EE, MA, EE, EE, EE

写这个文章的主要目的有两个:第一, 我本来就爱分享,认真写自己的经历算是对自己过去四年的一个回顾总结。这篇文章我经过深思熟虑的才落笔的,字字心声。第二, 认真求米,谢谢。

TL;DR

好处四点 (学习资源多,DS driven culture, 公平 和同事好)

坏处三点 (压力大,reorg多,要求高)

适合两类人(工作狂,新人)

工资单在最后

好处

公司内部资料,学习资源丰富和透明

1.公司内部分享资源基本利用workplace(类似FB一样的社交系统)。我个人对WP简直又爱又恨。爱在你在那里基本可以看到很多其他优秀ds做的分析,从大(比如各种长篇论文note,比如3个app之间用户如何联动)到小(一个post,怎么分析一个metric movement)。很多公司, 别说全公司了,就连几个大组之间的信息交流都非常有限。对WP的恨在不只我,也有其他ds同事经常觉得WP的存在导致大家发帖留言的peer pressure很大,因为大家都能看到所以你要写好才能send,这样你才会又更多的点赞share 留言等等。

2.公司内部学习网站(learn)。真觉得FB网罗了一系列在各个领域很牛逼的人,这些人大多都非常愿意分享知识,于是在上面的WP也很开心的写各种帖子教大家xyz, 也会做成系统的课程,放在内部的学习网站上。举一个最近的例子,比如我们要如何evaluate product market fit,其实业界没有标准做法。我之前想研究这个在网上(比如medium, youtube)搜了很多结果也没有特别好,最后还是回归到WP上看同事们都怎么做的然后摸着石头过河。后来发现learn 上推出了一个专门讲PMF的课,30分钟,简单清晰又非常actionable,简直宝藏。我开开心心学了后养成了非常关注新课的习惯。

3.多说一句关于透明。我觉得公司海量数据/dashboard基本都可以跨组甚至跨app看到是个很大的plus。杠精此处会跟我跳着说用户数据不可以随便看,我非常同意:现在需要严格privacy review后才能使用用户数据做分析。但我想补充的一点是,dashboard大部分是可以看到的,这又是一个很好的学习机会。我可以了解到别的产品topline metrics, one-pager dashboard都包涵什么内容,什么是那个产品/feature最关心的东西等等。

DS driven culture

1.DS在产品组里的话语权还是很高的。DS最被appreciate 的impact (也是一个工作流程)就是做了什么分析, 然后得到什么actionable recommendation, 把自己的结论推广出去 (influence), change product decision/ team roadmap/project prioritization. 基本就是整个team的大脑。FB的组里xfn都被highly trained, 所以不管eng还是pm都非常尊重ds的意见。比如组里每个half都要做roadmap,然后这时候,ds要定goal,分析每个项目的opportunity size, 然后结合eng 等其他xfn的sizing,最后决定整个组下一half做什么。再比如,我最近做的一个分析大概是一个feature 预计成功后会有多少人用等- 非常小。有了这个信息后,之后的产品决策就非常简单了,这么少都人用,但成本非常高,项目就被de-prioritize了。

2.在我待过的n个组里,前2年的2个组我觉得自己还太年轻 + 时间久远生了个娃基本忘记了什么情况了。生娃后呆过2-3个组,都没觉得在推我的recommendation上遇到什么阻力, 可能自己做的好了也有关系,组里/外人好也有关系。不知道了。

3.take this goal metric and not another one etc, 这也成了ds的impact。

公平

1.大部分时候,因为环境透明,你做的成绩是会被很公平的看到的。我自己的情况是,只要你和老板align好,项目做好,rating是很公平的。你的业绩不会取决于你和老板是不是一个小圈子里。因为很多时候你的项目都是自己想出来的,不太需要你老板给你施舍/安排什么项目。

2.钱-bonus 和rsu refresher上也特别公平。体现在你老板只负责给你定rating,其他的因素交给公司HR系统的一套公式来定。

3.这点特别拿出来讲是因为我其他ds小伙伴好几个在其他业内的中型公司呆过后,都受不了老板小圈子,politics,甩锅等又回到FB继续卷。。。这些公司包括airbnb(3个人), pinterest, uber, linkedin。基本感受都是,老板德不配位,个人项目好坏/impact大小取决于老板给你安排什么活,自己被给的项目本身不核心你干出花来都没用。这点在钱上体现出来的坏处就是,老板手上有一笔今年分给组里大家的rsu/bonus,给每个人多少他定。你要不是他圈子里的人,你分到的钱就特别少甚至是0.

同事都是同一类人,工作合作起来顺手

1.同事都是一类人(特指打破沙锅问到底),也都很敬业(拼)。这样的好处是你需要什么帮助,只要你能合理解释为什么这个很重要,其他的xfn都很愿意给你一臂之力的。在这4年,我基本遇不到坑队友。工作还是蛮开心的。

2.大家都有同一个goal metric, 大家都想要impact。所以ds和xfn基本互利互助,大家都speak the same launguage. Side note:我也确实遇到过组里goal metrics在xfn中不align 的情况,这种比较tricky。ds要做很多工作来劝说eng/pm为什么要align等等,这最终也成了ds的impact

坏处

压力太大有毒

1.我听到的太多就是在fb工作不开心。大家的常态就是焦虑impact,焦虑各种东西(包括在WP上发帖)。我周围也有人卷的昏天暗地还自己给自己找各种借口继续卷的(我觉得他们真是脑子坏掉了), 我认识的直线connection里有3个都因为在fb工作后对身体/精神造成严重损伤的。拿命换xyz值不值得,就各位自己掂量了。

2.我自己的经历是这个压力大小确实是可以自己控制的,但有时候大环境如此你就很难独善其身。具体情况是:我前2年,没娃,没想着升职,2年完全不加班(这在fb很少见),但也是实打实的上班时间认真上班的那种(上班难摸鱼),那时候我就没啥精神压力;rating也很不错基本EE (具体线是MA-EE-EE-MA,第一个half太短,第四个half只上了不到三个月去生娃)。我后两年,生完娃回来也covid,我个人感觉压力很大其一是我想拼升职了,但其他的原因也很多,包括两人都上班也带小奶娃了,有covid,有wfh等各种cofounding factor), 很难分清什么是主要原因, 但这一年压力大是肯定的。我这个half同时support 2个组,经常加班是肯定的。

Move fast,reorg太多,老板常换

1.我的四年4-5个组,8个老板。被动换组2次(reorg),主动换组2次。这中间的坏处大家也很明显,肯定会耽误升职:比如impact 在短期land不了;老板不够信任你。频繁换老板的好处应该是没有。

2.唯一的相关好处就是fb换组灵活,1个组待满1年且没有performance问题就可以任意换。我呆过的组多好处是见过了很多不同product stage 的组,面临的问题各不相同给我很不一样的体验/经验。

DS要求真的很高,很难做好。类似读博但甚之

1.不知道是不是我过分焦虑了,还是被洗脑了。我觉得这里ds非常类似读博。你可以想象从0-1是一个你有多独立自主的一个纬度, 你越接近于1,你就越senior。

2.比如一个好的ds,给你一个产品领域,你要自己想出这个组目前最需要回答的understanding question是什么 【难】,给自己定understanding roadmap(我接下来要做什么),找xfn包括你老板 review并同意你的计划。然后你开始执行你的计划。对一个分析,你写出analysis framework 【难】,大问题小问题都是什么,用什么方法,执行,做一堆的分析,然后写报告。中途还要不断的跟你的xfn 更新,希望envolve 他们这样最后结论出来的时候不至于他们大吃一惊。报告出来后,各种广而告之,包括去WP上发帖, 去各种level leads review, 总之就要把你的建议各种宣传让对应level的xfn都认同【难难】。最后还要盯着这些人(通常eng/pm)把你的建议执行到底,需要那些operational support 你都要及时补给这样保证你的建议能land。这才算上一个end to end的ds项目。可以这么说,我这4年,大规模的e2e 项目没有 (比如你要 team build什么),这应该跟我换组/reorg太频繁有关,项目周期太长了(因为最后需要写进eng roadmap然后他们再build再出impact)。有个别e2e的实现了,比如你让eng不做什么;这种周期比较短,稍微好出impact点。

3.通常ds的level对应你影响的xfn level 高低。比如ic4就是你直接产品组里的人认为你的建议ok,他们会执行你就ok了。ic5 就往上一层等等。

适合什么人?

1.工作第一的人。因为FB公平,你爱拼你一定会赢。

2.特别想学习,充实DS经验的人。比如New grad,转行的人。如好处1,即使你老板能力不行,圈子里能人很多,只要你爱学爱问,你可以带走很多东西。

最感兴趣的工资单?

万年 IC4。历史每个half rating:MA, EE,EE, MA, EE, EE, EE

18年入职offer: 155k base, 140K rsu, 0 sign on.

19年 (MA+ EE), 160K base, 40K rsu (可能有错?感觉好低啊但找不到reference了)

20年 (EE+ MA), 166.5K base, 57K rsu.

21年 (EE + EE), 171k base, 63K rsu

22年 (EE+ 目测ee), 待定。

DS能拿到DE(就是公司为了留人用来补充4年cliff额外给的RSU)我周围几乎没有人拿到。所以很多DS四年就走了。不知道swe那边是不是一样情况。

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...