首页 / 面试经验谈
#

面试经验谈

#
活动
112309次浏览 2314人互动
常见面试问题有哪些?面对这些问题应该如何作答? 面试时应该反问哪些问题比较合理? 不同公司的面试风格有哪些差异? 面试时可以通过哪些细节判断自己通过或被挂? 各位佬们,来聊聊你们的面试经验吧,帮助更多小伙伴少走弯路!
活动详情
活动规则
5.8-6.1分享内容,可获得以下奖励
80牛币
600牛币
罗马仕充电宝
此刻你想和大家分享什么
热门 最新
05-10 17:19
已编辑
门头沟学院 Java
25秋招WXG后端面经
是做java的一个组,从来没想到能面过一面- 手撕:子集,最长公共字串- 撕出个贼弱智的bug,修好了后面都没咋问了二面- 讲下实习项目- 讲下SQL优化思路- 讲下TCP拥塞控制- 进程线程协程区别- 进程通信用过那些,线程通信有啥- 讲下Kafka为什么选这个- 还知道其他的消息队列吗- Java GC咋做的- Raft机制- 直接扔了三道题跑了……- 基础计算器- 30w员工公平选出10w- 逆序对面委会- 全程深度八股+SD非常硬核- 说一说url到相应的得过程,从客户端到服务端每个都详细讲一讲- TLS如何保证数据加密的- TLS服务端做了什么- 如何验证的身份- 如果设计个web server你会怎么设计(先讲了下 springmvc如何去处理的)- tcp你如何处理呢(说了一下多路复用)- 多路复用你如何来做,不是原理(讲了下java NIO模型),讲一下java selector 返回什么东西- TCP粘包你如何处理(这段应该想问c++ webserver,但是我不会c++啊,xjb讲)- TCP优化你能想到什么,除了多路复用(tcp_reuse + syn cookie)- 讲一下如果让你设计一个jvm,如何管理内存的申请和释放,不要那么复杂的结构(这段是真拷打麻了,说了空闲列表,但是讲的不完美)- 申请,释放过程是怎样的,用的什么数据结构,复杂度是多少,有没有更简单的结构(这段感觉越说越烂)- 不是OS内存是进程里面如何设计- 如果一个大对象如何分配内存- raft如何保证一致性的- 你要如何设计kv数据库(没设计过,先从CAP再到内存磁盘选型)- 集群如何保证一致性- 内存和磁盘的优势- 内存里数据结构是啥,磁盘里数据结构是啥(只会说redis)- 客户端如何与节点进行交互的,节点与节点之间如何同步(这里redis和raft都说了下)- 现在有一篇文章,我有很多关键词,如何判断这些文章里有没有这些关键词(分词+hashset)- 分词算法有那些,复杂度是多少(真不会)- 那现在不让你分词,你有什么办法(字典树,感觉说的也不行)- 生产者消费者模型你怎么实现,用什么数据结构- 如果用数组是不是很浪费(动态扩缩容)- 如果这个消息包非常大,你如何处理- 事务的特性与MySQL如何实现- 1h,无反问
点赞 评论 收藏
分享
emo一天,但还是回馈一下牛客:滴滴前端研发部一面
好伤心,面试官结束时候评价是整体还行,等视频挂了5分钟内收到感谢信这前后反差,我只好安慰面试官尊重自己,但是谁来安慰我呀面试上来开始问八股1,说说 url到浏览器页面显示整个过程2,http 缓存3,流式输出,你知道哪些可以实现的方式?AI生成到前端你觉得采用那种方式?3,css 设置的元素要不断旋转,怎么写(不到一分钟面试官问我是否会,不会可以换一题,那我还行想到用什么,那换一题吧)keyfram 里面设transform;animation 里面应用设定的spin;代码如下:(linear 匀速转,infinite 无限循环)@keyframes spin {    from {        transform: rotate(0deg);    }    to {        transform: rotate(360deg);    }}.spinner {    animation: spin 2s linear infinite; /*持续2秒 转一圈*/}4,输出解释题:function app() {    const [count, setCount] = useState(0)    useEffect(() => {        const interval = setInterval(() => {            console.log('useEffect')            setCount(count + 1)        }, 1000)    }, [])     return (        <div>            <h1>{count}</h1>        </div>     )}会输出打印什么?h1位置 count 显示什么那当然每隔1s 打印出0,页面显示也是05,好的,你分析他原来想要实现什么效果,然后现在这段代码怎么改能实现预期效果,你有几种方式?【用useRef 、手写update函数,设定count 动态依赖项,使用setTimeout 递归(但是容易爆栈)】我当时有点懵,当然是没考虑到function app() {    const [count, setCount] = useState(0)    const countRef = useRef(count);    useEffect(() => {        setInterval(() => {            console.log('count', count);            // setCount(count + 1)            setCount(countRef.current + 1)        }, 1000)    },[])    useEffect(() => {       const update = () => {        console.log('update')        setCount(count + 1)         setTimeout(update, 1000) // 递归调用, 会导致栈溢出       }        update(); // 初始调用    })    useEffect(() => {        const interval = setInterval(() => {            console.log('useEffect')            setCount(count + 1)        }, 1000)    }, [count]) // 动态依赖,但是频繁定时器创建和销毁    return (        <div>            <h1>{count}</h1>        </div>     )}7,输出顺序是什么?function app() {        promise.resolve().then(() => {        console.log('promise')    })    useEffect(() => {        console.log('useEffect')    }, [count])    useLayoutEffect(() => {        console.log('useLayoutEffect')    }, [count])    return (        <div>            <h1>{count}</h1>        </div>     )}输出:useLayoutEffect promiseuseEffectuseLayoutEffect(dom更新后,相当浏览器刷新渲染了,立即同步执行)、promise (微任务,在同步执行完清空微任务队列)useEffect(异步执行,事件循环后执行)期间问了useLayoutEffect 和 useEffect 区别8,看下面输出什么?(弱弱心想:不能出点其他的吗?)function Foo() {    getName = function () {        alert(1);    }    return this;}Foo.getName = function () {    alert(2);}Foo.prototype.getName = function () {    alert(3);}var getName = function () {    alert(4);}function getName() { alert(5); }Foo.getName(); // 2getName(); // 4Foo().getName(); // 1getName(); // 1new Foo.getName(); // 2new Foo().getName(); // 3new new Foo().getName(); // 3看这是金典js输出,但是解释起来费劲呀,解释不断问我:变量提升到哪,函数提升到哪,可以修改一下代码看看提升到的位置,new 关键字分析一下,作为普通函数调用还是.... (问下牛友,这种题目去那找能复习到呀)9,写个sum函数实现下面输出:console.log(sum(1,2,3).sumOf()); // 6console.log(sum(1,4)(2).sumOf()); // 7console.log(sum(1)(2)(3)(4).sumOf()); // 10function sum(...args) {    let total = args.reduce((acc,cur) => acc + cur,0);    function innerSum(...newArgs) {        total += newArgs.reduce((acc,cur) => acc + cur,0);        return innerSum;    }    innerSum.sumOf = () => total;    return innerSum;}console.log(sum(1,2,3).sumOf()); // 6console.log(sum(1,4)(2).sumOf()); // 7console.log(sum(1)(2)(3)(4).sumOf()); // 10
滴滴一面281人在聊 查看9道真题和解析
点赞 评论 收藏
分享
05-19 15:02
已编辑
西安交通大学 机械工程师
大疆结构实习生一面凉经
公司大疆创新岗位:机械结构设计实习生 base深圳面试时间 5月12日  时长40分钟5月19得到HR反馈 未通过,复盘了一下感觉要么是问题没答好,要么是PPT设置部分不够清晰导致有歧义,准备重新去一个一个验证之前的问题第一部分:自我介绍第二部分:展示PPT并且面试官会随时提问感兴趣的点,然后提问相关原理和专业课,例如1 项目用到线传动,怎么解决交缠打结问题2 这个拓扑优化的工况是什么样,为什么优化成这样,原理是什么,除了加厚材料还有什么办法去改进:因为材料主要是受拉压,所以在保留了材料两端承受拉应力和应力3 项目提到摩擦轮发射机构,摩擦轮的影响因素都有些什么(粗糙度,软硬度)最终对发射的影响是什么(影响弹丸初速)4 提到链传动设计,链传动优势优缺点是啥,除此之外其他的传动优缺点(这个华为也考到了,简直是热门命题)5 这个机器人样机考虑怎么减重:一 尝试对现有材料拓扑优化,比如一体式的拓扑优化主框架;二 优化计算,减少电机冗余;三 尝试一个动力元件执行多个运动目标第三部分反问:实习生会当正式员工使吗:不会把实习生放有交付压力的部门,主要还是做预研整体感觉比特斯拉好一些,好歹这个专业课提问有章可循并且常用。特斯拉给我考一堆材料力学知识和振动知识之前时间线如下:二月底投递简历,打过rm初筛很快过了,好像是一周内有性格测评通过之后HR打电话了解情况,听说我六月才能出去就先给我挂了,让我看五月份还招不招,招再给HR会电话。经历O和耀两大坎之后五一结束就给HR回电话,三天得回了有10个电话一条短信都没打通,第三天快放弃的时候给我HR打回来了(天无绝人之路)    
查看12道真题和解析
点赞 评论 收藏
分享
05-10 17:11
门头沟学院 Java
25秋招字节后端面经
秋招过去了好久,是时候更新一下面经了一面- 拷打实习项目- 实习项目亮点- 拷打项目(折磨)- 为什么要用两级缓存- caffine淘汰策略(没看过)- 为什么本地用top50,我说是top30行不行,(预估,预热)- 如果千万级是什么方案- 为什么要牺牲一致性(CAP, BASE扯了下)- 1000w用户需要怎么做- 定时器放在那里- 怎么做数据预热- 这里battle了巨久,感觉没有回答想要的点- springboot启动流程- java bean是什么(这里我说get set方法,他说应该从IOC里面说)- IOC是什么- IOC有什么好处(说了解耦,他问还有呢,从使用者和组件开发者的角度,我是真不会啊)- 又扯了巨久,真不会回答- 手撕:验证搜索二叉树二面- 项目拷打吧20min,其实感觉也没讲明白- raft协议- raft能应对脑裂吗- ES原理- 有实际运维部署经验吗)无- 时间久远其他问题记不得了- 手撕:交叉链表三面- 拷打项目- 说说SQL的执行的整个流程- 为什么要用逻辑执行计划- 你知道MySQL优化器会优化那些内容吗- innodb引擎索引结构- 二级索引结构- b+树和b树有什么优势- 为什么二级索引叶子节点要放主键值而不是一个指针)说的页分裂不知道对不对- 知道最左匹配原则吗- undo log, redo log, bin log都说说- redo log写到内存里如何保证能刷盘(3个参数)- 事务两阶段提交的过程- MVCC实现的原理- 进程和线程的区别- 用户态和内核态的区别- 怎么从用户态切换到内核态- 在编程的时候如何减少用户态到内核态的切换)这里纯在乱答- 协程有了解吗- 说下多路IO复用- 讲下4次挥手)捏马的有点忘了状态名字了,说了两遍才说懂- 为什么time_wait是2MSL为什么不是1MSL,为什么不是3MSL- fork知道吗,fork返回的值是什么- a = fork() b=fork() print(a,b) 这个最后产生几个进程,打印的内容是什么- 了解哪些排序- 快排复杂度推导一下- 归并的复杂度推导一下- 链表做归并的时候需要从中间节点断开,这个相比归并数组会影响时间复杂度吗- LRU思路讲下- 手撕:链表排序- 一共一个半小时,强度有点大,有些推导性质的东西确实不记得了,只记得结论了。还得下来多看下
点赞 评论 收藏
分享
嵌入式小白,投递三天迎来第一面,面经
5月9日  西安小公司(20——99)  嵌入式开发  一面:面试官问题:一、首先做一下自我介绍二、讲一下项目中标明的存储优化三、会画板子吗四、学过数电、模电吗五、单片机的最小系统六、项目中的板子是自己画的吗七、以后打算在西安工作吗自我不足:一、自我介绍要准备一下,尽量简短,然后可以说一下自己擅长的技术,把面试官后面的问题,往这些技术上去引入二、对自己标明的掌握的技能一定要了解,你说过设计,画板,焊接过最小系统板,但是连单片机的最小系统都回答不上来三、在面试前一定要提前将自己的项目介绍要用嘴巴练习一遍,如果没有经过练习,你想的和你说的,完全是两码事,脑袋会宕机,说起来卡顿,然后词语可能用的也不是特别恰当,没办法将自己的项目亮点让面试官看到四、一定要自信,技术很广阔,你会的不一定面试官就会,不要觉得自己低人一等,而且有的时候,他要求的和他实际做的是两码事。你之前自己画过PCB,就说自己会PCB(根据数据手册中的推荐电路,设计PCB板),你进这些小公司最多就是抄板,没有什么技术含量,而且你是一个实习生,不会让你做太核心的业务,老板也怕出问题。五、在面试之前,要详细看一下招聘,要求然后心里就有底了,知道他画板加软件一条龙,就说自己都会,本来自己也会,只是没有经常使用画板罢了。六、在面试的期间,插入自己的过往经历,表达对这方面的兴趣,你对这方面的热爱,比如高中就参加过机器人竞赛,大一大二,绘制过PCB(可调电源、数码管时钟)然后焊接成功运行至今七、补充一下校园经历:电子社团软件部负责人,教授大一大二学生,单片机的知识。然后与同学合作的项目啊,都是优秀的巴拉巴拉(六、七)两点应该加到自我介绍中。
查看7道真题和解析
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客企业服务