前端已死?看看我的秋招上岸历程
背景
求职方向:web前端
技术栈:vue2、springboot(学校开过课,简单的学习过)
实习经历:两段,但都是实训类的,说白了就是类似培训,每次面试官问起时我也会坦诚交代,面试官也不会因为这个卡我
学历:211本
专业:软件工程
基础:一开始有一些前端的基础,照着b站做过一个vue2的电商项目,但基本就到此为止了,一些深入的东西都不会,八股也没背,算法也没刷几道,刷过的也都忘记了,甚至之前做的项目也记得不是很清,可以算是几乎零基础开始
开始
求职的开始可以追溯到23年五月份,我当时大三下学期末,一位同学内推我进他实习的公司,那时候我才开始制作简历,想方设法在上面凑字数,勉勉强强凑了一页,就这样投了出去。
运气好的是,简历初筛通过了,没有笔试,就约了我面试,同学告诉我多背八股,但当时我完全把握不住考察的重心,再加上时间不充裕,草草背了几道就上战场了,不出意料,问题一个也回答不上来,都是一些很简单的问题,比如:说一下HTTP(我只蹦出来一句超文本传输协议就没了,面试官一脸问号)、说说ES6新特性(说完let const就想不起来了),就这样面了十分多钟,面试官建议我多抓基础,八股也要准备,项目理解不透彻,建议再多看看,接着就关闭了会议,我人生中的第一次面试就这样结束了,完败。
这次面试完,我没有灰心,但也没有上心,每天该吃吃该喝喝,后来也有另一位同学家中亲戚的公司要招前端,让我投一下试试,结果以技术栈不匹配为由一分钟就结束了。
在这之后我摆烂了一段时间,当时学校宿舍没有空调,太热了,和朋友在外面租了房子,享受了一段时间的惬意生活,直到七月中下旬,我们来到了学校安排的基地
逐渐走上正轨
所谓基地,就是给我们进行前端培训,会从最基础的三大件讲起,我觉得太基础了,就自顾自地学习,当时还不知道该怎么学,就随便从网上找八股文去背,这样下来一段时间,发现效果不是很好。
发现问题
基地在南方,对于刚来这边的北方孩子来说,第一感觉就是潮湿,加上正值七八月份,每天就和生活在蒸笼中一样,让人有些喘不过气来。
到了基地会有阶段性考试,在讲完html、css后也安排了对应的考试,机考,八股文问答为主,当时我自认为准备的还不错,但考试一开始我就傻眼了,很多我不会的问题,只得去网上一个个查,当时就明白了,可能是我准备的还不够细致,我需要一套更完整规范的流程来准备这次的秋招。
划分考试范围
找工作其实也是考试,但考察的不仅仅是知识点的记忆,还考察你有没有对知识进行深入理解并且能做到举一反三,此外,实战能力也在考察范围,包括实现业务需求的能力和算法解题能力,于是我总结出了以下几点:
- 八股文——常规面试题
- 业务需求——一些场景(例如虚拟列表、懒加载实现等)
- 算法解题——力扣
制定学习计划
八股文背了又忘?
算法题刷了又忘?
项目也是看了又忘?
这其实都是没有合理制定学习计划的后果
学习计划,重点其实不在于学习,而是在于复习,有时候跑得太快 ,会忘记沿途的景色,于是我们需要静下心来,慢慢走。
我最推荐的复习方式是遵循艾宾浩斯遗忘曲线来记忆,它可以很科学有效的帮助我们进行知识的复习,反复记忆,最终才能持久
具体实操呢,我是用滴答清单app来做的,不过要提前注意的是,滴答清单会有任务上限,超出后就需要开会员了,不过为了学习顺利,我想都没想就开了包年。(这里不是推销,应该也有其他软件可以做到,小伙伴们可以自行查找哦)
使用方式:
在里面还可以切换任务显示的方式,小伙伴们可以去自行探索哦
从七月下旬到十一月下旬,我总共记录了三百多条任务:
一些比较早的任务已经重复了九次以上:
注意,之所以我要花钱用工具来替我记录,而不是自己去推算哪天该复习哪部分知识,是因为时间很宝贵,我们不应该把大量的时间都浪费在制定计划上,而是应该将精力都落实到其中的知识上去,争分夺秒
我这个方法可能不是效率最高的,但我敢说是能起作用的,如果你还在被开头的三个“忘”而困扰,不妨尝试一下。
寻找学习内容
我们有了学习的方案,就要去找学习的内容,这时候就要借助网络的力量了
寻找八股文
八股文在网上随处可见,但也有重点和非重点之分,一些常考内容要优先准备,例如:vue组件通信的方式、说一说闭包、说一说你常用的数组方法…
那么我们如何去找常考内容呢?我有几个小方法:
- 约面后去牛客或其他论坛找对应公司的面经
- 抖音会有模拟面试的主播,每晚可以刷一刷,遇到不会的问题就记录一下,推荐两个我看过的前端主播(哲玄前端、前端老周)(对了,还有一些抖音短视频,比如渡一,没事干都可以多刷刷)
- 如果你在培训,重点抓住老师讲的面试题,也都是重点
寻找算法题
算法题对我来说是很头疼的一部分,因为此前基础很弱,简单题都很少能做出来,所以痛定思痛,开始搏!
- b站代码随想录,卡哥讲得属实是好,由浅入深,因为前端对算法要求较低,所以每个专题我一般学完偏简单一些的中等题就继续下一个模块
- 同样别人的面经也很重要,面试前去找一找其他同学分享的面经,我就遇到过考出原题,简直爽到起飞了好吧
寻找业务需求题
也就是让你用JS或CSS实现对应的功能,比如写一个呼吸效果的动画、写一个防抖或节流,这些都是对你前端技能的考察
- 主播有时候也会讲,讲到的就记下来
- 面经,还是面经!
- 短视频(渡一短视频确实讲得好,有一些面试都考出来过原题,直接拿下)
- 牛客网上有专门的分栏
不刷不知道,一刷发现自己实战能力真的弱,到现在我才对自己有一个清晰的认知:菜狗一条
好了,门路都摸清了,接下来就开始狠狠沉淀
坚持坚持坚持!
以上方法论都很清晰了,最后一个问题就是你能否坚持下去,前端不像很多人说的那样简单,想找到一份不错的工作还是需要学习很多东西的,所以最重要的,就是坚持!
说说我的准备过程:
第一阶段:7.21-9.14,这一阶段还没有完全进入学习状态,学习时间大概是:周中上午9-12,午休两个小时,下午14-17:30,吃个晚饭,晚上18:30-21:30,回宿舍,玩会飞车,这就是一天的生活了,总计学习3+3.5+3=9.5小时,算上一些琐碎事情耽误的时间,每天学习大概在8小时左右,这是远远不够的
第二阶段:9.15-9.30,第二阶段的开启,得益于一次快手实习岗面试的拷打,这是我来了基地的第一次面试,本以为准备的还不错,但狠狠地失败了,负责面试的小姐姐人很好,还会引导我,最后总结的时候告诉我要注重基础,光背八股是不可以的,我认真地记下了,洗个澡冲掉低落的心情,过了没几天开启第二阶段:9-12 14-22(晚饭有时候就买个东西带回来吃,或者带一些馍馍片去吃,边吃还可以边看一会儿课)
第三阶段:10.1-11.19,在九月二十多号的时候,又接到了面试,经过一段时间的沉淀,再加上他问的都比较简单,基本上都能够回答上来了,后续又约了二面,问的比较偏向实战,所以答得不是很好,但聊着聊着面试官还蛮喜欢我的,就让我过了,这次之后我的信心补回来一些了,于是准备更加全面的投入进去,游戏也卸载了。这一阶段算是最苦的一个阶段,时间安排大致如下:
- 国庆期间:11点起床,中午十二点吃个饭去教室,差不多下午一点开始学习,学到晚上十二点左右(晚上在楼下随便吃点),回宿舍后再多学一会儿,基本每天在十二个小时,国庆八天总计学习100+h
- 上课期间:上午9-12,午休期间有时候看看技术视频或求职技巧, 下午14-18 晚上18:30-24 回宿舍后再自己去阳台学一会儿,学到一点多就准备睡觉,每天学习时长大概是:3+4+5.5+1=13.5小时
千万不要觉得这些时间很长,我把一些笔试面试、投简历的时间都算进去了,如果刨除掉这些,每天可能只有8-9个小时是完全执行自己计划的,差得多就要花更长的时间来补充,这个毅力还是要有的,切不可打鱼晒网,要一鼓作气,这四个月来我没有给自己放过一天假,基本保证天天都能在教室看到我,头发长了也不敢去剪,因为一次理发加上路程要花费一个多小时,也不敢看剧看电影打游戏刷抖音,因为要远离这些会让你上瘾的东西,防止在自习时脑袋里蹦出来的都是游戏电视剧里的场景。在这个紧要关头我们就要卯足了劲去冲,这样才能一次上岸!
之所以19号后我的第三阶段就结束了,是因为我的面试流程都差不多了,有五六家在池子里,保底offer也拿到了,薪资也比较满意,最后也冲了一下大厂,技术面都通过了,就等最后的通知了,这也是我的第四阶段:尽人事听天命,做好最坏的打算,即使没有hc也不要气馁,至少我们努力过,接下来就放平心态,准备迎来人生的下一阶段!
PS:程序员是一个要保持学习的职业,切不可以为这样就结束了,终身的学习才是保持竞争力的基础,不然到了哪个阶段都不会顺利的,时时都会面临着新的危机,所以加油吧,这只是一个小小的开始。
结尾
南方的天在十一月渐凉了下来,有了秋天的感觉,这四个月用昏天黑地来形容我认为不过分,总共学习了一百多道算法题,平均每道题按计划反复做了五六次,总结背诵了十三万字的八股文,同样,平均一个问题也反复记忆了六七回,秋招投了一两百家公司,面了十几次试,笔试更是做了无数场也挂了无数场,到现在只拿到了一个offer,不过我也很满足了,毕竟和大二大三就出去实习的同学相比,我的基础相对来说差了很多,项目经验也比较少,知足常乐。
最近渐渐放慢了生活的节奏,每天的学习时间也缩短了一些,开始看一些技术以外的东西,有时间也会给笔友回回信,去湖边看看日落,湖风吹过脸庞,一切都显得那么不真实,就像是做了一场梦。
相关文章:

