前端开发面试快速复盘,不标准的面试经验分享与杂谈(终章),我拿到满意offer了
壹 ❀ 引
找工作半个月了,一周面两三家的样子,前前后后大概面了八家左右,先说结论,拿到了三家offer,虽然没有进大厂,但其中一家是自己很想去的公司所以后面不会再面试了,福利待遇(弹性打卡,导师一对一培训,mac,公司有猫..),技术团队都非常nice!!对于我这种急切渴望提升自身技术的人,确实是一个极好的结果,所以今天真的很开心!!当HR通知我最终面试通过时...
说下整体找工作感受吧,面试机会还是很多的,并不是大家想的疫情影响,找工作会多难多难,还是那句话,只站到找到工作的角度并不困难,但如果想找好一点的工作一定是需要一点时间的,所以这个阶段必定会承受一部分的压力,但是为了好的结果,这些都是值得的,我就是一个例子。
这篇文章可能更偏向于杂谈,并不会全部围绕面试展开,因为这周我也没怎么面试,所以看心情写好了,那么本文开始。
贰 ❀ 补一个复试
还记得上篇文章中第二家我很看好的公司吗,就是视频初面聊了一个半小时的公司...在本周二下午三点约了复试,分为CTO技术面与HR综合面。我面试有个小心得,到了面试地点看公司规模与装修,公司小装修不好的等于面试不会太难,公司大装修精致暗示面试有困难,所以我的紧张程度也会受这个影响。
当我到这家公司是下午两点半,一看整层楼都是他们公司,装修还贼好,当时我就紧张了!!!当然也证实了自己的眼光没错,这就是我想进的公司啊。因为前台与HR沟通失误,我一个人在面试间等了半小时,空调温度适中,我差点睡着了...一直等到3:10分,CTO技术面正式开始,自我介绍就跳过了,主要还是围绕自己工作经历,之前公司业务,使用技术栈这些展开说就好了,也不用太长。
面:做过哪些项目优化?
文件按需加载,文件压缩合并,图片压缩,懒加载,代码封装,节流,防抖,组件复用等等,围绕这些把你工作中做过的事情展开说就好了。
面:说下工作中你解决的觉得最难的事情是什么?
还记得上篇文章中第一家公司我便遇到了这个问题,不知道怎么答才好,于是我问他们技术总监下次我该怎么答,这次我就根据上次总结后展开说了,我说我项目比较简单,技术上没有太难的东西,真的觉得难还是自己负责项目开发时,关于项目推进,如何与同事有效沟通等等展开说了。
所以说要多总结啊,别一个问题次次遇到都是不知道,没听过,不了解,面试过程中不管任何问题,只要你开头答了,都比你啥都不说要强,而且是强很多,这也是考你随机应变的一部分。
知道为什么很多公司要问这两个问题吗?因为这两个问题的答案,基本能给你以往经历定级了,有没有解决过特别复杂的问题,有没有技术深入研究,有没有代码追求等等在你的答案中都能体现出来。所以这两个问题一定要好好回顾自己过往经历,好公司必问!
面:谈谈你对于未来的规划?
初步规划是想向全栈发展,再往后就是管理层。然后面试官就问我为什么想转全栈,我说为了提升自己的竞争力,我有关注招聘信息,从中我能得知现在行业需要什么技术,哪些能提升我的竞争力;面试官又问为什么有做管理的想法,这个我就直说了,同事朋友都觉得性格很好,有耐心,对于技术也有追求,很适合带人,当然,做管理不是技术好就可以了,只是他们的话在我脑中留下了一枚种子,如果真要往这方面发展,我需要学习的还很多。
说完这些面试官就对于我未来发展给出建议了,大致意思就是,学后端能拓展你对于前端问题的看法,比如很多问题在前端会遇到后端就不会,比如一个问题在前端做很麻烦,但在后端有专门的思路方法解决这件事,那么在你了解后端后,下次你遇到这样的问题,在你的脑中会潜移默化,我如何在前端中用后端现有思路解决它。其实总结面试官的话,永远学思想而不是学框架。
面:在上家公司有没有你觉得可以改进的事?
这个我就说了唯一的遗憾是未能推进公司前端使用ES6规范,没错,我上家公司不让用ES6任何语法,因为这事,我和老员工还吵了一架,之后开会被经理批评,说盲目追求新东西,可是ES6是15年的东西,市场上早就有成熟的解决方案了,比如label编译,只是编程上会更舒服,说到底还是ES5的代码。之后我举例了一些ES5中的设计缺陷,ES6是如何完善它们的。
面:说说你对于技术新旧的看法,如何抉择?
下面是我面试回答的观点,不一定对,大家就当个参考:
新不代表好,旧不代表过时,如何选择还是看它能为我们带来什么,优势是什么,缺点是什么,比如风险和不稳定性。举个例子,JQ过时吗?其实站在DOM操作层面,JQ在各浏览器间优秀的兼容性以及操作便捷性,无疑是一个不错的选择,它为什么"过时"呢?这是因为目前主流框架vue,angular,react已经不需要我们过多关注视图层,操作dom的需求少了这才导致JQ"过时"。
如何抉择一个框架呢?我觉得得看它与我们需求的匹配度,拿bootstrap举例,很多人不爱使用bootstrap,觉得我自己也能做适配,何必用它。这就得看具体需求了,如果我们一个项目是要做到PC,平板,移动端自动适配,用bootstrap就是首选,因为这个框架主打的就是栅格化系统一套样式实现响应式,让你自己用媒体查询自己写,那不得写疯。但如果我们兼容的只是部分容器,需求不大,这时候用bootstrap就有种杀鸡焉用牛刀的感觉,很不值得,所以怎么选还是得根据需求而定。
面:为什么从上家公司离职?
两个方面,一是公司开发需求少,有种温水煮青蛙的感觉,会很焦虑,害怕自己被这个行业淘汰,所以顶着疫情也要选择离职。第二个方面是孤独,公司技术氛围不是很好,大家对于技术热情不是很高,我会学很多有用的知识,想讨论却发现没一个人可以交流,因为渴望交流,所以养成了写博客的习惯,与网上同行们交流。
面:有看过那些技术方面的书?
早期对于设计感兴趣,看过JavaScript设计模式,后面遇到一些正则问题很头疼,正则这个东西使用场景不会很频繁,但是遇到不会又头大,所以就直接花了半个月读了老姚的正则迷你书。除了书会经常关注掘金这类的技术社区,了解行业走向,以及一些对于自己开发有帮助的知识。
面:博客都写什么内容?怎么规划的?
一方面是工作问题总结与反思,遇到问题解决问题与记录问题,这样下次遇到能更好的解决它。我之前基础不太好,所以花了功夫去补基础,其次对于工作有帮助的知识都会花时间研究。博客正常来说一个月不低于八篇,好的技术文章一篇可能需要一周的业余时间,因为需要查阅较多的文献资料。
那么到这里,面试官表示他的问题已经问完了,其实前前后后才半小时不到,我才想起初面我吐槽说,你们初面怎么这么久,初面面试官说,这次如果聊得详细点,说不准复试就可以简单过了,没想到真的如此。对方问我有什么问题,我就问了下技术氛围,团队规模,聊完就让我等会,之后就是HR综合面了。
与HR聊了半小时多,整个过程非常愉快,这也取决我的沟通与幽默感还算不错....我这人比较直爽,是怎么样就怎么样,所以聊得还挺开心。先说面试反馈,自学能力强,对于技术追求有足够的热情,与我沟通很愉快,缺点也很明显,工作经验很浅,虽然做了3年开发,基本没解决过复杂问题,之后就聊了一些个人规划,离职原因,对于公司产品看法相关问题,但其中有一个问题让我印象深刻,为什么深刻,因为这个问题我也反复问过我自己。
HR:我说话可能有点直,你别介意,就是你有没有想过,为什么自己工作三年,经验只到这个层面?
对于这个问题我就说了下这3年的一个过往,前两家公司都是有工作就去,没想过工作经历会对自己职业发展造成这么大的影响,公司项目自身难度较低,也没遇到过伯乐,技术摸索全靠自己,属于野蛮生长,学习全靠自己一腔热血,所以也有走弯路的情况。
所以现在我对于博客园朋友,前同事问我找工作的意见,我总是强调有能力一定要尽可能选择对自己有帮助的工作,不要是份工作就去,眼光放长远。其实大家都知道只要进一次大厂,之后工作都会顺风顺水,所以大家对于工作选择真的要谨慎。
随后HR问你在上家多久觉得自己无东西可学了,我说一年后,她说那为什么还是待2年才走呢,我说我第一段前端开发经历10个月,第二份工作要是又只做1年出来,你现在问我的问题就是为什么跳槽这么频繁了,HR听闻哈哈大笑,说确实会这样。
聊到最后HR问我什么问题想问她,我只问了一个问题,我通过了没,HR说需要讨论,我听到就说那估计是没戏了....因为你前面说我经验太浅,我之前已经因为这个问题被一家公司拒绝过了。不过她告诉我,公司现在扩招,需要经验丰富技术好的同学,当然也欢迎经验浅但有潜力的同学,我就是后者,只是进一步还需要讨论,但她会帮我尽力争取。在第二天焦虑的结果等待中,我还是通过了,理由是我对于技术追求的执着与热情让他们相信我能胜任这份工作,毕竟我坚持写了3年的博客,你看,坚持一件事足够久,你总是能得到应有的回报,我的回报是成功拿到了在这个水平自己最想要的offer。
叁 ❀ 我做前端这三年
从17年开始做前端,一晃都过去三年了,不知道你们有没有兴趣,简单说下我的工作过往,还挺具故事性。
本人并非计算机专业,大学学的其实是传播学,毕业后正常来说应该做新闻编辑,文案策划,新媒体运营这类工作,所以15年大学毕业后,我做过游戏编辑写过专栏,负责过作家的公众号运营,做过活动策划和网站SEO,反正现在一回想,还真是挺乱的,不过这段经历对我也不是毫无帮助,博客的写作水平,以及如何提升文章百度排名等等,这些小的技巧其实很多都来自于这段经历,所以说我们任何时候学过的东西,它总是能在一个特殊的时间段奇迹的帮助你,那么反过来说,还是请坚持学习。
我的第一份前端工作是在武汉一家小的公司,16年年底入的职,前端算我就3个人,那时候我还只会JQ,而公司也只需要你能实现功能就好了,当时进公司我觉得自己是最菜的,几个月后我就是三个人中最牛的了,然后我就成了副主管.....负责市场部前端问题修正与前端招聘工作。但我深知自己的水平不行,我连自己代码好坏都没一个评判标准,只知道能实现,什么性能优化通通不存在,所以做了半年就想离职了,可是我心里害怕,因为这个时候vue在国内慢慢开始火了,三大框架逐渐开始取代JQ,我开始慌了,想离职又不敢。
但幸运的是之后公司一系列骚操作激怒了我,第一件事是公司每个月会从所有员工工资中抽取5%作为月度奖金,我们每周六无偿加班,开完会就要相互打分,一个月之后按照评分排名把钱分给前三名,我拿过第一还挺多次,整体上来说稳赚不亏,但我受不了,大家都是好好做事的凭什么工资每个月被扣,说到底就是老板舍不得这几千块钱,同事也是私下吐槽的厉害,于是下次周会为这事我当着几十人面跟老板争了起来,他自然不在理,跟我说这世上没有绝对的公平,意思就是我是老板我说了算,也因为这件事坚定了我离职的想法。
没多久,公司搬到了武汉万达广场的写字楼,老板呢是属于销售出身,公司周一喊口号我就就挺受不了,完成不了任务还得惩罚做俯卧撑(一个人没完成整个小组做),挺无语。搬过去了老板就说我们穿着配不上这地方,得统一起来,要从我们每人工资中扣500买西服....我一程序员我穿啥西服,所以说完这个事我就找老板谈了离职,2017年9月31号我离职了,第一份工作我也只做了十个月。
我的原计划就是来深圳,来之前在武汉也找了一段时间的工作,很遗憾,面试都没几个- -,2017年11月11日光棍节,我乘上了来深圳的火车,这是我第一次一个人离开湖北,充满了新奇。我在深圳有一个老家的朋友,所以找工作期间都是在他那落脚,也不知道是不是年底的问题,加上我经验太差,找工作真的好难,唯一一个要我的公司是开4500工资,我说考虑下,其实内心极度排斥,因为工作就是写静态页面,面我的前端组长甚至连this都不懂。
也是出于自我安慰,或者说想安慰家里人让他们不要太担心我,我给我爸打了电话,想告诉他我还是能找到工作的,可是电话怎么都打不通,到了下午我妈回了电话,告诉我原来我爸昨晚出了车祸,现在才抢救过来,手机撞烂了所以打不通,让我有工作赶紧去先上着,不能挑了,我内心一紧,立马联系那家很不好的公司,说我考虑好了可以去上班吗,可惜别人并不回我了。那一年,我25岁,觉得自己是多么不幸与无助,一个大男人蹲在阳台泣不成声,哭了好久。
之后我又找了半个月工作,直到招聘网站招聘信息都不怎么更新了,于是我买了回家的车票,回家照顾家人(我发现我做饭真的很难吃),直到18年年初过完年我又回到了深圳,可以说这段时间我每天做梦都在面试,我需要钱,我需要工作,这种心理也决定了我第二份工作不会有太多顾虑,只要通过我就去。于是我顺利来到了我的第二家公司,后面组长谈到我才知道我是当时笔试题回答的最好的。
这家公司让我不满意的地方可能是技术氛围不太好,技术选择老旧,大家对于技术追求的热情也不太高,我还记得18年转正申请我写道,我想学很多有趣好玩的东西,和大家一起分享,结果重构项目我提出想用ES6语法都被批评了一顿,学的东西没的讨论,同事之间层级划分也严重,所以渐渐的我对于开发也就不爱提意见了,因为提了必被怼,比较讽刺的是去年年会经理说我责任心不够,总是自己做自己的事,没有团结心,我想起我转正时写的初心,觉得格外戏剧化。
我害怕被行业淘汰,害怕找不到工作,我一直逼着自己前行,还记得我提离职后在文中写道,我不擅长骑驴找马,我其实更擅长破釜沉舟,想好了就去做,我做的还不错。
肆 ❀ 未来两年的计划
接下来的这份工作,对于我而言真的是我职业发展的一个转折点,我终于跟上了前端开发的平均水平,进了一家大佬多的公司,未来我也会加倍努力,更新更多有质量的好文章,能坚持做一件事我发现真的很酷。
继续坚持背单词吧(虽然这个方法比较笨),身为一个开发提升自己英语阅读水平我觉得还是有必要的,不然一些文档看都看不懂....百词斩背了200多天单词了...其实还是有点效果,后面继续加油!
算法是我现在强推给身边人一个很重要的点(大厂面试必考算法),说两个比较直观的成效,坚持做算法你会对数组,字符串API以及各种遍历方法在各场景使用会有更深入的理解;理解一些算法解题思路对于你代码层面的优化会有极大帮助,我这种算法菜鸡计划坚持做2年算法题,一天一题其实也不多,期待2年后自己的蜕变。
因为下家公司技术栈是react,所以后期我一定会由浅到深写一些react相关的教程或知识深入探讨分享,除此之外微信小程序教程的坑我也会补上,那么再之后就是nodejs的学习以及额外属于自己的项目搭建了,两年时间说短其实很短,别羡慕别人,羡慕自己,继续冲冲冲。
陪你一同成长,我是听风是风,那么到这里本文结束,面试结束,期待新的开始。
前端开发面试快速复盘,不标准的面试经验分享与杂谈(终章),我拿到满意offer了的更多相关文章
- 【Web前端开发最佳实践系列】标准的HTML代码
一.验证代码是否符合标准 优点: 标准的页面会保证浏览器正确的渲染 网页能更容易被搜索引擎搜索,提高网站的搜索排名 提高网站的易用性 网页更好维护和扩展 常用工具: W3 Validator HTML ...
- 前端开发JS——快速入门
1.JS的核心标准ECMAScript 组成 ECMAScript------>核心语法标准 DOM------------->对文档节点的操作 ...
- 阿里、腾讯、百度、网易、美团Android面试经验分享,拿到了百度、腾讯offer
基本情况 2021届普通本科,Android开发岗. 此文主要是2020年秋招面试经验汇总,最终拿到了百度.腾讯的offer. 主要包括阿里三面,腾讯四面,百度三面,网易三面,美团一场面完. 阿里(由 ...
- 记作为前端开发人员跑去面试C#.NET
先谈结果,"秦总",与我面试讨论一个半小时,十分感动,然后拒绝了我. 本月17日16时许,收到邀请,于18日9时到司面试,虽如今仅深入前端领域,皆因曾有1年ASP.NET(C#)的 ...
- 要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放
要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放 大师主讲 经验难得 由逐浪CMS首席架构师发哥老师,亲自主理讲解. 历时一年精心打造, 汇聚了互联网诞生 ...
- Vue.js高效前端开发知识 • 【目录】
持续更新中- 章节 内容 实践练习 Vue.js高效前端开发 • (实践练习) 第1章 Vue.js高效前端开发 • [ 一.初识Vue.js ] 第2章 Vue.js高效前端开发 • [ 二.Vue ...
- 前端开发面试知识点大纲--摘自jackyWHJ
前端开发面试知识点大纲:HTML&CSS: 对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...
- BAT 前端开发面试 —— 吐血总结
更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了腾讯和阿里的内推及百度的实习生招聘,在此总结一下 一是备忘.总结提升,二是希望给大家一些参考 其他面试及基础相关可以参考其他博文: ...
- Web前端开发面试技巧
Web前端开发面试技巧 面试前端工程师对我来说是一件非常有意思的事,因为面试过程很大程度上也是自我提升的过程.无论大公司还是小公司,之所以在如何招聘到真正有能力的,前端工程师方面会遇到同样的问题. 近 ...
- Uix Kit 快速建站前端开发套件-工具箱
这个产品维护已经有一年了(由于业务需求不同,目前没有做中文版,产品本身是针对国外网站),自己本身是做UI出生,开发只是业余爱好,仅仅作为平时工作的需要.杂七杂八会一些前后端开发.并非职业码农! 我是一 ...
随机推荐
- 2023 SHCTF-校外赛道 PWN WP
WEEK1 nc 连接靶机直接梭 hard nc 同样是nc直接连,但是出题人利用linux命令的特性,将部分flag放在了特殊文件中 利用ls -a查看所有文件,查看.gift,可以得到前半段 然后 ...
- c# 创建一个只接收消息的窗口
/// <summary> /// WM_COPYDATA消息,进程间传输信息专用结构 /// </summary> public struct COPYDATASTRUCT ...
- [转帖]被误解的CPU利用率、超线程、动态调频 —— CPU 性能之迷 Part 1
https://blog.mygraphql.com/zh/notes/hw/hyper-threading/ 引 性能测试.压力测试.业务系统性能容量评估.这 3 件事,可以认为是大部分程序员/软件 ...
- [转帖] jq命令用法总结
https://www.cnblogs.com/codelogs/p/16324928.html 原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介# 如果说要给Li ...
- [转帖]Redis如何绑定CPU
文章系转载,便于分类和归纳,源文地址:https://www.yisu.com/zixun/672271.html 绑定 CPU Redis 6.0 开始支持绑定 CPU,可以有效减少线程上下文切换. ...
- [转帖]Nginx性能优化详解
https://developer.aliyun.com/article/886146?spm=a2c6h.24874632.expert-profile.256.7c46cfe9h5DxWK 感觉文 ...
- Docker 运行 MongoDB的简单办法
Docker 运行 MongoDB的简单办法 第一步拉取镜像 docker pull mongo 第二步创建自己的目录 地址 10.24.22.240 创建目录 mkdir /mongodb 第三步 ...
- echarts定义饼状图的指向线内容
定义饼状图的指向线内容 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- 深度学习基础入门篇[六]:模型调优,学习率设置(Warm Up、loss自适应衰减等),batch size调优技巧,基于方差放缩初始化方法。
深度学习基础入门篇[六]:模型调优,学习率设置(Warm Up.loss自适应衰减等),batch size调优技巧,基于方差放缩初始化方法. 1.学习率 学习率是训练神经网络的重要超参数之一,它代表 ...
- 19.10 Boost Asio 同步文件传输
在原生套接字编程中我们介绍了利用文件长度来控制文件传输的方法,本节我们将采用另一种传输方式,我们通过判断字符串是否包含goodbye lyshark关键词来验证文件是否传输结束了,当然了这种传输方式明 ...