前端之路——三个月长假心得

2,597 阅读8分钟

前言

从六月裸辞,到九月才拿到offer,转眼已经过了三个月,在这三个月,第一个月还好,后面在被面试折磨一番之后每天都带者焦虑感在学习,也总算是熬到头了(至少重心从找工作,到做好工作)。现在看来,我可能是同届毕业生里走过最多弯路的前端开发了,在面试中,我遇到过两个很好的面试官,一个是依康龙控的面试官,一个是中信银行的面试官梁凯老师,虽然都没给我通过面试,但是确实给了我很多中肯的建议,简直没齿难忘。我也会毫不保留的献给现在仍处于迷茫的前端开发,这面试要怎么过,未来的路该怎么走。

我的前端路十八弯

我是真的挖了很多坑给自己跳。如果说人生有什么最后悔的事情,那一定是我毕业后没参加工作而选择去创业,并且也没有坚持。我其实接触前端的时间相当早,大概是2014年参加了学校的工作室,那时候还是jq盛行的时候,到毕业的时候其实也做了有三个项目,这份简历其实校招应该也可以去个不错的公司,然而也是自己的贪欲和那份不愿低人一等的思想作怪,毅然决然的放弃这个优势去创业,但仅一年又回到了前端,这一年已经让我和前端的断了一大层,自己仍然停留在jq和静态页面开发的阶段,他们早已各种框架、前端工程化了如指掌,用的飞起。我在草草学习之后去了家外包公司做开发,那时候才开始接触了其他的框架——angularJs。

然后我开始陷入自己挖的第二个坑,得过且过的养老生活。在外包公司那点开发,真是太容易了,基本当天的任务就当天完成了,能及时下班,效率挺高,还得过绩效奖,所以在这种氛围下让我觉得前端很简单。真正让我醒悟的是客户那天发的一个消息,angularjs官方团队将不再对其进行维护,于是我便有了危机感,开始学习vue。即便学习了vue,我仍然是个无论深度或是广度都不足的前端开发,而且在项目经历中大多都是静态页面的开发,甚至根本不上线,所以也不涉及调试各个浏览器兼容性,可以不去优化页面性能,反正能看,能过评审就可以。其实对于这些我也没这个概念,毕竟负责这些项目的大多情况也只有我一个人而已。

第三个坑开始了,裸辞。我自己知道我在公司的安逸已经让自己无法进步,而且新年之后我基本没项目可做了。即便知道自身的不足,我还是选择了裸辞,这个坑应该算是自己挖的最好的坑,但这个坑也是一度让我想转行,在面试中,我听过最伤的话是“你有多久没写代码了?”和“公司有个刚毕业的前端,跟你一个大学的,但是他的水平比你高很多。”

几次面试下来,让我每天思考究竟还要不要干这行,可是也是这些面试中,让我看清了自己,找到自己到底该怎么走这个前端路。

如何面试

我的面试从技术层面上一共分为三阶段,裸面阶段、基础梳理阶段、由浅入深阶段。

裸面阶段其实就是没经过知识梳理的阶段。像闭包啊,异步啊,原型链啊这些压根没概念,知道有这些东西,但是真正的去回答问题回答不了。然后也是在面试官的建议中,才知道应该梳理知识点,从头到尾过一遍。于是进入了第二阶段,我就去买了个前端js基础的课程,就看了一个星期,自己对Js的理解有了质的变化,我重整了旗鼓,我已经能回答80%的前端基础问题,但是这时候的面试官又不怎么问基础了,开始问项目,问框架,问性能优化这些了。然后我又会去买了vue的实战课程,数据结构与算法,计算机网络等课程,进入了第三阶段,由浅入深,在看完这些课程之后,我再次一鼓作气才拿到offer。

然而仅仅掌握知识可能还是不够,毕竟面试其实就是和面试官聊天,除了最基础的知识之外,他也有他的知识面,适当的诱导,将话题引诱到我们所熟知的点上,可以更加愉快的沟通,聊好了,其实就通过了。另外还有一个比较重要的事情就是一定要偷偷记住面试官的问题,面完用备忘录app记录一下那些问题,把会的题目一遍一遍的优化自己的答案,不会的去搜一搜,复习一下。

最后就是简历问题,如果面试的岗位主要技术为vue,而自身的项目技术栈并不是这个的话,其实是可以给自己包装一下增加通过的机会。每个框架其实是有相通的点,没做过不代表不会,但面试官是过不了求职者没做过项目这个坎的,他们更偏向寻找能用的人,而不是潜力大的人。就比如我自己,我的 技术栈是angularJs,但是对于vue早已了如指掌,大可以将自己的技术栈改成vue,但前提自己必须要懂啊,可不能面试官一问三不知,这样直接是会被pass掉的,小细节小细节。

如何学习

我学习的速度自认为还是很快的,主要还是可能是计算机学院出身,大部分东西已经在大学有所铺垫。目前自己的进度是正在学习nodejs,还每天在leecode刷一两个算法题。

回顾前两年,其实就栽在不会学习。我这里有自己的几个学习方法,给大家自行参考。

  • 构建,梳理知识体系

这个其实是老生常谈了,是个前端都知道。因为前端开发无论是技术深度还是广度,都是比较大的,如果不构建并梳理自己的知识体系,可能在大脑里就是一坨浆糊。在面试备战中,我们可以从广度入手,将前端所有的知识写出来,比如HTML、CSS、JS、计算机网络和常用框架,然后再从深度入手,逐步拓展,比如HTML分为几个重点,如语义化、SEO优化、H5新特性之类的。这样的好处是显而易见的,你会发现时间久了之后你对整个前端体系了如指掌,也便于你复习。

  • 不要看文档学习

以前我最开始学习vue的时候就是看着文档来学的,但其实这是一个学习效率最低的方法。首先是文档十分的枯燥,看着看着可能就会分神,如果有边看边code的习惯可能还好,不然你会发现你什么都记不住。其次,文档本质是一个备忘录,他很全面的覆盖了每一个技术细节,没有重点,这并不利于我们去学习。我的方式是,看网课,时不时暂停下来跟着老师的步伐一起code,通过眼、耳、手共同加深印象,事半功倍。我推荐的是慕课网啦,不要不舍得花钱,投资自己就大方点,你会发现这一切都是值得的。

  • 将输入转为输出

判断一个东西自己到底懂不懂,其实就是看我们能不能教会别人。而个人认为最低成本的方式就是写博客。在撰写的时候,通过查阅资料进一步巩固我们的知识。而且通过写一篇通顺的、由浅入深的文章,也可以增强我们的逻辑思维能力,何乐不为呢?至于还有的就是为社区做贡献了,比如参与一些开源项目的开发,这也是我未来想做的一个方向。

总结

以上就是我三个月空白期所反思、所付诸行动的一些东西,真心感恩每个把我刷掉的面试官,他们都让我更加清楚的自己该做什么,终于从2年工作经验的前端小白,变成胸有笔墨的前端大白!路还很长,加油吧