8年前端,有感而发

146 阅读11分钟

前言

10点钟刚起床,跟老婆一边悠闲的吃着早饭,一边浏览着招聘软件上昨天的投递信息,以正面积极的心态回复着各个“BOSS”直击我槽点的问题。
Q:你有用过原生JS或TS搭建过项目吗?
A:有过jquery开发项目的经验噢,但纯用原生js确实没有。(一个20-99人的初创公司用原生开发?米求索(常看韩剧的应该知道啥意思),钱多没处花你到是把我收了啊,我喜欢js开发啊)
Q:你为什么会考虑外地的机会呢?
A:因为觉得贵司的平台非常不错,家里人也比较喜欢这个城市,有在这个城市常住的想法。(这不废话吗?我能在本地找到不错的,干嘛要去外地啊)。 好啦,吐槽归吐槽,还是回归正题,关于有感而发。

简单先介绍一下自己的情况

西安人,30+,211本科,学历还不错,一毕业就开始从事前端岗位,到今年也有8年了。今年5月份整个西安分部全部被裁,不是什么大厂,在自己的赛道中算是头部,公司还是很爽快的给了n+1,非常体面。到目前为止也已经休息了整整4个月了,带老婆孩子去三亚玩了快1个月,实现了孩子看海的愿望,带老婆去北京环球影城逛了一个礼拜,也算是实现了老婆一直以来的一个小愿望。当然,钱也花的差不多了,哈哈。剩下的将近3个月的时间基本上都是在找工作。目前也拿到了本地offer,但属于所谓的高级外包,(西安本地的小伙伴应该懂的),而且比上份工作月薪也有不少的降幅,虽然按总包来算差不多(但干过的应该都知道,年终这饼谁信呢?月薪才是实打实的)。外地也有几家通过技术面的,像一些国企子公司因为薪资问题没下文,像科大讯飞因为异地问题没下文了。总之,在要养家糊口的情况下,目前看起来也没有别的路可以走了。当然,还是要积极的面对生活。😄

关于面试的一些想法

技术向的我想大家的水平应该都比我好,网上一堆“面试看这一篇就够了”类的文章你们应该也都拿到资料了,八股文就是那些东西,不论有没有用,背就对了。(当然你能吸收是最好的,像我这种一毕业就在项目里的锻炼的,一些基本知识还是有很大帮助的)。这里有一些自己比较在意的点跟大家分享一下。

  1. 关于算法知识。在西安这边之前一直以为只有华为这边面试需要考察算法问题,它的机试难度大概是leetcode两道简单一道中等的级别,简单100分,中等200分,简单形容通过难度的话,运气不是太差,日常有练习算法题或者突击过一段时间,基本都能通过。这里可能需要注意的是,非211或985的同学,机试分数需要高一点(尽量满分)才能有机会。(这个是听HR说的,不是我说的)。后续两轮面试每轮都有一道手撕代码(也就是现场编程)算法题,难度基本上是中等水平。我第二轮做的事动态规划类的题,所以即使机试没考到,在日常复习的时候,也不要抱有侥幸心理(我自己是这样的,哈哈)。两轮面试与定级也就是薪资直接相关,所以算法基础很重要。还有就是西安腾讯云这边面试也遇到考察算法的情况了,我这边面试一开始先做3道题,不过就难度来说个人认为比华为的要简单一点,但却对算法的考察个人感觉更细致一点,比如华为机试的三道题基本上都可以通过暴力法解决,但腾讯的题像节点转二叉树,在一些限制下重新实现数组的某个方法。对于日常有练习的同学来讲,通过应该不成问题。对于突击类的同学来说,知道题型很重要,当然基础也必不可少。其它公司是否还考察算法知识我不清楚,但是结合一些公司的招聘要求跟个人发展来看,不论是想要高薪,想进大厂,想出海找机会,只要你想在这条路上走的更远,走的更好,算法必不可少。(虽然你很想吐槽我一做前端的,现实工作根本用不到啊,学他干啥。但是换个角度,有可能只是你用不到,你的公司用不到,而不是算法没有用)。所以,兄弟们,算法学起来啊,leetcode刷起来啊,这个才是你日常应该做的提升(八股文啥时候都能背,算法非一日之寒啊)。
  2. 关于全栈。经历过这么多公司的面试,我发现基本不论公司大小,现在的前端招聘要求基本上都是至少掌握一门后端语言(node,java之类),尤其是5-10年经验的。就我的情况而言,我算是一个“纯”前端,三大框架都会,有广度,但你要说你研究过源码吗,那倒没有,你做过架构吗,也不算做过,产品做技术选型跟落地,开发效率提升出技术方案倒是有很多经验,但你要说算架构,选个框架,出个方案也能算吗?我是不这么认为的。我理解的架构,至少也是整个系统级别的,至少你得会前后端+运维吧,你得自己做过软件并上线运行过吧。个人觉得架构是在全栈之上的,全栈更偏重于技能层面,而架构更偏向于思想方面。就像是你能按照不同的设计图拼好不同的乐高,但你却不能设计一款乐高一样。所以,对于像我一样工作了有点年头但又技能比较单一的小伙伴来说,如果你还想在技术上往上走,不要去纠结我该用vue还是react,不要去在意这是前端还是后端的活,在你能力范围之内的,不论前后端,都可以尝试着去学习它,解决它,实现它,要丰富自己的技术栈,不是指学会更多的前端框架,这样就能适应更多公司的招聘要求,而是应该在整个软件开发中,把它当作自己的想法或者产品,去衡量你需要拥有哪些技术,满足哪些条件才能实现它。这样的人才能更适应当前的就业环境,才能在技术上有更大的发展,甚至在某一天没有任何一家公司需要你的时候(而且没钱雇人,哈哈)也能有机会实现自己的一些想法。(当然,十年前端,在线炒粉也是全栈的一种,格局打开)。
  3. 关于稳定性。以我的情况来看,8年经历过5家公司,其实并不多(为啥,因为其中两家是标准的外包),16年底的时候因为家庭原因不得不回到西安,当时工作年限低,也没有特别好的机会,因为薪资比较高选择了入职外包,当时也并不清楚外包对于以后发展的影响。这里要比较郑重的给后来者一些经验,如果不是家里揭不开锅了,如果不是外包工资比其它高一倍以上,极度不建议入职外包,包括所谓的高级外包。就我的经历来讲,对于工作年限较低的同学来说,外包的工资可能比较有诱惑力,但是,他是有上限的,5年经验以后基本上就能看来差别了。而且它基本不涨薪即使你干的再好(我待的两家外包都属于项目骨干,拿过最高绩效,但是两年内无一例外都不涨薪只画饼,而且是部长级别的给你画饼),这样就会导致你不得不通过跳槽来涨薪,最终会影响你的稳定性。这个也是我在近期面试中遇到的比较多会问你的问题,而且因此导致很多通过技术面的国企类、异地的offer飞掉了。而且特别注意的是,有些公司筛选简历的时候就会考察你前两份工作的在职时间,如果都是待了一两年就跳的会被pass掉。所以说,对于刚入行的同学来说,非必要不跳槽,少跳槽,不进外包,选好第一份工作,因为它也许就是你最高光的工作经历了。对于已经已经工作了一段时间的同学来说,请慎重的考虑跳槽,给自己将来留出更多的选择空间。
  4. 关于面试周期。现在各家用人单位的面试周期都很长,不论大小,而且各个环节之间间隔时间也比较长。就我而言,基本都在一个月之上,各个环节的等待时间在一周左右。所以要做好打持久战的准备,心态放平,多做几手准备。

