您好,如果喜欢我的文章,可以关注我的公众号「量子前端」,将不定期关注推送前端好文~
前言
相信加入互联网大厂是每个程序员梦寐以求的事情,无论是从工作环境、员工福利,或者说是技术氛围以及接触到的人所给你带来的一些好的机遇,都是值得我们去追求的,因此程序员可以在职业生涯初期、或者在整个职业生涯中加入过大厂,无论对自己的履历还是阅历都是很有帮助的一件事。
本文将围绕上岸过程、工作内容、工作体验依次介绍。
自我介绍
博主是去年2021年毕业于双非本科的,并且在2021.8才开始投递大厂(2022秋招),其实已经很晚了,并且很多大厂都不会接已经毕业的学生作为校招对象,除非有好的资历,如高学历、竞赛、大厂实习以外,因此在这一方面,其实我在投递简历中获得到面试的机会还是挺多的,运气成分比较多,因为博主的简历其实很普通,在校的两个自研项目——一个偏向业务,是一个个人论坛h5;另一个是一套Vue个人组件库,大概包含了二十几个组件,可能是这套组件库提供了良机吧。
两个项目的地址:
- 论坛项目:https://github.com/fengxinhhh/coder-talking-webSystem
- Vue组件库:https://github.com/fengxinhhh/uI-package-for-vue
目前博主也是在小米工作了近一年了,想把一些大厂面试准备,从进大厂前的一些正路,以及加入大厂面试的一些题目、考察的对象、评判的点做一些分享。
梦回上岸前
在2021.8的时候,博主是从这几个方向准备的,面经、面试题学习、算法与数据结构、原理相关。
面经
面经主要参考牛客网https://www.nowcoder.com/
方法很简单:面心仪的大厂,比如你想进字节,搜字节前端,就可以看到日期降序后的最新的面经了,有校招有社招,这个就看自己的选择吧,毕竟校招和社招面试的考察点不太一样。
然后如果是官网投递,去牛客随便找一个内推码即可,放到提交信息表单里去,这样获得面试的机会会大一些(内推码之间无区别)
面试题
面试题博主主要是从CSDN一位博主那里的一篇文章开始整体过一遍的。
https://blog.csdn.net/qq_33277654/article/details/112758362?spm=1001.2014.3001.5502
这里面讲的非常全,涵盖前端、框架、网络、算法,我个人认为把这里面的题过一遍,可以对付绝大部分大厂的面试,在这篇文章中遇到不懂的关键词请直接额外去搜索深度学习,面试题其实只是总结,有深度的内容需要自己去学习,因为大厂问题目的套路其实是一层套一层的,因此每个知识点需要了解到深层。
然后上面讲到了面经,我个人建议先刷一遍面试题,然后看面经,把面经中这家大厂出现频繁的题记录下来。
算法与数据结构
这里推荐leetcode,刷前100道即可,前端面试的算法不会很难,把简单、普通的刷一下即可。
https://leetcode.cn/problems/gaM7Ch/solution/
以我个人经验来讲,前端问的算法题有两种:
- 数据结构相关的算法,如翻转链表、二叉树深度等;
- 热门算法,如背包问题、动态规划问题、排序算法、二分查找等;
算法其实就是一个积累,多刷题就可以应付很多面试题,当然面试中如果某道题没做出来,也不要气馁,把解题思路说出来,代码短时间无法实现也没关系,至少比一句简单的"不会、想不出来"要好很多。
原理相关
原理相关涉及到js和框架的理解程度:
javascript一些热门的api可以手写出来;
框架的实现原理,vue/react;
这里js的热门api博主总结了这些api:
instanceof、new一个实例、深拷贝、call、apply、bind、函数柯里化、promise(all、race)、实现一个time等待函数等。
这些在上面发的面试题链接里基本都有。
框架原理是推荐这样去学习的:
因为博主当时对vue比较熟悉,是准备了vue的这些原理去面试的:MVVM的实现思路(数据劫持、发布订阅、模板更新渲染)、vue dom diff算法、vue2和vue3 MVVM的区别?
这里有几个关键api,你如果可以知道,那最好不过了。
- Object.defineProperty(vue2的数据劫持)
- proxy es6新特性(vue3的数据劫持)
基于这两种数据劫持去学习proxy比Object.defineProperty的优势和区别,回答出来是一个很好的加分项。
如果有时间,去学习一下网上的手写一个简易版MVVM吧,在这过程中你也可以了解到vue2为什么要无法劫持Array、Object的数据变化更新视图,而是要用\$set这类api来解决。
这里只是举例说明,博主现在react用的比较多,如果你用的是react,去了解一下fiber、react调和更新机制以及浏览器空闲时间分配更新虚拟DOM相关的知识吧,这里不再依次举例。
上岸
博主经过努力,最终也是在9月份获得了百度、小米、腾讯三家offer,期间投递了无数次简历,字节印象比较深,是海投了然后没有获得一次面试机会,对于投递简历博主的建议是只要能投,都投了,字节当时是每个部门岗位都可以投,当时也是一晚上投了100个岗位.......
然后面试的话是有美团、阿里、小米、百度、腾讯、4399、滴滴这几家公司,最后也是收了三家,面试前准备就是上面所写的这几部分。
工作
主要工作这里专门写了一篇文章:https://blog.csdn.net/m0_46995864/article/details/121040986?spm=1001.2014.3001.5502
刚加入小米的时候,培训就光培训了大概一个多月,包含部门训、集团训、岗位训...都是脱岗培训,真的可以看到大厂其实是偏向于培养机制的,在培训中也可以认识很多别的部门的小伙伴,工作中真的会很快乐,也是有了很多的感情。
这里来几张小米科技园的图片~
PS:目前已离职跳到阿里了。
一些技术面试完的细节
一般大厂流程走的很慢,在技术面完后得到hr的offer chating其实需要一段时间,在这期间请继续投递简历继续面试吧,因为技术面试后被挂的可能性也是有的,比如候选人过多,但是其他人学历更好这种情况,总结下来就是不要把鸡蛋放一个篮子里。
如果有能力,多积累几家大厂offer,可以在第二家、第三家offer时砍价,提高自己的薪资。
祝愿大家都可以获得自己心仪的厂offer吧~~
有任何问题都可以留言。