Facebook 对前端工程师的要求是啥?一起来看看

简介: 我们将尽量保持实用性,并关注你在构建应用时可能遇到的问题。我们不会要求你从头写一个排序算法,但我们希望你了解进行 JavaScript 对象和数组操作时相关的性能。你得能找出并修复代码瓶颈,并解释你所做的权衡。

原文作者:Dan Abramov

译者:UC 国际研发 Jothy


写在最前:欢迎你来到“UC国际技术”公众号,我们将为大家提供与客户端、服务端、算法、测试、数据、前端等相关的高质量技术文章,不限于原创与翻译。

image.png

Redux 作者 Dan Abramov(@dan_abramov)发 Twitter 表示: 我们更新了发给前端工程师候选人的措辞,以更好地反映该角色在 Facebook 的面试过程。希望能帮助大家准备面试!(以下为具体措辞)

我们将尽量保持实用性,并关注你在构建应用时可能遇到的问题。我们不会要求你从头写一个排序算法,但我们希望你了解进行 JavaScript 对象和数组操作时相关的性能。你得能找出并修复代码瓶颈,并解释你所做的权衡。

我们不会要求你实现红黑树之类的模糊数据结构,但这能帮你总结概括 UI 工程化中常见的数据结构,如数组(arrays), 映射(maps), 集合(sets)和 DOM 树(DOM trees). 你还会发现阅读大 O 表示法(Big O notation, 一般用于表示时间/空间复杂度)和树遍历(tree traversa)等计算机科学主题大有裨益。我们不要求你记住某个特定的算法。我们更看重你能在实践中应用这些原则,来创建快速的响应式用户界面。

我们希望你能够掌握 JavaScript 语言及其基本用法,包括迭代(iteration), 闭包(closures), 作用域(scope)以及编写异步代码(writing asynchronous code)等。我们不会考你某个特定的库 - 所以不要担心 React 或类似框架的学习。但是,我们希望 UI 工程师能够理解他们所使用的抽象语法之下有什么内容。例如,如果你之前只用过 UI 库,请花点时间学习原生 DOM API. 如果你只用过 Lodash 之类的工具库,请尝试从头开始实现它的一些方法。检查你的方案在输入空间大的情况下表现如何,并考虑内存消耗和需要处理的边缘情况。在练习的时候,建议你多和人讨论你的方案,并在纸上画草图来帮助你思考。这是练习面试的好办法!

目录
相关文章
|
前端开发
Google、Facebook、GitHub、Babel核心成员齐聚,第13届D2前端技术论坛正式启动
由阿里巴巴前端委员会举办的第13届D2前端技术论坛将于2019年1月6日在杭州举办。
3510 0
|
8月前
|
机器学习/深度学习 算法 决策智能
【重磅开源】Facebook开源 Nevergrad:一种用于无梯度优化的开源工具
【重磅开源】Facebook开源 Nevergrad:一种用于无梯度优化的开源工具
|
12月前
|
缓存 数据可视化 测试技术
开源多年后,Facebook这个调试工具,再登Github热门榜
让许多工程师合作开发大型应用大多会面临一个挑战,通常没有一个人知道每个模块是如何工作的,这种技能会让开发新功能、调查Bug或优化性能变得困难,为了解决这个问题,Facebook创建并开源了Flipper,一个可扩展的跨平台的调试工具,用来调试 iOS 和 Android 应用。近日又双叒登上了Github热榜。
|
前端开发 JavaScript 测试技术
Facebook 开源可扩展文本编辑器 Lexical
Meta(原 Facebook)近日开源可扩展文本编辑器 Lexical,源代码托管在 GitHub 上采用 MIT 许可证。
393 0
Facebook 开源可扩展文本编辑器 Lexical
|
XML jenkins Java
Facebook开源静态代码分析工具Infer介绍
Infer是Facebook公司的一个开源的静态分析工具。Infer 可以分析 Objective-C, Java 或者 C 代码,用于发现潜在的问题。其作用类似于sonar和fortify。Infer更倾向于发现代码中的空指针异常、资源泄露以及内存泄漏的问题。
Facebook开源静态代码分析工具Infer介绍
|
机器学习/深度学习 人工智能 文字识别
图神经网络版本的PyTorch来了,Facebook开源GTN框架,还可对图自动微分
近日,Facebook的AI研究院发表了一篇论文「DIFFERENTIABLE WEIGHTED FINITE-STATE TRANSDUCERS」,开源了用于图网络建模的GTN框架,操作类似于PyTorch这种传统的框架,也可以进行自动微分等操作,大大提高了对图模型建模的效率。
271 0
图神经网络版本的PyTorch来了,Facebook开源GTN框架,还可对图自动微分
|
移动开发 Java 程序员
Facebook 将神奇动画引擎 Pop 开源了!
Facebook 2月发布的新闻类应用Paper,因为其灵动的用户界面和交互,成为近来最令人眼前一亮的移动产品之一。 而这个产品的背后是2011年Facebook收购的Push Pop Press,创始人是分别在Apple任设计师和工程师的Mike Matas与Kimon Tsinteris。他们的合作者还有传奇人物Bret Victor。他们为美国前副总统Al Gore开发的电子书Our Choice当时就曾技惊四座。
304 0
Facebook 将神奇动画引擎 Pop 开源了!
|
PHP C语言 开发者
Facebook 发布开源编程语言 Hack
Facebook周四发布一款名为“Hack”的全新编程语言,并声称该语言将能使代码的编写和测试更加高效快速。Facebook已在公司内部使用该语言超过一年时间,现在将以开源的形式将其正式发布。
354 0
Facebook 发布开源编程语言 Hack
|
存储 安全 算法
Conceal —— Facebook推出的android数据加密的开源APIandroid数据加密的开源API
现如今很多的智能手机,都支持把应用安装到SD卡中,这会帮用户节省很多空间,但是许多黑客也会利用这一点窃取用户的隐私。一般情况下,应用都有SD卡的读写权限,当然他也可以读取到其他应用,存储在SD卡上的数据。这意味着如果你安装了恶意的应用,他就可以轻易的获取SD卡上的所有数据。
338 0
Conceal —— Facebook推出的android数据加密的开源APIandroid数据加密的开源API
|
安全 前端开发 API
KVOController:facebook 开源的 KVO(Key-value Observing)工具
KVOController 是一个简单安全的 KVO(Key-value Observing,键-值 观察)工具,用于 iOS 和 OS X 应用开发中,开源自 facebook。
237 0