前端已死?看看我的秋招上岸历程
背景 求职方向:web前端 技术栈:vue2、springboot(学校开过课,简单的学习过) 实习经历:两段,但都是实训类的,说白了就是类似培训,每次面试官问起时我也会坦诚交代&…...

Flink Flink中的合流
一、Flink中的基本合流操作 在实际应用中,我们经常会遇到来源不同的多条流,需要将它们的数据进行联合处理。所以 Flink 中合流的操作会更加普遍,对应的 API 也更加丰富。 二、联合(Union) 最简单的合流操作…...

工业园区重金属废水深度处理工程项目,稳定出水0.1mg/l
随着环保要求不断提高,工业废水处理已成为众多企业的必修课。然而在工业生产中,如何有效处理含有重金属的废水成为了一个关键的挑战。 重金属废水是指含有汞、铅、铜、镉、锌、镍等有毒有害物质的废水,来源于矿山开采、金属冶炼、电镀、印刷线…...

element table滚动条失效
问题描述:给el-table限制高度之后滚动条没了 给看看咋设置的: <el-table:data"tableData"style"width: 100%;"ref"table"max-height"400"sort-change"changeSort">对比了老半天找不出问题,最后…...

代码随想录算法训练营 ---第四十六天
第一题: 简介: 本题的重点在于确定背包容量和物品数量 确定dp数组以及下标的含义 dp[i] : 字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词。 2.确定递推公式 如果确定dp[j] 是true,且…...

