阅读 1755

疫情期间在武汉求职是什么体验(内附详细面经) | 掘金征文

前言

回顾一下自己 2020 上半年 我感觉可以用三个词来形容 恐慌--焦虑--安心 接下来准备围绕关键词来分享一下自己的感受 对 最后还有你们比较关心的面经 哈哈

恐慌(疫情下的武汉本地人)

一场突如其来的疫情打破了我们本该高兴过年的气氛 身为武汉本地人见证了疫情控制从混乱到最后平息的过程 还记得最开始的两天 同事都不以为然 还笑话我们戴口罩啥的 然后没出两天 看到疫情猛如虎 从此口罩不离嘴 真香 哈哈

然后得知身边有亲朋好友也不幸中招 每天看着新闻各种催泪的报道和不断上涨的感染人数 心里真的很难受 一方面为感染的朋友担心 一方面又要小心翼翼的保护自己和家人 幸好在最关键的时候 国家很给力 急速支援的白衣天使 各方捐赠的物资 守护社区的工作人员 等等 大家一起努力把武汉从水深火热的疫情里面给拉了出来

焦虑(等待面试结果)

随着疫情逐渐好转 武汉各大公司也在陆续恢复办公 虽然大家都说 2020 年很难 大家有安稳工作的不要想着跳槽什么的 但是小编还是有一颗不安的心 想着不能在一家小公司继续做着所谓的前端负责人的工作 人还是要往远处想 而且感觉自己的实力离自己的目标也差很多 所以就想看看能否去更大的平台锻炼一下自己

心里有一个跳槽的想法慢慢萌芽了 就真的安稳不下来了 于是心动不如行动 各种投简历 做算法题 看面经 希望能有望去大厂看看(小编普通 211 毕业 大学学医的 前端完全是自学 然后很多基础底层的计算机原理和算法都是不懂 所以一开始想都不敢想去大厂 直到后来认识了一个猎头 在他的鼓励下 去试了试大厂 哈哈 最终结果也只是试了试 不过面试真的能学到很多)

我觉得最难熬的时候就是等待面试结果 你总是感觉自己有点希望 最后结果却差强人意 一次次的失败再来 虽然很难受 但是也很能锻炼自己的意志 小编疫情期间真的是面了无数家公司 最后自我介绍都感觉和说顺口溜一样熟练了 哈哈

安心(拿到了自己满意的 offer)

这个就没啥好说了 offer 才是硬道理 感觉拿了满意的 offer 睡觉都会香一点


哈哈 上半年的心路历程总结完了 是不是要给各位小可爱聊聊技术相关的事情了 不过小编因为上半年大部门时间都在学习准备面试 而且自己也是一个前端韭菜 没啥拿得出手的技术项目分享 就结合自身的经历 总结一些面经给大家 希望能帮助大家多拿 offer 哈

面试之前的准备

常规的技术方面的准备就不用多说了吧 部分学习资料这块我比较推荐修言老师的掘金小册 哈哈 我全看了 是真的觉得写得挺不错的(我才不是什么掘金小册推销员 哈哈)

我觉得不管是否准备面试 都值得看看学习提升自己

其次 如果想快速回顾一下 js 基础之类的一些东西 我比较推荐自己之前总结的前端面试知识前端高频面试题总结 还有一些前端进阶的知识也可以去看看哈(后续还会更新) 哈哈 原谅我这么厚脸皮

个人面试总结(我就是传说中的面霸 疫情期间面了 30+公司)

先说结果吧 最后去了金山 WPS

拿了有 8 家 offer 吧 不过都是武汉的一些中型厂 不是那种一下就能定级很高段位的大佬呀 我承认我就是一颗酸柠檬 哈哈

先罗列一下我面过的接近 30 家公司的普遍会问的问题吧(不是每家都问 只是有的问题超过两家以上会问到 所以我就直接总结一起了)

  1. Es6 用法穷举(大致能想到的全部说出来)

  2. Es6 Class 和 es5 构造函数除了写法还有什么区别

  3. 经典的 css 圣杯布局和 css 垂直水平居中 各有什么优缺点

  4. Js 原型链

  5. Js 事件循环

  6. Js 常用的设计模式以及项目怎么运用的

  7. 敏捷开发模式

  8. Js 事件捕获和冒泡区别 使用场景 事件监听怎么设置不同阶段

  9. 前端错误监控怎么做 全局错误事件为啥要在捕获阶段

  10. AO 和 GO(作用域链这一块知识)

  11. 柯里化实现

  12. 阻止冒泡两种方法的区别

  13. 跨域怎么做

  14. Vue 源码相关问题(经典的几个原理)

  15. Electron 了解吗

  16. Flutter 用过吗

  17. NodeJs 熟练吗

  18. 浏览器内核 渲染原理 js 引擎和 gui 渲染引擎为何互斥 如何优化渲染

  19. 前端安全相关

  20. 怎么做前端代码审查 注意点在什么地方

  21. 项目怎么兼容历史代码 微前端了解吗 qiankun 框架?


印象深刻的一些面试体验

  • 字节

