zoukankan      html  css  js  c++  java
  • 摘取别人的面经

    开篇自我介绍,这个是面试基本都有的,就不细说了。 一面一上来就问了一道算法题,是最长公共子序列,这题不难,然而我没做出来。。。(我算法很渣),心态差点爆炸。 然后面试官问我对React的了解,我简单说了一下React的设计思想,它带来的改变,有什么优点。然后开始从源码的角度上讲(个人读过部分React源码,在简历中写明),从babel转码JSX开始讲,然后讲了ReactDOM.render()的一整套流程,setState的一整套流程,还有differ算法(differ算法我讲了React的和Vue的),因为个人实现过一个类React框架,所以对于这个流程还是比较了解的,面试官问的几个问题都答出来了(个人建议多了解一下源码,能直接看项目源码就直接看,最次也要看几篇讲源码的文章,我碰到的几个大厂都问了这方面的问题)。 再然后就是问了一些基础性的问题,先是操作系统部分,第一个问题是非常经典的了——进程与线程的区别。然后问进程间通信,问内存的管理方式,分页和分段。 随后是计算机网络部分,先问TCP和UDP的区别,优缺点,适用场景。然后问TCP三次握手,四次挥手,怎样保证数据有序?怎样保证可靠性?HTTP协议有哪些方法,get和post有什么区别,其他的有了解吗,你熟悉的状态码有哪些?这方面回答我的习惯是先回答标准实现是怎么做的,然后回答为什么这么做,以及不这么做有什么后果。 具体还有一些,但我因为是视频面试自己没有像以往那样录音,所以有些问题想不起来了,见谅。

    一面之后紧接着就是二面,中间十分钟都不到,二面面试官上来还是让我自我介绍,之后要我介绍一下自己感觉最有挑战性的项目。我介绍的思路是先说项目性质(个人,社团还是实验室之类的),然后说项目规模(人数,代码行数等),再说项目架构,最后说自己承担的工作。这一部分建议提前做好准备,对于项目的亮点和难点都要说(自己把握好语速,基本要能说20分钟以上),性能优化是非常出彩的地方,一定要重点讲。面试官会在你讲完之后问一些问题,比如当时问什么那么做,以及会和你讨论有没有更好的做法。问的问题比较多也比较细,所以一定要说自己参与的比较多的项目,事前再熟悉一遍。再后来问了一些我个人平时写着玩的小玩意,一个爬虫,一个原生html+js的小游戏,还有一个数学建模的进化论模型。我都详细说了说。 之后面试官考察了一些基础,比如我在简历中说自己实现过类React框架,面试官问我babel的原理,具体怎么做的?怎么区分<是小于号还是开始的符号。 然后问对CSS的了解,最先问的很常规,就是CSS权重,然后问我怎么用CSS实现一个正方形,我说了很基本的方法,然后面试官问我有没有更骚的方法。。。没答出来 再然后问我CSS值的解析过程(不是页面,是CSS值),喵喵喵。。。说这个东西在标准里是有的,平时可以看看 CSS后问的是JS,一个最基本的[]==true,答这种题的时候我的方法是先说结论,再说理由,如果理由思路清晰而且正确的话,就算结果是错的问题也不大。另一个问题是()=>{a:1}该箭头函数返回值是什么,理由。

    再之后本应该是三面,但是部门leader比较忙,就先结束了。再结束二十分钟不到的时候,hr来电话问我有没有事件聊一聊(hr面)。hr面问的问题很多,一开始问对公司的技术,薪资,文化了解多少?是否使用过公司产品?个人最具有自豪感的时候?为什么担任科协副主席?又问什么时候可以入职?这一面我觉得是没有固定答案的,根据自己情况回答,不过最好如实回答。

    紧接着是leader面(本来应该是三面),首先自我介绍,然后讲了讲项目。问我有什么问题吗?我问了一些技术栈,可能承担的工作,培训机制等待


    作者:沧溟
    链接:https://juejin.im/post/5abdacb45188255583595855
    来源:掘金

  • 相关阅读:
    Git:常用命令记录
    JS笔记(二):隐式转换
    vertical-align/line-height:水平垂直居中
    JS笔记(一):声明提升
    Array.prototype.sort():从一道面试题说起
    CSS笔记(一):选择器规范
    FreeCodeCamp:Profile Lookup
    tile_images_offset的简单使用
    vs2013快捷键等(转)
    Qt状态栏的使用(转)
  • 原文地址:https://www.cnblogs.com/xuniannian/p/8676370.html
Copyright © 2011-2022 走看看