MySQL-02-InnoDB存储引擎
实际的业务系统开发中,使用MySQL数据库,我们使用最多的当然是支持事务并发的InnoDB存储引擎的这种表结构,下面我们介绍下InnoDB存储引擎相关的知识点。 1-Innodb体系架构 InnoDB存储引擎有多个内存块,可以认为这些内存块组成了一…...

Qt路径和Anaconda中QT路径冲突(ubuntu系统)
最近做一个项目需要配置QT库,本项目配置环境如下: Qt version 5 Operating system, version and so on ubuntu 20.04 Description 之前使用过anaconda环境安装过QT5,所以在项目中CMakeLists文件中使用find_package时候,默认使用An…...
vue2.js添加水印
通过canvas生成水印图片 function addWaterMark(str) {let ctx document.createElement("canvas");ctx.width 900;ctx.height 450;ctx.style.display "none";let cans ctx.getContext("2d");cans.rotate((-20 * Math.PI) / 180);cans.font…...

Eureka简单使用做微服务模块之间动态请求
创建一个eureka模块,引入eureka 为启动项加上EnableEurekaServer注解 配置信息 orderService和userService的操作是一样的 这里以orderService为例: 引入eureka客户端 加上 LoadBalanced注解 配置 orderService和userService都配置好了之后 启动 这样我们在http://localhos…...

竞赛选题 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉
文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 基…...

css-tricks网站图例
使用css实现钟表 <template><div><p><small>CSS sin() and cos() does <strong>NOT</strong> work in your browser.</small></p><div class"clock"><div id"app" class"clock-face"…...

Scrapy框架内置管道之图片视频和文件(一篇文章齐全)
1、Scrapy框架初识(点击前往查阅) 2、Scrapy框架持久化存储(点击前往查阅) 3、Scrapy框架内置管道 4、Scrapy框架中间件(点击前往查阅) Scrapy 是一个开源的、基于Python的爬虫框架,它提供了…...

Linux文件与路径
Linux文件与路径 1、文件结构 Windows和Linux文件系统区别 在windows平台下,打开“此电脑”,我们可以看到盘符分区 每个驱动器都有自己的根目录结构,这样形成了多个树并列的情形 但是在 Linux 下,我们是看不到这些…...
【Qt】获取当前系统用户名:9种获取方式
目的 有时,在项目开发中,需要显示或者用到当前系统用户名信息。以下是几种获取系统用户名解决方案: 解决方案 1. 使用QDir::home() #include <QApplication> #include <QDir> #include <QDebug>int main(int argc, cha…...

ECMAScript2023你学习了吗?
一、ES2023 Features 【Array find from last】 从头到尾搜索数组:findLast() 、findLastIndex()【Hashbang Grammar】Hashbang 语法【Symbols as WeakMap keys】Symbol 作为 WeakMap 的键【Change array by copy】通过副本更改数组:toReversed()、toSo…...

【从删库到跑路 | MySQL总结篇】数据库基础(增删改查的基本操作)
个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【MySQL学习专栏】🎈 本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌 重点放前面&am…...

【JMeter】配置元件
1. 元件的分类 HTTP Request Default 作用: 可以配置成通用的信息,可复用 JDBC Connection Configuration 作用:连接数据库 前提: 下载好对应数据类型的jar包 HTTP Header Manager信息头管理…...
数据采集静态存储SRAM芯片EMI7064
数据采集是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。数据采集技术广泛应用在各个领域。比如摄像头,麦克风,都是数据采集工具。 ram工作时可以随时从任何一个指定的地址写入(存入)或读出(取出)信息。RAM在计算…...

网络运维与网络安全 学习笔记2023.11.27
网络运维与网络安全 学习笔记 第二十八天 今日目标 OSPF基本原理、OSPF单区域配置、OSPF多区域配置 特殊区域之Stub、特殊区域之NSSA OSPF基本原理 项目背景 随着企业的发展,网络的规模越来越大,网段的数量越来越多,公司内部的路由器的…...
ansible学习
一文掌握 Ansible 自动化运维 - 知乎 ansible的安装与简单的使用_坚持到所有人都放弃!!!的技术博客_51CTO博客 Ansible中文权威指南 — 国内最专业的Ansible中文官方学习手册 (ansible-tran.readthedocs.io) 安装 # yum -y install epel-release //更新本地安装库 # yu…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
django blank 与 null的区别
1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是,要注意以下几点: Django的表单验证与null无关:null参数控制的是数据库层面字段是否可以为NULL,而blank参数控制的是Django表单验证时字…...
node.js的初步学习
那什么是node.js呢? 和JavaScript又是什么关系呢? node.js 提供了 JavaScript的运行环境。当JavaScript作为后端开发语言来说, 需要在node.js的环境上进行当JavaScript作为前端开发语言来说,需要在浏览器的环境上进行 Node.js 可…...