字节一面

  1. js 原型继承

  2. js 闭包

  3. Echarts 原理了解吗

  4. 做过音视频相关开发吗

  5. Js 事件循环

  6. Css 垂直水平居中

  7. 微信小程序底层实现原理 ui 层如何与 js 层通讯

  8. 浏览器渲染原理 如何优化性能

  9. 算法题:菲波那切数列 递归优化? 尾递归优化? 改用动态规划怎么做?

一面感觉挺好的 面试小哥哥人很不错 每个问题都是一环套一环 在你回答的过程中引入新的问题 整体也不算难

字节二面(凉)

  1. Js 事件循环经典题目 就是要你写出 console.log 执行顺序的那种

  2. Js 隐式转换 1+[] ‘1’+{} ‘1’+function(){} 1+undefined ‘1’+null...

  3. 混合 app 怎么实现

  4. 混合 app 底层桥接原理 --懵逼

  5. 如何开启浏览器缓存机制 --懵逼

  6. 手写 webpack 配置 要区分生产环境和开发环境不同配置

面试过程就感觉应该凉了 可能是自己简历写了两三个的移动端开发的项目 然后面试官以为自己在移动端开发很擅长 就一直问相关原理 然后自己真正熟悉的领域一题也没问 所以这里告诉大家一定不要把自己不是非常熟悉的项目写到简历(经过此事 赶紧把简历中混合 app 的项目都删掉了 哈哈)

ps:后续字节其他部门又捞我了 然后我因为已经入职就没去尝试了 这里想说的是 其实大厂给到我们的机会还算比较多 不同部门可以尝试多次 只要不是表现特差都是有机会的 大家一次不行 准备之后再战也是可以的

  • 阿里

阿里一面(凉)

线上直接做题 js 相关题目不难 时间一个小时 除了 nodeJs 那一题不会 基本 15 分钟就能做完 做完之后和面试官沟通了一下 针对每个题目有发散点去提问

比如 节流我想实现多少次之后就不再触发

setTimeout 模仿 setinterval 实现有什么好处等

这里列举一下题目

  1. 使用 setTimeout 模仿 setinterval 实现

  2. Js 节流实现

  3. nodeJs 进程管理相关的一个题目 --直接就跳过了

  4. 实现一个 promise 在一段时间内不能触发多次 第一次返回异步结果 之后在时间间隔内触发就无返回

  5. 实现快排

阿里面试的感受 就是感觉面试官很忙 一边办公一边面试 最后面试官告诉我他在项目里面是专门负责 NodeJs 这块的 可能是自己没太注意职位要求 hc 明确对nodeJs有要求 然后自己 Node 掌握不是很好 所以就凉了

  • 跟谁学

一面二面还是偏向基础和项目 这里列举一些记忆深刻的问题吧

1.对于前端架构设计和技术选型怎么做的

2.搭建前端架手架核心思想是什么

3.Webpack 性能优化怎么做的

4.Webpack 插件怎么实现

5.Vue 组件之间通信有多少种方式

6.Vuex 实现原理 为什么要使用 有哪些缺点

7.Vue3.0 有哪些改变 为什么要改变

8.算法题:统计出一个页面出现最多的 html 标签 打印标签名和出现的次数(面试官提示用递归)

和面试官聊的都很好 二面聊了两个小时(二面面试官是部门前端老大 说了很多自己对前端的看法和讨论自己感兴趣的问题 总体感觉挺好) 技术面过了 可是到了三面非技术面 可能因为我四年跳了三家公司的原因被刷了(跳槽频繁真的太可怕了)

  • CVTE(这个是看到有几个掘友去了 所以自己也想去面面)

    1.Vue 经典原理都有问

    2.前端性能优化方案

    3.RN 了解吗

    4.前端路由实现原理

    5.AST 了解吗 怎么实现

    6.函数式编程

    7.项目里面相关的 Webpack 个性化配置

    8.怎么规范团队代码

    9.算法题 1:LeetCode 经典的环形矩阵(顺时针排列的矩阵成环)

    10.算法题 2:矩阵置零

一面很顺利就过了 二面环形矩阵这题在力扣见到过 不过我没深入去看 最后估计败在了算法题 看来刷题真的很重要


2020 下半年的规划

上半年的疫情影响以及面试花费了大把时间 在大量的面试过程中也总结了很多自己的不足点 所以下半年就是要抓紧时间学习提升自己了 打算从以下几点着手

  1. NodeJs 深入学习 做一些前端工具
  2. 微前端项目实践 搞懂核心原理
  3. react 源码 或者 Vue3.0 源码撸一撸(看公司项目选择)
  4. 开阔自己的视野 对于 Electron Taro uni-app RN Flutter 等框架选择性使用 不求都读懂源码 最起码得知道大体怎么用 解决什么问题 核心思想和适合场景是什么 以备自己之后项目的技术选型
  5. 掘金前端进阶系列继续更新 然后有好的技术项目和方案也要多总结和分享

掘金征文 | 2020 与我的年中总结 征文活动正在进行中......

本文使用 mdnice 排版