专栏首页BFE.dev前端刷题日记年收200万+的Facebook前端工程师(E5)都要求些啥能力?
原创

年收200万+的Facebook前端工程师(E5)都要求些啥能力?

前提: 虽然国情消费啥的都不一样,不具有完全可比性,本文仅仅就数字来探讨一下。

Facebook全球office薪资收入不一,这里仅仅看湾区情况

Facebook E5工程师平均收入: 人民币250万

www.levels.fyi 上可以看到硅谷公司的收入统计,比如Facebook E5的平均收入为37万刀,人民币250万左右。

其中基本工资20万刀,股票15万刀,奖金3万刀。

这包含了所有工种的工程师,具体到前端工程师的话,实际上可以看出前端工程师和其他工种平台工程师收入是一样的,并没有比较明显的“歧视”。

Facebook E5 前端工程师要求些什么?

信息来源: quora.com

  1. 高级工程师,开始可以尝试做manager
  2. 了解业务逻辑。知道基本的业务数据和趋势
  3. 能够制定plan解决问题
  4. 架构
  5. 需要的时候可以带队

先不说manager相关的要求,单纯从技术上看,要求的就是宏观解决问题的能力

我自己作为前端工程师工作超过了7年,也发现如果想要往上爬,被期待的并不是具体写代码有多好,而是能够在宏观层面对项目需求进行评估,值不值得做,做的话需要多少人多久,怎么执行能够加快开发速度并降低风险。

具体架构上面,需要的是设计一个方案允许不同能力级别的成员的代码能够共存,大项目是不可能做到所有代码都是完美的,必须允许瑕疵的存在。我们只需要核心,影响范围广的代码是完美的,其他局部的地方的代码只要能用就可以了,毕竟大多数非核心代码会在不远的将来都被重写。

简单的说,初级engineer考虑的是自己的代码的风险,高级engineer考虑的系统的风险和业务的风险。

具体面试考些什么

进入Facebook面试环节过后,recruiter会对面试进行指导,包括如何准备,以下是简单的总结。

  1. coding 筛选: 45分钟两道题。通过了会进行如下的onsite
  2. onsite: 连续5轮面试,中间有少许休息时间
    • 代码题: 45分钟1~2题
    • 代码题: 45分钟1~2题
    • 系统设计: 45分钟设计个搜索建议之类的
    • 产品设计: 45分钟 设计个instagram之类的
    • 行为面试: 看下你的过往和性格之类的

虽然Facebook做的React,但是面试不会要求你了解React,因为面试不会问这些。相反的,基础的JavaScript/CSS/HTML才是最重要的。

代码题考些什么

这里有总结一些网上公开Facebook的代码题: bfe.dev/problem?tag… 。可以看出:

  1. 题目本身并不难,比如手写Array.prototype.flat()之类的
  2. 但是要在45分钟(除去寒暄也就30分钟左右)内完成两道题目,并且要解释清楚不出大差错,还是很难的。

代码题中JavaScript是关键,需要掌握好基础。这里我推荐 javascript.info 讲解的非常不错。

另外就是算法。前端工程师并不要求太高深的算法,树相关的算法熟练掌握就ok了。LeetCode中的easy-medium即可。 面试过程中需要对自己写的代码做复杂度分析,基础中的基础。

设计题目考些什么

个人觉得,这是更难的考察。系统设计是局部的设计,产品设计是整体宏观的设计。

系统设计因为针对的是局部,需要对性能优化有足够的理解,才能在和面试管的聊天中掌握话题的走向。最好回顾一下自己的项目中用到的开源库,如果不用开源库而是自己来写,需要考虑哪些因素。

产品设计对于前端工程师来说稍微有些难度,因为这不是完全考验的前端开发能力,而是系统整体的设计,更多是对数据流向的理解

准备这些面试,最好假设自己是一个后端工程师来设计,平时最好也知道一些基本的服务器知识,了解一下常见的服务器瓶颈和优化方式。

行为面试

这个就更开放了,如果你让面试官觉得你很有趣,聊天很开心,就基本没问题了。

需要回顾自己的项目经历,拿具体例子说话。也就是说Facebook希望通过你的过去来判断你未来能和Facebook的氛围产生火花。

另外就是英语的练习了,虽然并不要求多好的英语,至少聊天不能太磕磕绊绊,不能让面试官重复问题太多次。

说了这么多,有啥用呢?

前端工程师起点低,上限却很高。国内的大厂能去的话,实际上国外的大厂咱们依然能去,要有自信!

趁着年轻,去Facebook这些国外公司体验几年也不是坏事。

加油!

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • BFE.dev前端刷题#9. 解密消息 (Facebook面试题)

    无法前进的时候,经过的字符就就是隐藏信息。比如上面的二维数组的话,隐藏消息是IROCLED

    JSer
  • BFE.dev前端刷题11 - 什么是composition?实现一个pipe()方法

    在计算结果的时候,funcs中的function都需要被调用并且修改同一个变量,我们声明一个result,然后一个for loop就可以搞定。

    JSer
  • BFE.dev前端刷题 33. 实现Promise.allSettled()

    和Promise.all()不同,Promise.allSettled()即使是遇到rejection也会等待所有的promise到最后。所以我们只需要用一个a...

    JSer
  • 福利:免费送50 份价值 129 元的《Android 面试指南》

    又到了一年“金三银四”,是找工作的最佳季节了,估计很多朋友开始考虑自己的职业生涯问题了,是否拿完年终奖之后再去外面找找机会?或者看看在新的一年里如何提高自己的技...

    腾讯Bugly
  • 如何让带有华硕固件的路由器桥接到你家里客厅的路由器?

    最近家里的台式机无线网卡正好坏了,家里正好有一个闲置的路由器,一条闲置的网线,网上正好有华硕的固件(好巧哦~),于是准备把客厅的路由器的Wifi信号桥接到我房间...

    lollipop72
  • 一个前端工程师的基本修养

    有人说互联网是前端工程师的舞台,先不论这个说法是否有些夸大其词,但前端工程师绝对撑起了互联网应用开发的“半壁江山”。随着传统网站、手机应用、桌面应用、微信小程序...

    企鹅号小编
  • 【面试】我是如何在天猫、蚂蚁金服、百度等大厂面试中被拒的

    本人16年毕业于普通二本院校网络相关专业,工作经验两年半,目前就职业于一家普通民营企业。 由于非985、211学历硬伤,校招进大厂的门槛远高于同届985、211...

    IT派
  • 漫画 | 面试的我 VS 真实的我

    已经是各大互联网公司招聘的常态,为了应对如今越演越烈的面试形势,程序员一个个都变成了表演大师。

    用户1564362
  • Java学到什么程序可以去面试以及面试范围

    Java学到什么程度可以去找工作及面试流程 ? 1简历 简历里面需要包含的内容应该是个人信息、比如:学历,工作年限、邮箱、姓名、目前状态(是否离职),专业技能(...

    码神联盟
  • 腾讯企点QTrade“现券台账”:支持恒生、衡泰模板快速导出

    如何实现从在线交易沟通、到交易信息的汇总和处理、再到机构内部协同工作流程的智能化,来帮助交易员更“聪明”地交易? 腾讯企点QTrade(下称“QTrade”)...

    腾讯企点

扫码关注云+社区

领取腾讯云代金券