大家好,我是鱼皮,最近秋招快到了,我就想着给大家找一些优秀的程序员面经分享。希望可以帮助准备求职的同学更稳地上岸,同时帮助学编程的小伙伴们更好地明确学习路线和方法。
今天要分享的呢,是一位 双非非科班 同学小黑的励志故事,我也会补充一些个人看法,锦上添花。
芜湖起飞!
面经已得到原作者授权
作者:牛客 Matthew_black
大家好,我是小黑,双非非科班出身,大四下才开始自学计算机,毕业后在 4399 做前端,base 广州。
说是做前端,其实我干的事情非常杂,经常要自己写后端接口和数据库,部门经理也打算让我走后端的路,所以满一年后,我打算找下家专注前端。
鱼皮:双非非科班,大四才开始自学计算机,就找到了一份前端工作,说明肯定是下了很大功夫的。而在工作之后,依然可以坚持自己的学习方向,有明确的目标,这点难能可贵。
校招简历可以不带项目或者实习,有的公司甚至 985 科班就可以进,但社招相对比较侧重技术和业务维度,如果你是业务巨人,也可以弥补技术的不足,考量的维度会比校招更多维。因此简历作为第一关,是至关重要的一环,在开始求职前先好好准备一份简历吧~
鱼皮:对于名校同学来说,校招简历也许可以没项目或实习经历。但对于更多普通学校的同学,建议大家多做项目、尽早去找实习,否则简历上根本没有亮点!分享下我自己的写简历技巧和模板,公众号【程序员鱼皮】后台回复 ”简历“ 获取。
算法主要就是刷 LeetCode,可以不会写 Middle 题,但不能没有常用算法的思维。面试季让自己保持算法的思维非常重要,不止体现在写算法题上,在和面试官交流到一些源码思想的时候也可以帮助自己更流利地表达和讲述。
楼主的复习思路(菜鸡的思路)是好记性不如烂笔头,一道题 7 天之内一定要再写一次,才不会被遗忘曲线影响。对于一些较难理解的常考题目,建议多写几次记住思路。写题目时不一定要在一道题上死磕,做不出来就多看看类似题目,学学算法思想、理清思路再做,一定要找到做题的感觉。
小黑同学也提到了,好记性不如烂笔头,学算法一定要多写,不仅写代码,还可以写题解,有助于自己强化记忆和复习。
关于我学算法的方法,可以阅读这篇文章:刷了 1000 多道算法题,一点心得
因为主要的求职目标是前端,所以复习前端为主,但也复习了部分后端的知识。
前端:计网( http、tcp、响应头请求头等),前端三剑客(HTML、CSS、JavaScript),Vue 框架(源码),Webpack(常见优化思路),微前端(架构及发展趋势),node(Koa 框架),设计模式(主要是 MVVM 和 MVC)。
后端:数据库,Redis,Linux 系统,Nginx 等。
再撸几十篇牛客面经,就万事俱备了。
复习的资料和时间安排如下:
四月的时候侧重基础,查漏补缺,直接找总结好的博客或者 Github 项目,推荐我男友(不是)的日记:
指路:https://github.com/WindrunnerMax/EveryDay
他的博客总结的很齐全,分类也很完善,复习基础的时候基本每天看个四五个小时,对于我这种基础不扎实的菜鸡非常友好,建议大家去看看。
五月份的复习侧重框架和业务优化,组织了几场模拟面试,发现自己对 Vue 完全不熟练,所以把 Vue 文档和源码分析从头到尾 看了几遍 ,渐渐理解了一些面试官的问题。
对于业务优化方面,要总结好自己在日常业务遇到的坑和优化点,如优化了首屏加载。可以从多个维度去讲,组织语言的时候尽量从各点出发,不要杂糅成一团,否则即使说对了也会让面试官觉得你思路很乱。
五月的时间我基本用来复习框架和看一些进阶的常考点如 ES6 和 Webpack 等,而算法是贯穿整个求职周期的,所以在这个月也简单复习下。
Vue 源码分析:https://vue-js.com/learn-vue/
更细的知识点之前收藏了一篇大佬写的文章,上中篇基本涵盖了全部前端 Js 知识点,给有兴趣的同学指路:
复习小点总结:
上:https://juejin.cn/post/6844903776512393224
中:https://juejin.cn/post/6844903801153945608
鱼皮认为这是一个非常好的复习路线。先打基础,再由浅入深地看框架,并且结合项目和工作实践去分析框架(中间件)的作用,在整个过程中持续复习算法、阅读面经。
对于想学习前端的朋友,也推荐看看我梳理的 前端学习路线,帮助你快速了解前端的重点知识。
看一些好书能帮助理清一些枯燥的知识点,比如计网和 JS 一些概念性的东西(作用域等),这里推几本好书,在面试季前可以多翻翻,有助于复习理解:
推荐理由:挺不错的一本书,把js口语化,语言风格诙谐,示例更多,更易理解
推荐理由:入门级的教科书,新手菜鸡常备
推荐理由:被大佬安利的一本好书,把 Tcp 握手和挥手描述的特别细,如果你在面试时也可以这么描述,也许能博得面试官丢丢好感。
推荐理由:Node 文档还是偏运用层面,有用到才去查,生啃有点吃力,所以可以通过这本书入门。
推荐理由:阮老师著作,看就完了,不多述
另外的,自己还找了一些课程来看,偏向计网的一些课程,如 B 站一些老师的网课,讲的也很不错。
指路:https://www.bilibili.com/video/BV1c4411d7jb
这几 P 帮我在百度二面讲网络的时候帮了很大的忙,面试官也比较满意这一点。
鱼皮:都是前端方向比较经典的书籍,在编程导航(https://www.code-nav.cn)可以免费下载。
接下来是我参与的几轮大厂面试的经验分享,包括腾讯、阿里、百度。
我当时正处于刚开始复习的阶段,虽然问的东西非常简单,但真的被虐的很惨 ==
回答:1. 防抖,限流 2. 本地缓存或 sessionStorage
又问:不能用缓存保存有什么方法?答:Node 中间件,不接受请求
又问:没有 vuex 怎么缓存?答:那使用全局变量?
又问:一定要使用全局变量么? 答:否,但不知道还有啥。。。
不能用 v-model(等同于问 v-model 实现原理)
v-model: 语法糖,本质是双向绑定,@input(onInput事件)
答 cookie,面试官不满意,还有别的吗?答了同个域,回到跨域,同源信任,感觉还是不对
面试结果可想而知,几天后显示挂了,收到感谢信。
鱼皮:能把面试的题目和自己的回答记录的那么详细清楚,说明是面试完立刻复盘了,这是一个很好的习惯,面试完后一定要积极总结,每一轮的问题都有可能在之后的面试中再次遇到。
面试官竟然就是我的内推人,还是部门 Leader,感觉气场很强,不过还是专注撕逼,没被镇住。
整个面试体验很差,感觉全程在套方案,不像面试,也许这就是大佬的面试吧。面试结束后,面试官和我说会再找一个候选人横向对比(指养鱼),6 月 7 日下午收到二面通知,于 6 月 8 日晚上二面。
在群里认识一个网盘小伙伴,说正好网盘在扩招,叫我去试试,不得不说,百度的招聘系统虽然不是很 nice(经常被一些 hr 实习生乱推),但面试体验是非常好的,和面试官也聊得很来,点个赞!
一面聊的比较随心,面试官对我的项目比较感兴趣,也和我沟通了一些业务,面试体验挺好,更像技术交流而不是面试。
鱼皮:这轮面试就是典型的一面风格,侧重基础知识的考察,也会问一些业务场景问题,所以基础还是要打好。
看了别的小伙伴的面经,以为二面偏业务,没想到被背刺了(哭哭)。
毫无疑问,这一仗被打的遍体鳞伤,虽然二面过了,但是一些原理性的东西面试官挖的很深,业务场景题也没少问,看来还是要好好读术~
面试的时候环境很嘈杂,有几次没听清面试官讲了什么,当时家里网络也不是很稳定,但总归聊的还行,涉及一些开放性的论述题目,这个自由发挥,合理真实即可。
和部门经理聊了会,发现部门经理是比较看重个人职业发展的,整个部门是偏技术交流多一点,技术氛围非常浓厚,用人也会如千里马,此刻我的心只想为百度跳动。
主要是了解一些个人资料、年薪待遇,以及去北京的意向等等,比较常规。
6 月 7 日晚上,收到了百度 offer call,同期还有阿里在面所以 argue 了下薪资,大概率是去北京百度了(乡下人进城),小菜鸡的第一次社招之旅到此画上句号。分享好运,祝各位秋招顺利!
以上就是小黑同学的分享,双非非科班,自学半年找到前端 4399 公司工作,工作 1 年就得到了多家大厂的面试机会,并且顺利拿到百度 offer。这些经历看似行云流水,但从他的面经以及我和他后续的交流中,我发现小黑有很多优秀的特质,比如:
虽然进大厂也讲究天时地利人和,但正如我所说的,运气也是实力的一部分,小黑同学正是通过努力才一步步走到风口浪尖,然后顺势而为、主动出击,才拿到了令人心动的 offer。瑞思拜!
最后再送大家一些 帮助我拿到大厂 offer 的学习资料:
欢迎阅读 我从 0 自学进入腾讯的编程学习、求职、考证、写书经历,不再迷茫!
我是鱼皮,觉得本文不错的话,希望朋友们能 点赞 支持下 ❤️
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。