今天在视频号里发了个福利,送谷歌师兄的刷题笔记!看视频领取哈。
之后也会每周在视频号里发福利的,大家点赞关注走起呀~
这里是《齐姐聊大厂》系列的第 10 篇
(前 9 篇见文末)
每周五早上 8 点,与你唠唠大厂的那些事
Linkedin 属于 FLAG 之一,也是湾区一大热门公司,以福利好著称:薪水排在前列,work life balance 好,食堂好吃,但同时节奏慢、politics 经常被诟病。
其他的呢,来看看在 Linkedin 家实习的小伙伴的分享吧~
Pros
先说好的方面,食堂确实是不错,3 个比较大的食堂都有中餐,而且每天的菜单都不一样,总体上来说中饭是不错的,而且饭后甜点也比较精致,还可以去喝杯咖啡/smoothie。比较遗憾的是晚饭 7 点钟开始,而且由于只有 1 家食堂提供晚餐的原因,晚餐的质量比较一言难尽。
work balance 是真的好,我 mentor 一般 10 点后来,中午去健身加吃饭 2 小时,下午 5 点多就走了。对于实习生的话,由于早餐只供应到 9 点半,早上一般需要 9 点到,晚饭 7 点才开始,也就是说一天在公司呆 10 个多小时你才能 3 餐都赶上,所以其实 manager 一般是比较鼓励实习生多去参加活动或者利用 campus 的设施的。
再来说工作方面,很多 team 都有自己的 office hour,甚至比较大的 team 每天都有 office hour,所以如果
对内部工具有什么问题的话,还是很容易能快速得到解答的。
Cons
再来说下不好的方面,算上 Linkedin,我一共有 6 次实习经历,Linkedin 是第一家让我感受到了 politics 氛围的公司。
具体表现就是开会特别多,自己的 design doc 一般需要取得组里 senior 的同意,所以会有无数次的修改,然后开会的效率比较低,一次会议就 1 个小时,但经常组里的 senior 会因为一个小点争论很久,导致会议推进缓慢。
同时 Linkedin 内部有一个 committee 叫 DMRC,专门负责审核你的 schema,内部的人会对你的 schema 大到 structure 上的问题,小到命名上的问题有意见,而通常你无法驳斥,因为一旦你想要争论,那么他们会要求择日详谈,这样你的 work progress 就会被 further delay,我 mentor 对此的评价就是 who will guard the guards?
另外就是,有一点 progress 恨不得让所有人都能知道,由于 Linkedin 现在招人一般都是 infra,而 Linkedin 的 infra (infrastructure) 一般都是自己造轮子,所以你的 contribution 有多大主要就看有多少别的 team 在用你造出来的轮子,所以只有有任何成绩都会 cc 一大票人广而告之。
最后,由于 Linkedin 内部结构扁平化,所以有大量的 engineer 顶着 senior title,其实就相当于别家的 SDE2,但是你想要再往上一级到 staff 那是非常的困难,至于 senior staff,那基本都是神龙见首不见尾的人,目前也就见过我组的 tech lead 被 promote 到了 senior staff,因为我们组整个的基点就源自于他的一篇论文。
据我自己的调查,从大 manager 口中得知,我们整个 data org 大概有 700 多号人,除去 director,manager 和 staff level 以上的 engineer,顶着 senior engineer 的 title 最少也有 500 人+,按照内部 wiki 查来的数据,每个 quarter 大约有 10 个 senior engineer 被提到 staff,每年大概 40 人左右,可想而知升 staff 多么的困难。
我 mentor 在微软呆了 5 年来的 Linkedin,进来 senior title,过了 5 年才被提到 staff,而我组里一个国人大哥刚被提到 senior 4 个月就跳到了 FB,拿的 E5。
Return offer
再来说说 return offer,由于组里国人很多,所以和组里的人相处的不错(我们是 2 个小组在一块组成的大组,我们小组有一个直属的印度 manager,隔壁小组由于我来的前 3 个月没有直属的 manager,一直是大 manager 代管,大 manager 也是国人)。尽管如此,最后还是没能拿到 return offer,我就说说我 manager 的评价以及我知道的一些消息吧。
首先,关于我们大组里 2 个 intern 的表现的会议是一起开的,据隔壁组的台湾人 mentor 说,我 mentor 帮我说了不少好话。
最后我 manager 的评价分两部分,第一部分是他觉得我 project 没写完,具体就是没有 deploy 到 production。但其实我写的是个 library,不是 stand alone service,所以需要找别人的 service 来 deploy,和我们组密切合作的
一个 service 上在 dark canary machine(这个 machine 上是 take real traffic,但不会 send back 任何 output)上测试已经通过了,只是当时临近圣诞节,由于 moratorium 的存在,圣诞节假期期间所有 service 都不能 deploy,所以那个 service 的 owner 不想冒着风险在圣诞假之前 deploy 进 production。
第二部分是由于他觉得我没写完我的 project,所以需要找另外的 strong proof 来 support 给 return offer 这个决定,但是他觉得我并没有非常 take initiative。
具体第一点是我 stay blocked for longer than necessary,这里主要指当时我写完了找不到一个 service 测试,和我们合作的那个组当时还没有搭建起来 dark canary,所以也不可能直接上 production 测。组里的一个 service 本来觉得可以测,但是由于是 samza app,并且它用的 lib 版本是个比较旧的,在升级的过程中出了问题,并且也是短时间内无法解决。
第二点是我没有尝试 bonus task,midterm 的时候他和我说如果我写完手头上的这个 project 就给 meet,如果能写完 bonus task 就是 exceeded,但是由于我最后时间不太够,别说写完,都没有尝试开始写。
总结
再来这次实习的总结,其实整个 internship,我觉得收获还是有的,学会了 end to end 的整个 process,也从 staff engineer 那学到了写 code 时需要关注的 dependency,和 single responsibility 等一系列的问题。
不过说实在的,我的 mentor 和 manager 真的没有给我太大的帮助,对于我帮助最大的是一个 virtual team member,严格意义上来讲是我们的客户。
这里插个好玩的事实,这个 virtual team member 其实只是给我们组义务帮忙,因为他们的 service 在用我们的 lib。不过他最开始看了我们这个 lib 的源码后,一周时间内推倒重来,重写了 50%多的 code,和我们的
tech lead 一番交流后就 push 了,感觉这个大腿算是抱对了。
需要注意的是,如果有机会重来一次这个 internship,我会在以下几点改善:
1.初期少划水,尽早开始进入状态干活,早干完比拖到最后勉强干完还是强得多的。
2.和 manager 1on1 一定不要闲聊,就聊 expectation 和 work,最后每次完了写个书面总结 emal 发给 manager,问他有没有什么要补充的,然后拿到回复,这样以后出了什么问题一切都有书面证据。
3.有解决不了的问题尽早向 manager 提出,同样记得用 email 沟通留下书面证据,如果你的 manager 态度不积极,和外面组沟通的时候 cc 你的 manager。
最后聊下我所知道的别的情况,去年秋季这一批实习据我所知绝大多数都拿到了 return。
我和我室友算是 2 个例外,我室友的话算是和他 mentor 相处的不太好,所以 manager 考虑到 team moral,
没有给 return。
别的我还知道有另一个国人本来没给 return,走了一周后打电话说是组里又有 hc 了可以给 return。
不过据我一个现在还在 Linkedin 实习的朋友说,Linkedin 在考虑停止自己造轮子,全面转移到 azure,所以未来几年 infra 的情况我不是太看好。另外,实习的最后 2 天,我去找大 manager 沟通,看能不能改变什么,因为听组里的人说,之前别的组有过的情况是 intern 没拿到自己组 offer,但是和隔壁一个组混的很熟,结果正好隔壁组有 hc,于是和隔壁组面了 2 轮直接去了隔壁组。
基本情况就是这么多了,由于这事已经过去了,讨论谁对谁错已经没有任何意义,所以就说这么多吧。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。