关于心态的一些变化

刚宣布被裁员时的我:真好,第一次拿N+1,还有点兴奋,终于可以出去浪了。
逛完回来的我:嗯,先休息两天,然后开始挑一挑看看哪家公司好,投投简历吧,外包是什么,赶紧去一边,复习是什么,咱这水平,哪还用复习。
屡投屡面不中后:哎,不行,还是看看八股文,做做算法题吧。 再屡投屡面不中后:外包也可以,挺好的,面面吧。 拿到外包offer后但薪资不太满意:去什么去,这部瞧不起人嘛,再看看有没有其他机会 再屡投屡面不中后+钱花光了:外包真挺好的,先干着吧。

海投之下无人回复,多次面试不通过肯定会让你开始怀疑自己,变得消极,多数人也还会通过学习进一步提升自己,但当再次经历相同的状况时,心态会不自觉的趋于悲观消极,从而影响到自己乃至身边的人。我也完整的经历了这个过程,说出来也是希望你能正确的看待这件事情,就现状而言,就算你足够优秀,你得到的也可能是你自己认为不匹配的结果。不要苛求自己,更不可放任自己,重视现状,提升自己,享受生活,适当降低期望,多跟家人朋友沟通,你一定可以像我一样走出这个困境。

关于自我提升的一些想法

给大家也是给自己的一些建议。

  1. 学算法刷leetcode!学算法刷leetcode!学算法刷leetcode!涉及思维提升的事情,最好放在日常。(我的经验来讲,突击看的话脑子可能受不了)
  2. 要有侧重的扩展技术栈,夯实前端基础的同时,找一门后端语言学习,前期会用即可,但最终要能做到独立开发。在此基础上,构建自己的作品集或者是主页,要有可以直接给人展示的项目或者是产品,这个不仅是对自己能力的考察与认可,面试时也是加分项。当然,最终的目的还是为能实现自己的想法服务。
  3. 可以尝试去获取软考证书。这个在一些国企类的公司可能会成为你的加分项,比如你项目没有做过架构,但我考到了架构师证书,会大大增加你成功入职的概率。还有一些公司在准备上市时考察资质的时候会征用员工的证书,给予一些奖励。

结语

我是一个随遇而安的人,对自己没有太多的要求,想要提升也只是因为目前这事唯一能保证家人生活幸福的途径。我的履历并不算光鲜,没有大厂经验,也没有开源贡献,只是一个普普通通的互联网从业者。所以目前的状态我也应该接受,但是经过此次大环境的洗礼,我更清晰的认识到自己仍有时间与机会去做出改变,去成为一个选择公司而非被选择的角色。
希望我的经历能给予正在旅途中的你一些鼓励,一点收获,一份希望。我是如此,相信你也更应如此!来吧生活,不服就干!